關(guān)于squid這個強大的代理軟件,已不須多言,自己也測試了一把,不過,在centos7.3安裝測試的過程,出現(xiàn)了問題, 在做透明代理的時候,用iptables是可以成功的,而用firewall默認防火墻怎么也不成功,但真正知道了firwall的原理后,其實firewall已經(jīng)幫我們做好了!請看
站在用戶的角度思考問題,與客戶深入溝通,找到羅山網(wǎng)站設(shè)計與羅山網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網(wǎng)站制作、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名注冊、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務(wù)覆蓋羅山地區(qū)。
安裝
#yum install squid -y
禁用selinux
#vi /etc/sysconfig/selinux SELINUX=disabled #setenforce 0 臨時關(guān)閉
打開路由轉(zhuǎn)發(fā)
#vi /etc/sysctl.conf net.ipv4.ip_forward=1
配置squid
#vi /etc/squid/squid.conf
主要修改下面幾個,其他的功能,網(wǎng)上應該有一大批講解的
cache_dir ufs /var/log/squid 10240 16 256 ... http_access allow all //測試,允許所有訪問 http_access deny all http_port 3128 transparent //關(guān)鍵,一定要加上,做為透明代理 ... 其他大家看著修改
#squid -k parse 檢查配置文件 #squid -z 初始化 #systemctl start squid 啟動 #lsof -i :3128 查看端口是否啟用
關(guān)鍵,firewall防火墻配置
#firewall-cmd --zone=external --add-interface=eth0 --permanent //外網(wǎng)網(wǎng)卡添加到外網(wǎng)zone #firewall-cmd --zone=internal --add-interface=eth2 --permanent //內(nèi)網(wǎng)網(wǎng)卡添加到內(nèi)網(wǎng)zone #firewall-cmd --zone=external --add-service=squid --permanent //關(guān)鍵,添加squid服務(wù) #firewall-cmd --zone=internal --add-service=squid --permanent //應該只要內(nèi)網(wǎng)區(qū)域添加服務(wù)即可
#firewall-cmd --zone=external --list-all //列出外網(wǎng)區(qū)域信息,默認應該開啟了 masquerade:yes如果是no的話 執(zhí)行如下語句添加 #firewall-cmd --zone=external --add-masquerade --permanent #systemctl restart firewalld //重啟防火墻
客戶端
添加內(nèi)網(wǎng)的ip,網(wǎng)關(guān),設(shè)為squid服務(wù)器的內(nèi)網(wǎng)IP,DNS設(shè)為可用的DNS即可
打開網(wǎng)頁,看是否能夠用了?
其中有個要注意的,如果squid服務(wù)器端,防火墻不添加--add-service=squid 服務(wù)的話,雖然客戶端也可以正常訪問網(wǎng)頁,但已經(jīng)不經(jīng)過squid來轉(zhuǎn)發(fā)了,到時,所有squid的限制功能都會失效。