トップ/ Linuxのお部屋

Index/ previous/ next


Proxyの設定

  1. ソフトウェア
  2. Squid Version 2.1.PATCH2を使用します。

  3. [/etc/squid/squid.conf]の設定
  4. Squidを起動させるのに最低限必要な、部分を設定します。

    file:[/etc/squid/squid.conf]
    --- squid.conf.org   Thu Apr 22 11:36:31 1999
    +++ squid.conf       Fri Apr 23 12:49:58 1999
    @@ -20,6 +20,7 @@
     #      a single line.
     #
     #http_port 3128
    +http_port 8080
    
     #  TAG: icp_port
     #      The port number where Squid sends and receives ICP requests to
    @@ -411,7 +412,7 @@
     #      will be created under each first-level directory.  The default
     #      is 256.
     #
    -#cache_dir /var/spool/squid 100 16 256
    +cache_dir /var/spool/squid 100 16 256
    
     #  TAG: cache_access_log
     #      Logs the client request activity.  Contains an entry for
    @@ -533,7 +534,7 @@
     #      Some ftp server also validate that the email address is valid
     #      (for example perl.com).
     #
    -#ftp_user Squid@
    +ftp_user squid@king.souken-sys.co.jp
    
     #  TAG: ftp_list_width
     #      Sets the width of ftp listings. This should be set to fit in
    @@ -995,6 +996,8 @@
     #
     # INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
     #
    +acl clients src 192.168.0.0/255.255.255.0
    +http_access allow clients
     http_access deny all
    
     #  TAG: icp_access
    @@ -1043,6 +1046,7 @@
     #      mail if the cache dies.  The default is "webmaster."
     #
     #cache_mgr webmaster
    +cache_mgr squid
    
     #  TAG: cache_effective_user
     #  TAG: cache_effective_group
    
    http_port
    SquidがHTTP接続要求を待ち受けるポート番号です。
    
    cache_dir
    Squidが取ってきたファイルをキャッシュするためのディレクトリと、そのディレクトリ内にどれだけの容量を確保するかを指定します。
    cache_dir ディレクトリ名 容量[MB] ディレクトリ分割数 サブディレクトリ分割数
    
    ftp_user
    SquidがFTPサイトにログインするときに、名乗るメールアドレスです。
    
    http_access
    Squidに対する接続を許可するホストを設定します。
    
    acl(Access Control List)
    複数のドメイン名をひとまとめにします。
    acl ACL名 種類 ネットワーク名
    
    cache_mgr
    Squidがトラブルを報告する際のメールアドレスです。
    
    

  5. squid用のアカウントの作成
  6. Squid専用のアカウントを作成します。

    # adduser squid
    
    

  7. キャッシュディレクトリの作成
  8. Squidで使うキャッシュディレクトリを作成します。
    [/etc/squid/squid.conf]で指定したディレクトリを作成します。

    # mkdir /var/spool/squid
    # chown squid /var/spool/squid
    # chgrp squid /var/spool/squid
    
    

    ディレクトリを作成したら、キャッシュ用にディレクトリを初期化します。

    # squid -z
    
    

  9. squidのログディレクトリの作成
  10. Squidで使うログディレクトリを作成します。
    [/var/log/squid/]というディレクトリを作成します。(Turbo Linux Server では最初から存在するけど...)
    ディレクトリの所有者をユーザsquidに変更します。

    # mkdir /var/log/squid
    # chown squid /var/log/squid
    # chgrp squid /var/log/squid
    
    

  11. squidの起動
  12. squidを起動させます。

    # squid &
    
    

  13. ログファイルのエージング処理
  14. Squidを運用し続けるとログファイルは、どんどん大きくなっていくので、定期的に名前を付け替えて、ある程度古くなったら消すというエージング処理を行います。

    Turbo Linux Server 1.0では、インストールするとすでにそのようなcrontabが用意されているので、特に設定をしなくてもOKです。
    (Squidが使えるようになっていないと逆にエラーが出るの。)
    デフォルトの状態だと、1日に1回エージング処理のコマンドを発行するようになってます。
    手動でエージング処理をするには、以下のコマンドを実行します。

    # squid -k rotate
    
    

参考資料

Squidのインストール,UNIX MAGAZINE 1999年3月号 P.23-33
小山 洋一,アスキー,1999