sshのポートフォワーディングでも便利なんだけど、Proxyサーバーは手軽に使えて嬉しい。
SquidでSSHをそのままプロキシする設定。
614 #Recommended minimum configuration: 615 acl all src all 616 acl manager proto cache_object 617 acl localhost src 127.0.0.1/32 618 acl to_localhost dst 127.0.0.0/8 619 # 620 # Example rule allowing access from your local networks. 621 # Adapt to list your (internal) IP networks from where browsing 622 # should be allowed 623 acl localnet src 10.0.0.0/8 # RFC1918 possible internal network 624 acl localnet src 172.16.0.0/12 # RFC1918 possible internal network 625 acl localnet src 192.168.0.0/16 # RFC1918 possible internal network 626 # 627 acl SSL_ports port 22 # ssh 628 acl SSL_ports port 443 # https 629 acl SSL_ports port 563 # snews 630 acl SSL_ports port 873 # rsync 631 acl Safe_ports port 80 # http 632 acl Safe_ports port 21 # ftp 633 acl Safe_ports port 22 # ssh 634 acl Safe_ports port 443 # https 635 acl Safe_ports port 70 # gopher 636 acl Safe_ports port 210 # wais 637 acl Safe_ports port 1025-65535 # unregistered ports 638 acl Safe_ports port 280 # http-mgmt 639 acl Safe_ports port 488 # gss-http 640 acl Safe_ports port 591 # filemaker 641 acl Safe_ports port 777 # multiling http 642 acl Safe_ports port 631 # cups 643 acl Safe_ports port 873 # rsync 644 acl Safe_ports port 901 # SWAT 645 acl purge method PURGE 646 acl CONNECT method CONNECT
パスワードファイルはApacheのhtpasswdコマンドで作れる。
ProxyサーバーにBasic認証を設定し、htpasswdを使う。
htpasswd を使うときには、以下を書いてファイルを指定する。今回はBasic 認証を使ったが、digestも使える。
293 #added by takuya 2011-08-13 294 auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid3/squid.htpasswd 295 auth_param basic children 5 296 auth_param basic realm Squid proxy-caching web server 297 auth_param basic credentialsttl 2 hours 298 #auth_param digest program /usr/lib/squid/digest_pw_auth /etc/squid3/squid.digest 299 #auth_param digest children 5 300 #auth_param digest realm Squid proxy-caching web server 301 #auth_param digest nonce_garbage_interval 5 minutes 302 #auth_param digest nonce_max_duration 30 minutes 303 #auth_param digest nonce_max_count 50 304 acl password proxy_auth REQUIRED 305 http_access allow password
各種認証に対応したモジュールは /usr/lib/squid/にある。
SSHをProxy経由で繋ぐ方法。
これは以前書いている。ここで使っている、Squidの設定が上記になる。
acl SSL_ports port 22 acl Safe_ports port 22HTTPプロキシ経由でのSSH(その3) プロキシが22番へのCONNECTを拒否する場合 - ブックマクロ開発に