centosでの簡単な構成インストールSquid 3.0リバースエージェント

7812 ワード

インストール編:このチュートリアルのアプリケーション環境はクリーンcentos 5.5で、事前に/dataパーティションを分割してロードし、selinuxとiptablesを閉じてまずファイル記述子を修正し、一時的なポート範囲を設定し、これらの設定は再起動後に有効になります.
 
  
cat >> /etc/security/limits.conf <* soft nofile 8192
* hard nofile 20480
DDD

cat >> /etc/sysctl.conf <#set temp port range
net.ipv4.ip_local_port_range = 32768 61000
DDD

init 6

修正が正しいか確認する
 
  
[root@sudutest ~]# ulimit -n
8192
[root@suduotest ~]# sysctl -n net.ipv4.ip_local_port_range
net.ipv4.ip_local_port_range = 32768 61000

squidプライベートアカウントの追加
 
  
groupadd squid
useradd -g squid -s /bin/false -M squid

ログ・ディレクトリの追加、キャッシュおよびログ・ディレクトリの権限の設定
 
  
mkdir /data/squidlog/
chown -R squid.squid /data

その後、アップロードまたはwget squid 3.0ソフトウェアtarパッケージ、tar zxvf解凍、解凍後のディレクトリインストールコンパイルに入ります.
 
  
./configure �Cprefix=/usr/local/squid3 �Cenable-async-io=100 �Cwith-pthreads �Cenable-storeio="aufs,diskd,ufs" �Cenable-removal-policies="heap,lru" �Cenable-icmp �Cenable-delay-pools �Cenable-useragent-log �Cenable-referer-log �Cenable-kill-parent-hack �Cenable-arp-acl �Cenable-default-err-language=Simplify_Chinese �Cenable-err-languages="Simplify_Chinese English" �Cdisable-poll �Cdisable-wccp �Cdisable-wccpv2 �Cdisable-ident-lookups �Cdisable-internal-dns �Cenable-basic-auth-helpers="NCSA" �Cenable-stacktrace �Cwith-large-files �Cdisable-mempools �Cwith-filedescriptors=65535 �Cenable-ssl �Cenable-x-accelerator-var
make
make install
make install-pinger

これでsquidは正常にインストールされ、必要な/usr/local/squid 3/etc/squid.confプロファイルが本明細書の末尾に貼られ、検討されます.
プロファイルを作成したら、次のコマンドを実行してcacheディレクトリを初期化します.
/usr/local/squid3/sbin/squid -z
次にsquidを実行します.注:-DパラメータはDNS検出をスキップするために使用されます.
/usr/local/squid3/sbin/squid -D
最後にsquid起動自動起動を設定
echo "/usr/local/squid3/sbin/squid -D ">>/etc/rc.local
メンテナンス編:
以下はsquidでよく使われるコマンドです
プロファイルを変更した場合は、次のコマンドでプロファイルを再読み込みします(即時有効).
/usr/local/squid3/sbin/squid -k reconfigure
プロファイル構成の構文が正しいかどうかを確認します.
注意:このような「cache_cf.cc(346)squid.conf:14 unrecognized:'http 1_port'」だけが構文エラーです.
「WARNING:use of'rload-into-ims'......」というヒントは意見のアドバイスであり、無視できます.
/usr/local/squid3/sbin/squid -k parse
squidのログとプロセスを表示し、squidが正常に動作しているかどうかを確認します.
 
  
ps -ef |awk '/^squid/'
cat /data/squidlog/cache.log
/usr/local/squid3/sbin/squid -k check ;echo $?

squidを閉じる
クローズ信号を出して、セッション終了後に完全にクローズします
/usr/local/squid3/sbin/squid -k shutdown
squidを閉じる(より優先度が高く、squidを直接閉じる)
/usr/local/squid3/sbin/squid -k interrupt
squidを閉じる(最高優先度、squidプロセスを直接殺す)
/usr/local/squid3/sbin/squid -k kill
ログファイルのスクロール
/usr/local/squid3/sbin/squid -k rotate
毎週2日午前4時30分自動スクロールログの設定
echo "30 4 * * 2 root/usr/local/squid3/sbin/squid -k rotate ">>/etc/crontab
現在のアプリケーションのsquid.confファイルは、ログファイルの成長が速いため、/dev/nullに直接出力して破棄されました.
 
  
#basic
cache_effective_user squid
cache_effective_group squid
pid_filename /usr/local/squid3/var/logs/squid.pid
visible_hostname squid.678114.com
cache_mgr [email protected]
error_directory /usr/local/squid3/share/errors/Simplify_Chinese
icon_directory /usr/local/squid3/share/icons
mime_table /usr/local/squid3/etc/mime.conf
hosts_file /etc/hosts

acl DEIpadd dstdom_regex [0-9]$
http_access deny DEIpadd

cache_replacement_policy lru
memory_replacement_policy lru

http_port 80 vhost vport

cache_mem 4024 MB
maximum_object_size_in_memory 5120 KB

icp_port 0

#.cache_dir
cache_dir aufs /data/cache 50000 64 128

max_open_disk_fds 0
maximum_object_size 20 MB

#.cache_peer
cache_peer 125.76.225.44 parent 80 0 no-query originserver no-digest name=all
cache_peer_domain all .678114.com

#acl
acl Safe_ports port 80
acl SSL_ports port 443
acl LanSrc src 192.168.100.0/24
acl webdomain dstdomain .678114.com
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow LanSrc
http_access allow webdomain
http_access deny all

#refresh_pattern
refresh_pattern -i /$ 15 90% 600 reload-into-ims
refresh_pattern -i .html$ 15 90% 600 reload-into-ims
refresh_pattern -i .htm$ 15 90% 600 reload-into-ims
refresh_pattern -i .shtml$ 15 90% 600 reload-into-ims
refresh_pattern -i .hml$ 15 90% 600 reload-into-ims
refresh_pattern -i .gif$ 1440 90% 129600 reload-into-ims
refresh_pattern -i .swf$ 1440 90% 129600 reload-into-ims
refresh_pattern -i .jpg$ 1440 90% 129600 reload-into-ims
refresh_pattern -i .png$ 1440 90% 129600 reload-into-ims
refresh_pattern -i .bmp$ 1440 90% 129600 reload-into-ims
refresh_pattern -i .js$ 120 90% 129600 reload-into-ims
refresh_pattern -i .css$ 120 90% 129600 reload-into-ims
refresh_pattern -i .wma$ 1440 90% 21600 reload-into-ims
refresh_pattern -i .zip$ 1440 90% 21600 reload-into-ims
refresh_pattern -i .mp3$ 1440 90% 21600 reload-into-ims
refresh_pattern -i .rar$ 1440 90% 21600 reload-into-ims
refresh_pattern -i .rm$ 1440 90% 21600 reload-into-ims
refresh_pattern -i .flv$ 1440 90% 21600 reload-into-ims
refresh_pattern -i .rar$ 1440 90% 21600 reload-into-ims
refresh_pattern -i .rm$ 1440 90% 21600 reload-into-ims
refresh_pattern -i .avi$ 1440 90% 21600 reload-into-ims
refresh_pattern -i .3gp$ 1440 90% 21600 reload-into-ims
refresh_pattern -i .mp4$ 1440 90% 21600 reload-into-ims
refresh_pattern -i .wmv$ 1440 90% 21600 reload-into-ims

#keepalived
client_persistent_connections off
server_persistent_connections on

#log
emulate_httpd_log on
logformat web1 %{X-Forwarded-For}>h %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %h" "%{User-Agent}>h" %Ss:%Sh
cache_log /data/squidlog/cache.log
cache_access_log /dev/null web1
cache_store_log /dev/null
strip_query_terms off
logfile_rotate 10

#other
forwarded_for on
log_icp_queries off
via off
httpd_suppress_version_string off
ie_refresh off
tcp_recv_bufsize 32 KB
ipcache_size 1024
ipcache_low 90
ipcache_high 95
cache_swap_low 80
cache_swap_high 90
request_header_max_size 128 KB

quick_abort_min 20 KB
quick_abort_max 20 KB
quick_abort_pct 95

connect_timeout 1 minute
negative_ttl 0 minutes

read_timeout 30 seconds
pconn_timeout 120 seconds
half_closed_clients off
client_lifetime 10 minutes
shutdown_lifetime 5 seconds

hierarchy_stoplist cgi-bin ?
access_log /dev/null squid

本文はhttp://www.sudu.us/simple-to-install-squid-3-0-reverse-proxy-configuration/