やりたいこと
- Rockylinux9 の SQUID を透過型プロキシとして構築し、クライアントからプロキシ設定無しでインターネット接続およびプロキシで GET や POST のメソッドまでログできるようにする
前提
以下の手順で SQUID を ssl_bump 込みで構築した状態から始めます。
【Rockylinux9】SQUID+ssl_bumpの仕組みと設定
やりたいこと Rockylinux9 で SQUID を構築し、クライアントから...
構築手順
ルーティング設定
RockyLinux9 上でルーティングができるように設定します。
[root@localhost ~]# tee -a /etc/sysctl.conf <<EOF >/dev/null net.ipv4.ip_forward = 1 EOF [root@localhost ~]# sysctl -p [root@localhost ~]# sysctl net.ipv4.ip_forward net.ipv4.ip_forward = 1
NAT 設定
続いて firewalld の DIRECT RULE で NAT 設定をします。
[root@localhost ~]# firewall-cmd --permanent --direct --add-rule ipv4 nat PREROUTING 1 -i enp0s3 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128 [root@localhost ~]# firewall-cmd --permanent --direct --add-rule ipv4 nat PREROUTING 2 -i enp0s3 -p tcp -m tcp --dport 443 -j REDIRECT --to-ports 3129 [root@localhost ~]# firewall-cmd --reload
SQUID 追加設定
そして最後に /etc/squid/squid.conf にて http_port の設定を以下のように修正します。
http_port 3128 http_port 3128 intercept https_port 3129 intercept tcpkeepalive=60,30,3 ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=20MB tls-cert=/etc/squid/bump.crt tls-key=/etc/squid/bump.key cipher=HIGH:MEDIUM:!LOW:!RC4:!SEED:!IDEA:!3DES:!MD5:!EXP:!PSK:!DSS options=NO_TLSv1,NO_SSLv3,SINGLE_DH_USE,SINGLE_ECDH_USE tls-dh=prime256v1:/etc/squid/bump_dhparam.pem
http_port を 2 行追加し、ssl_bump の設定の "http_port 3128" を "https_port 3129 intercept" に差し替えています。
そして squid を再起動し、ステータスを確認します。
[root@localhost ~]# systemctl restart squid [root@localhost ~]# systemctl status squid
動作確認
クライアントのプロキシ設定を外し、インターネット宛の通信が RockyLinux9 を通過するようにします。
簡単なやり方としては、squid の待ち受けインタフェースと同セグメントにクライアント PC を設置し、デフォルトゲートウェイをその待ち受けインタフェースの IP アドレスにすることです。
その後、squid 側でログを流す状態にします。
[root@localhost ~]# tail -f /var/log/squid/access.log
そしてクライアントからインターネットへアクセスし、GET や POST のログが流れることを確認します。
コメント