企業需求
公司内部網絡采用192.168.8.0/24網段的IP位址,所有的用戶端通過代理伺服器接入網際網路。
代理伺服器配置兩塊網卡:
eth0接内網:192.168.8.188/24
eth1接外網:192.168.0.188/24
代理伺服器僅配置代理服務,記憶體2G,硬碟為SCSI硬碟,容量200GB,設定10GB空間為硬碟緩存,要求所有用戶端都可以上網。
需求分析
此案例屬于最基本的Squid代理配置案例,對于小型企業這種代理接入網際網路經常用到,通過這種方法可以在一定程度上加速度浏覽網頁的速度,并且可以監控員工上網情況。
對于本案例,首先是要做的就是配置代理伺服器兩張網卡并開啟路由功能,其次是對主配置檔案squid.conf進行修改,設定記憶體、硬碟緩存、日志以及通路控制清單等字段。然後重新開機squid服務以使配置生效。
解決方案
1、安裝squid軟體包
預設squid沒有安裝,我們需要安裝squid-2.6.STABLE6-4.el5.i386.rpm
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238726934uNG1.png"></a>
2、配置網卡并開啟路由功能
設定網卡IP位址
[root@rhel5 ~]# ifconfig eth0 192.168.8.188 netmask 255.255.255.0
[root@rhel5 ~]# ifconfig eth1 192.168.0.188 netmask 255.255.255.0
開啟核心路由功能
[root@rhel5 ~]# echo "1" > /proc/sys/net/ipv4/ip_forward
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238726938V3j5.png"></a>
3、配置主配置檔案squid.conf
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238726943J1RG.png"></a>
vim /etc/squid/squid.conf
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238726948nb6F.png"></a>
NETWORK OPTIONS
設定僅監聽内網eth0:192.168.8.188上8080端口的http請求
http_port 192.168.8.188:8080
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238726950O86c.png"></a>
OPTIONS WHICH AFFECT THE CACHE SIZE
設定高速緩存為512MB
cache_mem 512 MB
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_12387269608qxc.png"></a>
LOGFILE PATHNAMES AND CACHE DIRECTORIES
設定硬碟緩存大小為10G,目錄為/var/spool/squid,一級子目錄16個,二級子目錄256個
cache_dir ufs /var/spool/squid 10240 16 256
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238726968Slh1.png"></a>
設定通路日志
cache_access_log /var/log/squid/access.log
設定緩存日志
cache_log /var/log/squid/cache.log
設定網頁緩存日志
cache_store_log /var/log/squid/store.log
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238726973sMwy.png"></a>
OPTIONS FOR EXTERNAL SUPPORT PROGRAMS
設定DNS伺服器位址
dns_nameservers 192.168.0.1 221.228.225.1
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_12387269812pIE.png"></a>
ACCESS CONTROLS
設定通路控制清單all,該表的内容為所有用戶端
acl all src 0.0.0.0/0.0.0.0
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238726986rd4o.png"></a>
設定允許所有用戶端通路
http_access allow all
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238726990Y3Ip.png"></a>
ADMINISTRATIVE PARAMETERS
設定管理者E-mail位址
cache_mgr [email][email protected][/email]
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238726994fGNT.png"></a>
設定squid程序所有者
cache_effective_user squid
設定squid程序所屬組
cache_effective_group squid
設定squid可見主機名
visible_hostname 192.168.8.188
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238726996vQfD.png"></a>
儲存退出哈~
4、初始化squid服務
squid -z
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238726998LUzY.png"></a>
5、啟動squid服務
service squid start
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238726998gdGX.png"></a>
6、測試
用戶端設定
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238727000QOJ7.png"></a>
OK,可以上網了哈,代理伺服器配置成功~~~
<a href="http://redking.blog.51cto.com/attachment/200904/3/27212_1238727002Q7c0.png"></a>
####################Michael分割線#########################
本文轉自redking51CTO部落格,原文連結:http://blog.51cto.com/redking/145561,如需轉載請自行聯系原作者