歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux Fedora 8用squid3.0單網卡配置簡單透明代理

Linux Fedora 8用squid3.0單網卡配置簡單透明代理

日期:2017/2/28 16:53:21   编辑:Linux教程

Linux Fedora 8安裝並配置squid代理服務器

1.非透明代理

1》.squid3.0的安裝就省略了,我的系統剛更新的,自己就是3.0了,不過安裝它應該不難

2》.對於沒有特殊要求的,采用默認的配置文件就ok了,在/etc/squid/squid.conf,如果你一起有改過的話,可以copyd同目錄squid.conf.default到裡面。

whereis squid,看看安哪了,也可以rpm -ql squid

sudo /usr/sbin/squid -z,初始化目錄

sudo /etc/rc.d/init.d/squidstart

此時默認的是3128端口,防火牆是通不過的,在防火牆-》可信端口-》添加3128,tcp

》可信的服務->WWW選上

另外,要確認服務中squid是enabled,而對於初始的默認cache目錄,/var/spool/squid和/var/log/squid,我改變了他們的屬主,但估計是多余了(squid用戶和群早就有了,忘了是自己建的還是系統代的,哈哈)

sudo chown -R squid:squid~~~

3》.在客戶端ie,設置好ip:port就好了。

2.改成透明代理

1》.同樣,沒有特殊要求,還是采用默認的,只是在http_port 3128 後加一個transparent

2》.關鍵是配置iptables控制轉發

echo "1" >/proc/sys/net/ipv4/ip_forward

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT--to-ports 3128

3》.如果是在命令行輸入的話,那麼每次重啟系統和iptables後都要重新輸入,可以這樣解決:

iptable的配置,在/etc/rc.d/目錄下用touch命令建立firewall文件,執行chmod u+xfirewll以更改文 件屬性,編輯/etc/rc.d/rc.local文件,在末尾加上/etc/rc.d/firewall以確保開機時能自動執行該腳本。

echo "starting ip forward"
echo 1 >/proc/sys/net/ipv4/ip_forward
echo "starting iptables rules"
modprobe ip_tables
modprobe ip_nat_ftp
/sbin/iptables -F -t nat

iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -jREDIRECT --to-ports3128 #將所有80#端口的包轉發到3128端口

//iptables -t nat -A POSTROUTING -o eth0 -jMASQUERADE #對eth0端口進行欺騙,單網卡用不到

4》.配置完以上內容後就可以配置客戶端上網了

ie裡取消代理的設置,將客戶端的網關指向服務器ip,設置好dns,然後就可以上網了

如果不設好dns的話,就只有人工解析了,比如百度,202.108.22.43

關鍵是這裡的dns的設置,網上說的都比較模糊,我猜測,應該有兩種方法:

<1>.通過轉發,就是講內網的dns請求轉發到外網的dns服務器進行解析

<2>.Linux同時充當dns服務器,關於dns服務器的文章也很多,但本人菜鳥,要求不高,只有能用就ok了。(將客戶端dns指定為服務器ip)

A.我用的是dnsmasq:Linux下可以用Iptables加Dnsmasq做透明DNS代理。我並沒有這麼做,只是簡單的開啟了dnsmasq而已

B.就是用bind,有空再說吧

5》.發現這樣配置的透明代理上不了qq,但設置代理可以上,這應該是和squid有關

Copyright © Linux教程網 All Rights Reserved