Squid(Windows) - mtnori/tips GitHub Wiki

Squid(Windows)についての設定

とりあえずインストールとパスワード設定してるだけ。

ダウンロードとインストール

  • 以下サイトからWindows向けインストーラをダウンロードする。
    http://squid.diladele.com/
  • インストーラを起動して、インストールする。
  • インストールが終わるとサービスとして自動起動する。

BASIC認証

  • パスワードファイルを作成する。
    htpasswdコマンドはApacheをインストールすれば付いてくる。

  • 以下のファイルを編集する。
    [Squidのインストール先]\Squid\etc\squid\squid.conf

    • 以下の行を追加する。
      # BASIC認証
      auth_param basic program D:\Squid\lib\squid\basic_ncsa_auth.exe [htpasswdのパス(相対パスでも可?)]
      auth_param basic children 5
      auth_param basic realm Squid proxy-caching web server
      auth_param basic credentialsttl 2 hours
      auth_param basic casesensitive off

    • 以下の行をコメントアウトする。
      #http_access allow localnet
      #http_access allow localhost

    • 以下の行を追加する。
      acl password proxy_auth REQUIRED
      http_access allow password

SSL Bumpの設定

  • 自己署名証明書の秘密鍵を設定し、クライアントにその証明書の
    公開鍵の利用を強制させることで、Proxyサーバ内でhttps通信を
    傍受することができる。

  • 以下のサイトからOpenSSLをインストールする
    https://wiki.openssl.org/index.php/Binaries

  • 自己署名証明書を作成する

    • 秘密鍵
      openssl req -new -newkey rsa:2048 -sha256 -days 3650 -nodes -x509 -keyout squidCA.pem -out squidCA.pem
    • 公開鍵
      openssl x509 -in squidCA.pem -outform DER -out squidCA.der
  • 以下のファイルを編集する。
    [Squidのインストール先]\Squid\etc\squid\squid.conf

    • 以下の行を追加する。
      http_port 3128 ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=4MB cert=[squidCA.pemのあるパス]
      acl step1 at_step SslBump1
      ssl_bump peek step1
      ssl_bump bump all
      sslcrtd_program [Squidのインストール先]\lib\squid\ssl_crtd -s [Squidのインストール先]\var\cache\squid_ssldb -M 4MB
      sslproxy_options NO_SSLv2,NO_SSLv3,SINGLE_DH_USE
      sslproxy_cipher ECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH+aRSA+RC4:EECDH:EDH+aRSA:HIGH:!RC4:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS

    • 以下の行をコメントアウトする。
      #http_port 3128

  • squidCA.der(公開鍵)をブラウザやCLIツールに設定して利用する。