2
雖然試圖通過使用Python的XML-RPC庫與服務器進行通信:如何忽略SSL證書名稱不匹配在Python(XML-RPC)
import xmlrpc.client
url = 'https://12345/'
api = xmlrpc.client.ServerProxy(url)
print(api.system.listMethods())
我收到此錯誤:
ssl.py in match_hostname ssl.CertificateError: hostname '12345' doesn't match '*.hostname.com'
顯然,我可以改變ssl.py的來源來忽略這個,但有沒有更好的方法,像我可以設置等參數?
忽略不匹配的主機名幾乎與根本不做證書驗證一樣糟糕。攻擊者現在可以使用公共CA簽署的任何證書進行中間人攻擊,而不管證書的主機名是什麼。這樣的證書是微不足道的。您應該改爲針對您在證書中期望的主機名進行檢查。 –
@SteffenUllrich +1。 OTOH你可以通過HTTP進行通信來忽略這個 –