Ich betreibe einige Server, auf denen mitmproxy auf zweien korrekt installiert ist. Ich folge demselben Prozess wie bei den anderen beiden Servern auf einem identischen dritten Server, aber mitmproxy funktioniert nicht. Ich erhalte jedes Mal einen TLS-Fehler. So gehe ich vor:
sudo apt install mitmproxy
mitmproxy
cd .mitmproxy
mv mitmproxy-ca.pem mitmproxy.crt
sudo cp mitmproxy.crt /usr/local/share/ca-certificates
Dieser Vorgang funktioniert normalerweise, aber jetzt tritt ein Fehler auf. Gibt es eine Möglichkeit, das zu beheben?
bearbeiten: der Fehler ist Client-Handshake fehlgeschlagen. Der Client vertraut möglicherweise nicht dem Zertifikat des Proxys für [Website]
Antwort1
Wenn Sie mitmproxy nach der Installation zum ersten Mal ausführen, werden die Zertifikate am ~/.mitmproxy
Standort generiert.
Der von Ihnen erwähnte Fehler (Client vertraut dem Zertifikat des Proxys möglicherweise nicht) liegt daran, dass das System den generierten Zertifikaten nicht vertraut. Dazu können Sie den folgenden Befehl ausführen:
Für Mac:
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain /path/to/certs/mitm_cert.pem
Für Windows:
certutil -addstore root /path/to/certs/mitm_cert.pem
Für Ubuntu: (dieser Befehl wurde nicht getestet, aber suchen Sie einfach nach „Wie kann man Zertifikaten unter Ubuntu vertrauen?“, wenn das nicht funktioniert)
sudo cp /path/to/certs/mitm_cert.pem /usr/local/share/ca-certificates/
sudo update-ca-certificates
Ich hoffe das hilft.