ubuntu 14.04中開啟squid服務並將本機作為代理伺服器

readyao發表於2016-01-15

1、在主機1上安裝squid

root@linux_ever:~# apt-get install squid

2、修改squid的配置檔案squid.conf 

root@linux_ever:~# vim /etc/squid3/squid.conf 

定位到下面的位置,將http_access deny deny 改為 http_access  allow all

# And finally deny all other access to this proxy

http_access deny all #這裡把deny改成allow就可以讓任意使用者通過你的機器作為代理了</span>

或者將上面的http_access deny deny替換為下面的兩行(本次使用的這種配置)

acl localnet src 192.168.0.0/24
http_access allow localnet</span>

這兩行的意思是允許192.168.0.0網路上的所有機器通過該代理伺服器來訪問Web伺服器。192.168.0.0/24表明,/之前的網路地址,/之後的24表明子網掩碼中1的位數,這種寫法等價於192.168.0.0/255.255.255.0

3、重啟squid伺服器

root@linux_ever:~# service squid3 restart

輸出:

squid3 stop/waiting
squid3 start/running, process 16233  (表明squid伺服器已經在執行了)

還有下面兩個命令:

root@linux_ever:~# service squid3 start  啟動執行

root@linux_ever:~# service squid3 stop  停止執行

service是一個指令碼程式(/usr/sbin/service),它為/etc/init.d/目錄下的眾多伺服器程式(httpd, vsftpd, sshd, mysqld等)的啟動(start)、停止(stop)、重啟(restart)等動作提供了一個統一的管理。

4、測試代理伺服器

在主機2上面測試該代理伺服器:

第一步:在主機2上配置環境變數http_proxy,輸入命令:export http_proxy="192.168.0.141:3128"  其中192.168.0.141是主機1的IP地址

第二步:執行wget客戶端獲得百度的主頁,輸入命令:wget http://www.baidu.com/index.html 

輸出為:

root@linux_ever2:~# wget http://www.baidu.com/index.html 
--2016-01-15 19:18:28--  http://www.baidu.com/index.html
正在連線 192.168.0.141:3128... 已連線。
已發出 Proxy 請求,正在等待回應... 200 OK
長度: 未指定 [text/html]
正在儲存至: “index.html”

    [ <=>                                                                                                                ] 98,558      --.-K/s   用時 0.03s 

2016-01-15 19:18:28 (3.19 MB/s) - “index.html” 已儲存 [98558]</span>

第三行可以看到 已連線上了主機1:192.168.0.141:3128,最後一行提示成功獲取主頁並儲存在當前目錄下面,可以ls檢視一下。

5、還可以用tcpdump來抓包檢視

在主機2上面輸入命令:tcpdump -s 2000 -i eth0 -nt '(src 192.168.0.141)or(dst 192.168.0.141)or(arp)'
再在主機上2另一個終端輸入命令:wget http://www.baidu.com/index.html 

然後會看到tcpdump監聽到的幀,以下是前三個和主機1建立tcp連線的三個幀:

IP 192.168.0.125.51511 > 192.168.0.141.3128: Flags [S], seq 2894394634, win 29200, options [mss 1460,sackOK,TS val 14723109 ecr 0,nop,wscale 7], length 0
IP 192.168.0.141.3128 > 192.168.0.125.51511: Flags [S.], seq 2326267645, ack 2894394635, win 28960, options [mss 1460,sackOK,TS val 22620352 ecr 14723109,nop,wscale 7], length 0
IP 192.168.0.125.51511 > 192.168.0.141.3128: Flags [.], ack 1, win 229, options [nop,nop,TS val 14723110 ecr 22620352], length 0

備註:主機1的IP是:192.168.0.141, 主機2的IP是:192.168.0.125

相關文章