设为首页 收藏本站
查看: 1428|回复: 0

[经验分享] squid笔记

[复制链接]

尚未签到

发表于 2018-12-26 10:32:21 | 显示全部楼层 |阅读模式
  推荐阅读:http://blog.s135.com/book/squid/chap06.html    squid中文权威指南
  http://fengzhilinux.blog.运维网.com/1343279/348486

squid笔记:

[root@zhaochj ~]# uname -r
2.6.32-220.el6.x86_64
[root@zhaochj ~]# tar -xf squid-3.2.0.19.tar.bz2
[root@zhaochj ~]# cd squid-3.2.0.19
[root@zhaochj squid-3.2.0.19]# ./configure --prefix=/usr/local/squid --enable-gnuregex --enable-snmp --enable-delay-pools --enable-icmp --enable-cahce-digests --enable-poll --enable-linux-netfilter --enable-large-cache-files --enable-underscore --enable-arp-acl --enable-kill-parent-hack --enable-cachemgr-hostname=localhost --disable-ident-lookups

--enable-gnuregex :由于Squid大量使用字符串处理做各种判断,加入此项能更好的处理,激活使用GNU正则表达式。
--enable-snmp :此选项可以让MRTG使用SNMP协议对服务器的流量状态进行监测,因此必须选择此项,使Squid支持SNMP接口。
--enable-delay-pools 开启squid延时池功能
--enable-icmp :加入icmp支持
--enable-cahce-digests :加快请求时,检索缓存内容的速度。
--enable-err-language=”Simplify_Chinese” 和
--enable-default-err-languages=”Simplify_Chinese” :指定出错是显示的错误页面为简体中文
--enable-poll :指定使用Poll()函数,提升性能就是啦。
--enable-linux-netfilter :可以支持透明代理
--enable-large-cache-files开启大文件支持,支持2GB以上的文件
--enable-underscore :允许解析的URL中出现下划线,因为默认squid会认为带下划线的URL地址是非法的,并拒绝访问该地址
--enable-arp-acl :可以在规则设置中直接通过客户端的MAC地址进行管理,防止客户使用IP欺骗。
--enable-async-io=80 :等同于同时打开./configure如下三个选项
--with-aufs-threads=N_THREADS
--with-pthreads
--enable-storeio=ufs,aufs
这个主要是设置async模式来运行squid,我的理解是设置用线程来运行squid,如果服务器配置很不错,有1G以上内存,cpu使用SMP的方式的话可以考虑设成160或者更高。如果服务器比较糟糕就根据实际情况设了。另外此项还另cache文件支持aufs
--enable-kill-parent-hack :关掉suqid的时候,要不要连同父进程一起关掉
--enable-cachemgr-hostname=localhost:指定cachemgr-hostname值为localhost
--disable-ident-lookups允许服务器利用客户端的特殊TCP连接来发现用户名

[root@zhaochj squid-3.2.0.19]# make && make install
[root@zhaochj squid-3.2.0.19]# useradd -s /sbin/nologin squid -M
[root@zhaochj squid-3.2.0.19]# chown -R squid.squid /usr/local/squid/var/logs/
[root@zhaochj squid-3.2.0.19]# chown -R squid.squid /usr/local/squid/var/cache/
[root@zhaochj squid-3.2.0.19]# cat /usr/local/squid/etc/squid.conf | grep -v '^#' | grep -v '^$' 查看配置文件(去除注释行与空白行)
[root@zhaochj squid-3.2.0.19]# echo "" > /usr/local/squid/etc/squid.conf


以下此配置为实现透明代理!
模型  client(192.168.1.100,gate:192.168.1.1)----->eth0(192.168.1.1):[   squid   ]:eth1:(192.168.133.130) /proc/sys/net/ipv4/ip_forward
  /sbin/iptables -A INPUT -i lo -j ACCEPT
  /sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  /sbin/iptables -A INPUT -i eth+ -p icmp --icmp-type 8 -j ACCEPT
#deny DDOS
  /sbin/iptables -A INPUT -p icmp -m icmp --icmp-type 8 -m limit --limit 6/min --limit-burst 2 -j ACCEPT
  /sbin/iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j REJECT --reject-with icmp-port-unreachable
#
  /sbin/iptables -A INPUT -p TCP -i eth0 --dport  22 -j ACCEPT
  /sbin/iptables -A INPUT -p TCP -i eth1 -s 192.168.1.0/24 -j ACCEPT
  /sbin/iptables -t nat -A PREROUTING -i eth1 -s 192.168.1.0/24 -p tcp --dport 80 --j REDIRECT --to 3128
[root@zhaochj ~]# chmod +x /etc/sysconfig/iptables.sh
[root@zhaochj ~]# echo "/etc/sysconfig/iptables.sh" >> /etc/rc.local

为了预防日志过于庞大,所以借助cron排程来定期滚动日志
[root@zhaochj ~]# crontab -e
40 15 * * * /usr/local/squid/sbin/squid -k rotate
[root@zhaochj ~]# service crond restart



反向代理实验
[client](192.168.133.1)--------->eth0:192.168.133.130[squid server]eth1:172.16.0.1--------->172.16.0.2[web server]

[root@zhaochj ~]# vi /usr/local/squid/etc/squid.conf
#model
http_port 192.168.133.130:80 vhost
cache_mgr root@localhost.localdomain
cache_effective_user squid
cache_effective_group squid
#cache limit
cache_dir ufs /usr/local/squid/var/cache 100 16 256
cache_mem 100 MB
cache_swap_low 90
cache_swap_high 95
cache_access_log /usr/local/squid/var/logs/access.log
cache_log /usr/local/squid/var/logs/cache.log
cache_store_log /usr/local/squid/var/logs/store.log
coredump_dir /usr/local/squid/var/cache
minimum_object_size 0 KB
maximum_object_size 10240 KB
pid_filename /usr/local/squid/var/logs/squid.pid
###
cache_peer 172.16.0.2 parent 80 0 originserver weight=1 max-conn=100
#acl limit
#acl query urlpath_regex .php .jsp .asp .pl .cgi
#http_access deny query
http_access allow all
保存退出!


在做反向代理时在启动squid时有警告:
2012/08/24 12:52:37| WARNING: http(s)_port: vhost option is deprecated. Use 'accel' mode flag instead.


暂时没找到原因,























运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-655985-1-1.html 上篇帖子: squid启动失败的解决办法 下篇帖子: III 18 squid
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表