gpt4 book ai didi

python - 使用 easy webdav 时如何验证我的自签名证书?

转载 作者:太空宇宙 更新时间:2023-11-03 13:12:31 25 4
gpt4 key购买 nike

我知道how to connect to my owncloud with python, by using easywebdav .

我正在使用自签名证书和 verify_ssl=False ,但这使我容易受到中间人攻击,这是首先使用 ssl 的唯一原因。

我正在使用 Fedora 并尝试将我的服务器证书添加到 $HOME/.pki/CA/cacert.pem , 但它仍然失败。

最佳答案

您已经在 $HOME/.pki/CA/cacert.pem 中拥有您的服务器证书。但要对其他人来说是完整的,您可以像这样使用 python 获得证书:

import ssl
import os
# get the https certificate
cert = ssl.get_server_certificate(('example.com', 443))
# append it to my personal chain
pem_path = os.path.expanduser('~/.pki/CA/cacert.pem')
with open(pem_path, 'a+') as f:
f.write(cert)

然后在easywebdav中使用它。 Easywebdav builds on requests . verify_ssl 用作requests.Session.verify Requests docs say它接受 bool 值(True 使用默认链)CA_BUNDLE 的路径

所以这应该可行:

import easywebdav
pem_path = os.path.expanduser('~/.pki/CA/cacert.pem')
webdav = easywebdav.connect('example.com', username='user', password='pass',
protocol='https', port=443,
verify_ssl=pem_path)
...

关于python - 使用 easy webdav 时如何验证我的自签名证书?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23767304/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com