ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

rosdep update urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed

asked 2017-06-20 15:44:14 -0500

trDjango gravatar image

When I run the rosdep update command I get the following error

rosdep update

reading in sources list data from /etc/ros/rosdep/sources.list.d
ERROR: unable to process source [https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml]:
        <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:645)> (https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml)
ERROR: unable to process source [https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml]:
        <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:645)> (https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml)
ERROR: unable to process source [https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml]:
        <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:645)> (https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml)
ERROR: unable to process source [https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml]:
        <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:645)> (https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml)
ERROR: unable to process source [https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml]:
        Failed to download target platform data for gbpdistro:
        <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:645)>
Query rosdistro index https://raw.githubusercontent.com/ros/rosdistro/master/index.yaml
ERROR: error loading sources list:
        <urlopen error <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:645)> (https://raw.githubusercontent.com/ros/rosdistro/master/index.yaml)>

The system information I use :

Ubuntu 16.04.2 LTS, Python 3.5, ros-lunar

Thank you very much for your help and opinions.

edit retag flag offensive close merge delete

Comments

Are you behind a proxy by any chance? If so, make sure you've configured your local machine correctly for it. It you already did that, make sure that the proxy server does not strip SSL (headers) from your connection.

gvdhoorn gravatar image gvdhoorn  ( 2017-06-21 01:44:35 -0500 )edit

What is the output of wget https://raw.githubusercontent.com/ros/rosdistro/master/index.yaml?

gvdhoorn gravatar image gvdhoorn  ( 2017-06-21 01:44:47 -0500 )edit

How do I configure my proxy settings so that I can bypass this error ? Thank you very much for your help

trDjango gravatar image trDjango  ( 2017-06-21 15:33:08 -0500 )edit

I wouldn't know. I just know from experience that (misconfigured) proxies can cause these kind of problems.

I would suggest you talk to your network administrators and ask them for help.

gvdhoorn gravatar image gvdhoorn  ( 2017-06-22 01:19:10 -0500 )edit

2 Answers

Sort by ยป oldest newest most voted
0

answered 2017-06-21 03:10:29 -0500

tfoote gravatar image

updated 2017-06-21 16:47:17 -0500

Make sure that you have the SSL certificates installed correctly.

sudo apt-get install ca-certificates

You will get this error if your SSL certificates are missing. Here's my example reproducing in a docker container:

root@0c988f5d8e4c:/# apt remove ca-certificates 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  file libexpat1 libexpat1-dev libffi6 libmagic1 libpython-all-dev libpython-dev libpython-stdlib libpython2.7 libpython2.7-dev
  libpython2.7-minimal libpython2.7-stdlib libsqlite3-0 libssl1.0.0 mime-support openssl python python-all python-all-dev python-dev
  python-minimal python-pkg-resources python-setuptools python-wheel python2.7 python2.7-dev python2.7-minimal
Use 'apt autoremove' to remove them.
The following packages will be REMOVED:
  ca-certificates python-pip python-pip-whl
0 upgraded, 0 newly installed, 3 to remove and 35 not upgraded.
After this operation, 2351 kB disk space will be freed.
Do you want to continue? [Y/n] 
(Reading database ... 16375 files and directories currently installed.)
Removing python-pip (8.1.1-2ubuntu0.4) ...
Removing python-pip-whl (8.1.1-2ubuntu0.4) ...
Removing ca-certificates (20160104ubuntu1) ...
Removing dangling symlinks from /etc/ssl/certs... done.
root@0c988f5d8e4c:/# rosdep update
reading in sources list data from /etc/ros/rosdep/sources.list.d
Warning: running 'rosdep update' as root is not recommended.
  You should run 'sudo rosdep fix-permissions' and invoke 'rosdep update' again without sudo.
ERROR: unable to process source [https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml]:
    <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)> (https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml)
ERROR: unable to process source [https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml]:
    <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)> (https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml)
ERROR: unable to process source [https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml]:
    <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)> (https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml)
ERROR: unable to process source [https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml]:
    <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)> (https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml)
ERROR: unable to process source [https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml]:
    Failed to download target platform data for gbpdistro:
    <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)>
Query rosdistro index https://raw.githubusercontent.com/ros/rosdistro/master/index.yaml
ERROR: error loading sources list:
    <urlopen error <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)> (https://raw.githubusercontent.com/ros/rosdistro/master/index.yaml)>
root@0c988f5d8e4c:/#

This is possibly related to: http://answers.ros.org/question/26360...

edit flag offensive delete link more

Comments

Ca-certificates removes many programs that are dependent on what I am trying to remove, so can you suggest a different method of how to overcome this error?Thank you very much for your help, can we use ros-lunar with python 3, because i can use python 3.

trDjango gravatar image trDjango  ( 2017-06-21 15:36:48 -0500 )edit

I wasn't recommending removing ca-certificates. I was demostrating that the error came about if you removed them. If you have the ssl certificates installed then you likely have a man in the middle proxy that needs ssl support.

tfoote gravatar image tfoote  ( 2017-06-21 16:48:17 -0500 )edit

Ca-certificates are installed on my system(ubuntu 16.04.2), but what should I follow in the future, do you have an idea? Thank you very much for your help

trDjango gravatar image trDjango  ( 2017-06-21 18:26:41 -0500 )edit

I guess this ros-lunar still does not fully support the python3.5 version, so I get this certificate error:(

trDjango gravatar image trDjango  ( 2017-06-21 20:28:16 -0500 )edit

rosdep works fine with python3 See this gist where it works until I remove the certificates. https://gist.github.com/tfoote/b3d533... I believe you either have an issue with your installed SSL certificates or else have a proxy or firewall changing your SSL credentials.

tfoote gravatar image tfoote  ( 2017-06-21 21:59:23 -0500 )edit

I tried the following method; my command :

openssl s_client -host www.raw.githubusercontent.com/ros/rosdistro/master/index.yaml -port 443

I got the output:


gethostbyname failure
connect:errno=0

trDjango gravatar image trDjango  ( 2017-06-22 14:14:31 -0500 )edit

but when I changed my command to:

openssl s_client -host www.github.com -port 443

I got the output:

    CONNECTED(00000003)
depth=2 C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert High Assurance EV Root CA
verify return:1
depth=1 C = US, O = DigiCert Inc, OU = www.digicert.com,
trDjango gravatar image trDjango  ( 2017-06-22 14:18:50 -0500 )edit

I understand until now, I can not get certificate approval if there is no www at the beginning of the link:( Can we solve the problem by uploading the files in this yaml extension link to a different server?

trDjango gravatar image trDjango  ( 2017-06-22 14:40:23 -0500 )edit
5

answered 2017-08-08 19:36:06 -0500

trDjango gravatar image

Good luck robot lovers; Problem solved after months.I realized the solution in the following way.I typed the following command at the command line;

export SSL_CERT_FILE=/usr/lib/ssl/certs/ca-certificates.crt

and problem solved.In details; https://github.com/lostisland/faraday/wiki/Setting-up-SSL-certificates

edit flag offensive delete link more

Comments

really thx for your solution. i tried to fix this problem 8 hours long. With your solution i can use now rosdep really thx!

mwjhc gravatar image mwjhc  ( 2023-01-19 19:04:32 -0500 )edit

Question Tools

2 followers

Stats

Asked: 2017-06-20 15:44:14 -0500

Seen: 8,277 times

Last updated: Aug 08 '17