centos下簡單配置安裝Squid 3.0反向代理
安裝篇:
本教程應(yīng)用環(huán)境為干凈centos 5.5 ,預(yù)先分好并加載/data分區(qū),并且關(guān)閉selinux及iptables
首先修改文件描述符并設(shè)定臨時(shí)端口范圍,這些設(shè)置重啟后生效
cat >> /etc/security/limits.conf <<DDD
* soft nofile 8192
* hard nofile 20480
DDD
cat >> /etc/sysctl.conf <<DDD
#set temp port range
net.ipv4.ip_local_port_range = 32768 61000
DDD
init 6
確認(rèn)修改是否正確
[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
添加日志目錄、設(shè)置緩存和日志目錄的權(quán)限
mkdir /data/squidlog/
chown -R squid.squid /data
然后上傳或者wget squid3.0軟件tar包,tar zxvf解壓,并且進(jìn)入解壓后的目錄安裝編譯
./configure –prefix=/usr/local/squid3 –enable-async-io=100 –with-pthreads –enable-storeio="aufs,diskd,ufs" –enable-removal-policies="heap,lru" –enable-icmp –enable-delay-pools –enable-useragent-log –enable-referer-log –enable-kill-parent-hack –enable-arp-acl –enable-default-err-language=Simplify_Chinese –enable-err-languages="Simplify_Chinese English" –disable-poll –disable-wccp –disable-wccpv2 –disable-ident-lookups –disable-internal-dns –enable-basic-auth-helpers="NCSA" –enable-stacktrace –with-large-files –disable-mempools –with-filedescriptors=65535 –enable-ssl –enable-x-accelerator-var
make
make install
make install-pinger
至此squid已經(jīng)成功安裝了,然后大家自己所需的/usr/local/squid3/etc/squid.conf 配置文件,我這邊的配置文件將會(huì)在本文末尾貼出來供大家研究。
寫好配置文件后執(zhí)行下面的命令初始化cache目錄
/usr/local/squid3/sbin/squid -z
然后運(yùn)行squid,注:-D參數(shù)用來跳過DNS檢測
/usr/local/squid3/sbin/squid -D
最后設(shè)置squid開機(jī)自動(dòng)啟動(dòng)
echo "/usr/local/squid3/sbin/squid -D " >>/etc/rc.local
維護(hù)篇:
以下是squid常用的命令
如果修改過配置文件,則用下面的命令重讀配置文件(即時(shí)生效)
/usr/local/squid3/sbin/squid -k reconfigure
檢查配置文件配置的語法是否正確
注:只有像這樣的“cache_cf.cc(346) squid.conf:14 unrecognized: 'http1_port'”才是語法錯(cuò)誤,
“WARNING: use of 'reload-into-ims'……”這類提示屬于意見建議,可以忽略。
/usr/local/squid3/sbin/squid -k parse
查看squid的日志和進(jìn)程,看squid運(yùn)行是否正常
ps -ef |awk '/^squid/'
cat /data/squidlog/cache.log
/usr/local/squid3/sbin/squid -k check ;echo $?
關(guān)閉squid
發(fā)出關(guān)閉信號(hào),等會(huì)話結(jié)束后徹底關(guān)閉
/usr/local/squid3/sbin/squid -k shutdown
關(guān)閉squid(更高優(yōu)先級,直接關(guān)閉squid)
/usr/local/squid3/sbin/squid -k interrupt
關(guān)閉squid(最高優(yōu)先級,直接殺死squid進(jìn)程)
/usr/local/squid3/sbin/squid -k kill
滾動(dòng)日志文件
/usr/local/squid3/sbin/squid -k rotate
設(shè)置每周二凌晨四點(diǎn)30分自動(dòng)滾動(dòng)日志
echo "30 4 * * 2 root /usr/local/squid3/sbin/squid -k rotate " >>/etc/crontab
目前應(yīng)用中的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 sudu@sudu.us
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 %<st "%{Referer}>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
本文首發(fā)于http://www.sudu.us/simple-to-install-squid-3-0-reverse-proxy-configuration/
- nginx 作為反向代理實(shí)現(xiàn)負(fù)載均衡的例子
- windows安裝nginx部署步驟圖解(反向代理與負(fù)載均衡)
- Nginx 安裝筆記(含PHP支持、虛擬主機(jī)、反向代理負(fù)載均衡)
- Nginx服務(wù)器做負(fù)載均衡反向代理的超級攻略
- 詳解Nginx + Tomcat 反向代理 負(fù)載均衡 集群 部署指南
- 詳解Nginx 反向代理、負(fù)載均衡、頁面緩存、URL重寫及讀寫分離詳解
- 詳解Nginx HTTP負(fù)載均衡和反向代理配置
- 利用Nginx反向代理與負(fù)載均衡搭建多人測試環(huán)境詳解
- 詳解 Nginx 負(fù)載均衡和反向代理配置和優(yōu)化
- 詳解Nginx反向代理和負(fù)載均衡部署指南
- CentOS6.5環(huán)境安裝nginx服務(wù)器及負(fù)載均衡配置操作詳解
- CentOS基于nginx反向代理實(shí)現(xiàn)負(fù)載均衡的方法
相關(guān)文章
Linux企業(yè)運(yùn)維人員常用的150個(gè)命令分享
這篇文章主要介紹了Linux企業(yè)運(yùn)維人員常用的150個(gè)命令(歡迎補(bǔ)充),具體多少個(gè)來著,我也沒數(shù)。分享給大家,供需要的朋友參考。2017-10-10詳解linux后臺(tái)運(yùn)行和關(guān)閉、查看后臺(tái)任務(wù)
本篇主要介紹了inux后臺(tái)運(yùn)行和關(guān)閉、查看后臺(tái)任務(wù),詳細(xì)的介紹了fg、bg、jobs、&、nohup、ctrl+z、ctrl+c 命令這些命令,有興趣的可以了解一下。2016-12-12解決hadoop啟動(dòng)報(bào)錯(cuò)ERROR: Attempting to operate 
這篇文章主要介紹了解決hadoop啟動(dòng)報(bào)錯(cuò)ERROR: Attempting to operate on hdfs namenode as root的方法,hadoop-3.1.0啟動(dòng)hadoop集群時(shí)還有可能可能會(huì)報(bào)如下錯(cuò)誤,需要的朋友可以參考下2023-03-03deepin20 安裝英偉達(dá)閉源驅(qū)動(dòng)的步驟詳解
這篇文章主要介紹了deepin20 安裝英偉達(dá)閉源驅(qū)動(dòng)的步驟,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09Linux服務(wù)器間文件實(shí)時(shí)同步的實(shí)現(xiàn)
這篇文章主要介紹了Linux服務(wù)器間文件實(shí)時(shí)同步的實(shí)現(xiàn),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-11-11CentOS7修改服務(wù)器系統(tǒng)時(shí)間的方法
服務(wù)器上的系統(tǒng)時(shí)間不對,比實(shí)際的UTC快了將近63分鐘。在這里小編給大家分享下系統(tǒng)時(shí)間更正的過程,對centos修改服務(wù)器時(shí)間的知識(shí)感興趣的朋友參考下吧2016-10-10linux Ubuntu下SSH無密碼驗(yàn)證配置的方法步驟
這篇文章主要介紹了linux Ubuntu下實(shí)現(xiàn)SSH無密碼驗(yàn)證配置的方法步驟,文中給出了詳細(xì)的步驟介紹,有需要的朋友可以參考借鑒,下面來一起看看吧。2017-02-02