歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> IP偽裝之ipchains快速指南

IP偽裝之ipchains快速指南

日期:2017/2/27 14:13:59   编辑:更多Linux
  上個月,我和兄弟想在家裡建一個小型網絡,以便在一個modem一條電話線的情況下讓更多的計算機能聯上互聯網。我的機子聯著modem,運行Linux,用作服務器;兄弟的機子運行Win95作客戶機。我在網上到處查找關於這種小型網絡的資料文檔,最後決定使用IP偽裝的技術來達到目的。 IP偽裝技術是通過指派內部網的IP地址(在本例中我的機子IP為 10.0.0.1 客戶機IP為10.0.0.2)使其他的客戶機在沒有外部IP地址時共享服務器的互聯網連接。我看了許多有關的文檔,的確弄懂了ipchains的原理和配置過程,但就是不能正常地運行在我的機子上。於是我就進入了在Undernet.org的#Linux IRC頻道,並得到了一個自稱Mongoose的同好的幫助。 他給了我一個他寫的"用ipchains來實現IP偽裝"的快速教程的網頁地址。 *Ipchains是一個用來設置防火牆和IP偽裝的軟件,隨RedHat 6.0 捆綁發行。(譯注:ipchains也是自由軟件,在網上可自由下載,主頁在: http://www.adelaide.net.au/~rustcorp/linux/ipchains 看了Mongoose的快速教程後,我用不到十分鐘就搞定了我的網絡。這也是我繼續與他聯系, 並得到他同意在Linux公報上發表他的教程的原因。 下面就是他的教程: ---------------------------------------- 注意: ---------------------------------------- 以下IP地址的含義為: 0.0.0.0 互聯網的網關. 10.0.0.1 作網關機子的網卡捆綁IP地址. 10.0.0.2 作客戶機 client0 的網卡IP地址. 10.0.0.3 作客戶機 client1 的網卡IP地址. 網絡網關設置 ---------------------------------------- 1.載入網卡模塊(如果需要的話) /sbin/modprobe ne2k-pci (不同網卡的模塊名也不同) 2.激活網卡並配置路由 (在/etc/rc.d/rc.local中加入以下腳本) /sbin/ifconfig eth0 10.0.0.1 netmask 255.255.255.0 up /sbin/route add -net 10.0.0.0 netmask 255.255.255.0 eth0 /sbin/route add default gw 0.0.0.0 eth0 3.允許客戶機使用你的網絡。 A. 在 /etc/hosts.allow 的尾部加入以下腳本: ALL:10.0.0.2 ALL:10.0.0.3 B. 在其他需要配置的地方加入所需配置: i. 因為速度的原因我建議使用squid作FTP/http的proxy. 網絡客戶機設置 ( 10.0.0.2 client0 ) ---------------------------------------- 1.載入網卡模塊(如果需要的話) /sbin/modprobe ne2k-pci 2.激活網卡並配置路由 (在/etc/rc.d/rc.local中加入以下腳本) /sbin/ifconfig eth0 10.0.0.2 netmask 255.255.255.0 up /sbin/route add -net 10.0.0.0 netmask 255.255.255.0 eth0 /sbin/route add default gw 10.0.0.1 eth0 網絡測試 ---------------------------------------- 1. 從客戶機 ping 10.0.0.1 ,並反向測試。 2. 使用 /sbin/ifconfig 來觀察包傳輸情況。 3. 此時你應該能從客戶機使用服務器的telnet/ftp服務。 A. 如果你在客戶機上不能telnet到服務器,請檢查 hosts.allow文件. IP MASQ GATEWAY IP MASQ SETUP


IP偽裝網關設置 ---------------------------------------- 1. IP轉發設置(IP forwarding setup). A. 為IP偽裝網關加載IP轉發。 echo "1" > proc/sys/net/ipv4/ip_forward B.在每次機子啟動時加載IP轉發: i.在RedHat中如下修改 /etc/sysconfig/network FORWARD_IPV4=true ii.在其他版本中在 /etc/rc.d/rc.local 的結尾加入: echo "1" > proc/sys/net/ipv4/ip_forward C.確保你的rc.local文件中沒有如下內容: echo "1" > /proc/sys/net/ipv4/tcp_syncookies 2.現在設置路由。 把以下內容加入到 rc.local中,讓機子啟動時自動裝載。 A.在默認狀況下拒絕所有 ip 轉發。 /sbin/ipchains -P forward DENY B. 允許你的子網計算機 (10.0.0.2 和 10.0.0.3)使用ip轉發。 /sbin/ipchains -A forward -s 10.0.0.2/24 -j MASQ /sbin/ipchains -A forward -s 10.0.0.3/24 -j MASQ C.增加你需要的偽裝模塊。 /sbin/modprobe ip_masq_ftp /sbin/modprobe ip_masq_quake /sbin/modprobe ip_masq_irc /sbin/modprobe ip_masq_user /sbin/modprobe ip_masq_raudio ... -------------------------------------------------------------------------------- 只要按以上步驟,網絡應該能配置好。我遇到的一個問題是設置好了我的IP偽裝後,客戶機只能通過IP地址訪問互聯網,此時你應該在/etc/resolv.conf中設置好你的DNS,並且讓named守護程序運行,問題就解決。 好了,現在你的網絡就弄好了。如你想了解更多有關IP偽裝和防火牆的知識,參見HOWTO文檔: http://metalab.unc.edu/linux/HOWTO/HOWTO-INDEX-3.Html#ss3.1



... -------------------------------------------------------------------------------- 只要按以上步驟,網絡應該能配置好。我遇到的一個問題是設置好了我的IP偽裝後,客戶機只能通過IP地址訪問互聯網,此時你應該在/etc/resolv.conf中設置好你的DNS,並且讓named守護程序運行,問題就解決。 好了,現在你的網絡就弄好了。如你想了解更多有關IP偽裝和防火牆的知識,參見HOWTO文檔: http://metalab.unc.edu/linux/HOWTO/HOWTO-INDEX-3.html#ss3.1



Copyright © Linux教程網 All Rights Reserved