![SSL 対応 Squid リバース プロキシ](https://rvso.com/image/782609/SSL%20%E5%AF%BE%E5%BF%9C%20Squid%20%E3%83%AA%E3%83%90%E3%83%BC%E3%82%B9%20%E3%83%97%E3%83%AD%E3%82%AD%E3%82%B7.png)
私は、単一の Web サイトの前で squid をリバース プロキシとして使用し、プロキシ上の SSL を復号化してから、Web サーバーへの接続を暗号化しようとしています (これは、ゼロ トラスト CDR 製品の ICAP クライアントとして squid を使用するためです)。
https_port 1.2.3.4:443 accel
これには、リスナー用と
cache_peer 1.2.4.8 parent 443
Web サーバー用の2 つの設定行が必要であることがわかります 。
ここで、また他の場所で見つけた例に従って、Squid でさまざまなエラーが発生しました。特に次のエラーが発生しました。
FATAL: No valid signing certificate configured for HTTPS_port
Squid 4.x で動作することが確認されている構成は非常に役立ちます。
答え1
明らかに、私が見つけた例はすべて、以前のバージョンの squid のものでした。
この問題に関して私が主に学んだことは、設定行のcert=
およびはもはや正しくなく、代わりに および を使用する必要があるということでした。key=
https_port
tls-cert=
tls-key=
したがって (Squid v4.15 の場合)、必要なのは Web サーバー証明書とその秘密鍵、および squid.conf 内の次の行だけです。
https_port 1.2.3.4:443 accel defaultsite=mysite.com tls-cert=/etc/squid/myserver.pem
cache_peer 1.2.4.8 parent 443 0 no-query originserver login=PASS ssl
これは、証明書と暗号化されていない秘密鍵を含む .PEM で機能します。鍵が別のファイルにある場合は、次のように機能します。
https_port 1.2.3.4:443 accel defaultsite=mysite.com tls-cert=/etc/squid/myserver.pem tls-key=/etc/squid/myserver.key
cache_peer 1.2.4.8 parent 443 0 no-query originserver login=PASS ssl
squid -N
そのキーが暗号化されている場合は、squid を手動で起動する (たとえば、セッションで実行するscreen
) か、sslpassword_program
PEM パスフレーズを提供するための設定行を追加する必要があります。
http_port 3128
注意: squid を起動するには、http_port 設定行 (例 ) がまだ必要であることがわかりました。
すべての構成ファイルのディレクティブはここに記載されています:http://www.squid-cache.org/Doc/config/