Как я могу использовать сертификаты ЦС системы (Debian/Ubuntu) с запросами Python?Python

Программы на Python
Anonymous
Как я могу использовать сертификаты ЦС системы (Debian/Ubuntu) с запросами Python?

Сообщение Anonymous »

Я установил самозаверяющий корневой сертификат CA в /usr/share/ca-certificates/local Debian и установил их с помощью sudo dpkg-reconfigure ca-certificates.
На данный момент true | gnutls-cli mysite.local доволен, и это правда | openssl s_client -connect mysite.local:443 доволен, но модуль Requests Python 2 и Python 3 настаивает, что его не устраивает сертификат.
Python 2:

Код: Выделить всё

Traceback (most recent call last):
File "", line 1, in 
File "/usr/local/lib/python2.7/site-packages/requests/api.py", line 70, in get
return request('get', url, params=params, **kwargs)
File "/usr/local/lib/python2.7/site-packages/requests/api.py", line 56, in request
return session.request(method=method, url=url, **kwargs)
File "/usr/local/lib/python2.7/site-packages/requests/sessions.py", line 488, in request
resp = self.send(prep, **send_kwargs)
File "/usr/local/lib/python2.7/site-packages/requests/sessions.py", line 609, in send
r = adapter.send(request, **kwargs)
File "/usr/local/lib/python2.7/site-packages/requests/adapters.py", line 497, in send
raise SSLError(e, request=request)
requests.exceptions.SSLError: ("bad handshake: Error([('SSL routines', 'ssl3_get_server_certificate', 'certificate verify failed')],)",)
Python 3:

Код: Выделить всё

Traceback (most recent call last):
File "", line 1, in 
File "/usr/local/bin/python3.5/site-packages/requests/api.py", line 70, in get
return request('get', url, params=params, **kwargs)
File "/usr/local/bin/python3.5/site-packages/requests/api.py", line 56, in request
return session.request(method=method, url=url, **kwargs)
File "/usr/local/bin/python3.5/site-packages/requests/sessions.py", line 488, in request
resp = self.send(prep, **send_kwargs)
File "/usr/local/bin/python3.5/site-packages/requests/sessions.py", line 609, in send
r = adapter.send(request, **kwargs)
File "/usr/local/bin/python3.5/site-packages/requests/adapters.py", line 497, in send
raise SSLError(e, request=request)
requests.exceptions.SSLError: ("bad handshake: Error([('SSL routines', 'ssl3_get_server_certificate', 'certificate verify failed')],)",)
Почему Python игнорирует системный пакет ca-certificates и как его интегрировать?


Подробнее здесь: https://stackoverflow.com/questions/429 ... s-requests

Вернуться в «Python»