![Wie bringt man den Squid-Proxy dazu, selbstsignierte Zertifikate zu akzeptieren?](https://rvso.com/image/776306/Wie%20bringt%20man%20den%20Squid-Proxy%20dazu%2C%20selbstsignierte%20Zertifikate%20zu%20akzeptieren%3F.png)
Ich habe einen Anwendungsfall, bei dem ich selbstsignierte Zertifikate in Squid akzeptieren muss. Die Endpunkte sind Kubernetes-Cluster, die selbstsignierte Zertifikate verwenden. Die Cluster werden bei Bedarf mit unterschiedlichen selbstsignierten Zertifikaten neu erstellt und müssen daher mit einem regulären Ausdruck, auf bevorzugte Weise oder global zu Testzwecken akzeptiert werden.
Die aktuelle Squid-Version ist 6.0.0, kompiliert mit den folgenden Flags:
Squid Cache: Version 6.0.0-VCS
Service Name: squid
This binary uses OpenSSL 1.1.1 11 Sep 2018. For legal restrictions on distribution see https://www.openssl.org/source/license.html
configure options: '--prefix=/apps/squid' '--enable-icap-client' '--enable-ssl' '--with-openssl' '--enable-ssl-crtd' '--enable-security-cert-generators=file' '--enable-au
th' '--with-default-user=proxy'
In meinen Tests habe ich mit den ssl_bump-Konfigurationen und den tls_outgoing_options gespielt:
http_port 8080 ssl-bump cert=/apps/squid/etc/ssl_cert/CA_crt.pem key=/apps/squid/etc/ssl_cert/CA_key.pem generate-host-certificates=on dynamic_cert_mem_cache_size=4MB
sslcrtd_program /apps/squid/libexec/security_file_certgen -s /apps/squid/var/logs/ssl_db -M 4MB
sslcrtd_children 5
ssl_bump bump all
sslproxy_cert_error allow all
tls_outgoing_options options=ALL flags=DONT_VERIFY_PEER,DONT_VERIFY_DOMAIN
Aber das beste Ergebnis, das ich erreichen kann, ist_curl: (51) SSL: no alternative certificate subject name matches target host name
Oder ohne ssl_bump
http_port 8080 ssl-bump cert=/apps/squid/etc/ssl_cert/CA_crt.pem key=/apps/squid/etc/ssl_cert/CA_key.pem generate-host-certificates=on dynamic_cert_mem_cache_size=4MB
sslcrtd_program /apps/squid/libexec/security_file_certgen -s /apps/squid/var/logs/ssl_db -M 4MB
sslcrtd_children 5
sslproxy_cert_error allow all
tls_outgoing_options options=ALL flags=DONT_VERIFY_PEER,DONT_VERIFY_DOMAIN
Ich bekommecurl: (35) OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to
Heute brauche ich K8S-Endpunkte, aber morgen können es auch andere Endpunkte sein. Daher muss Squid die Verbindung herstellen, indem er den CN austrickst.