隨心訂制linux透明防火墻
好了,既然透明防火墻有那么多方便,我們趕快動手來配置吧!準備一臺pc機,兩塊網卡(建議用3com網卡),網線若干,redhat linux 9安裝盤一套。打開機箱,把兩塊網卡插入計算機的pci插槽,用網線把計算機分別與網關和交換機相連(如前頁圖“正常狀態”那樣);蓋上計算機的蓋子,插上電源,開機。在光驅里放上Linux 9安裝光盤,由光盤引導計算機,從而安裝Linux 系統。選擇定制安裝,不要保守,多花一點時間體驗一下圖形界面的安裝樂趣,取消防火墻(no firewall),在安裝快結束時選擇以文本方式登錄系統,完成安裝。
透明防火墻功能配置:
1、設置網絡地址。修改文件 /etc/sysconfig/network-scripts/ifcfg-eth0 和 /etc/sysconfig/network-scripts/ifcfg-eth1,使其具有相同的ip地址,相同的子網掩碼。
用vi 來編輯如下,保存文件,運行命令 service network restart 使修改生效。
DEVICE=eth0
BOOTPROTO=none
BROADCAST=192.168.1.255
IPADDR=192.168.1.254
NETMASK=255.255.255.0
NETWORK=192.168.1.0
ONBOOT=yes
USERCTL=no
PEERDNS=no
TYPE=Ethernet DEVICE=eth1
BOOTPROTO=none
BROADCAST=192.168.1.255
IPADDR=192.168.1.254
NETMASK=255.255.255.0
NETWORK=192.168.1.0
ONBOOT=yes
USERCTL=no
PEERDNS=no
TYPE=Ethernet
這里需要注意兩個地方,第一個是要區分清楚那一個網卡是eth0,那一個是 eth1.這個問題十分關鍵,如果搞混了就會導致防火墻不能連通網絡。至于怎樣區分eth0和 eth1,我將在文章的末尾作簡單的描述。在這里假定與路由器相連的網卡是eth0.
2、設置默認路由。在文件 /etc/sysconfig/network-scripts/ifcfg-eth0 中加入一行 gateway=192.168.1.1 保存后運行命令 service network restart ,修改生效。找一個開放ICMP協議的公網IP,用命令ping 202.108.36.196 (www.163.com 的主機)檢測跟外網的連通狀況,如果正常,表明Linux防火墻主機跟外網配置正確。再用命令ping 192.168.1.18 檢測防火墻主機與內網主機的連通狀況,如果正常則進行下一步操作。
3、啟用網絡轉發和proxy_arp 。這是透明防火墻的核心部分,我把它們寫進文件/etc/rc.d/rc.local。用vi /etc/rc.d/rc.local 插入如下內容。
#Ip forward
/sbin/sysctl -w net.ipv4.conf.all.forwarding=1
#Enable proxy-arp
/sbin/sysctl -w net.ipv4.conf.eth0.proxy_arp=1
/sbin/sysctl -w net.ipv4.conf.eth1.proxy_arp=1
在做這一步的時候,我曾經花費較多的時間,因為我做參考的那本書里的這一步沒有參數 “–w” ,后來單獨運行 sysctl net.ipv4.conf.eth0.proxy_arp=1 才發現red hat Linux 9 沒有參數“-w”不能運行。
4、 指定路由。由于兩塊網卡(eth0,eth1)使用同樣的ip ,如果不專門指定轉發路徑,一定會導致路由混亂,從而使防火墻以內的計算機沒法訪問 Internet 。還是用命令 vi 修改文件 /etc/rc.d/rc.local ,插入如下幾行。
#Define route
/sbin/ip route del 192.168.1.0/24 dev eth0
/sbin/ip route add 192.168.1.1 dev eth0
/sbin/ip route add 192.168.1.0/24 dev eth1
保存文件,重新啟動計算機/Linux防火墻,如果不出意外,就可以從192.168.1.18 這臺主機訪問Internet,當然內網的任何機器都是可以訪問Internet 的。在這里對定義的路由(Define route)作些說明:/sbin/ip route del 192.168.1.0/24 dev eth0 表明所有到子網192.168.1.0/24的數據包都不從網卡eth0轉發而從 eth1轉發,即命令 /sbin/ip route add 192.168.1.0/24 dev eth1;/sbin/ip route add 192.168.1.1 dev eth0 表明所有到192.168.1.1的數
新文章:
- CentOS7下圖形配置網絡的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統后丟失windows啟動項
- CentOS單網卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網打印機IP講解
- CentOS7使用hostapd實現無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網絡重啟出錯
- 解決Centos7雙系統后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統有什么不同呢
- Centos 6.6默認iptable規則詳解