iptables在Red Hat上的安裝
iptables在Red Hat上的安裝:
Red Hat 7.1使用2.4.x的內(nèi)核,支持Netfilter和iptables。Red Hat包含了所有基本的程序和需要的配置文件,但缺省使用的是B class=COMMAND>ipchains。“iptables為什么不能用”是最常見的問題,下面就讓我們就來說說如何關(guān)閉ipchains而起用iptables 。
Red Hat 7.1預(yù)裝的iptables版本有些老了,在使用之前,你可能想裝個新的,再自己編譯一下內(nèi)核。
我們先要關(guān)閉ipchains,并且不想再讓它運行起來,做到這一點,要更改目錄/etc/rc.d/下的一些文件名。用以下命令完成:
- chkconfig --level 0123456 ipchains off
這個命令把所有指向/etc/rc.d/init.d/ipchains的軟連接改名為 K92ipchains。以S開頭表示,在啟動時會由初始化腳本運行此腳本。改為K開頭后,就表示終止服務(wù),或以后在啟動時不再運行。這樣,ipchains以后不會再開機就運行了。
要想終止正在運行的服務(wù),要用service命令。終止ipchains 服務(wù)的命令是:
- service ipchains stop
現(xiàn)在,我們可以啟動iptables服務(wù)了。首先,要確定在哪個運行層運行,一般是 2,3和5,這些層有不同的用處:
2. 不帶NFS的多用戶環(huán)境,和層3的區(qū)別僅在于不帶網(wǎng)絡(luò)支持。
3. 多用戶環(huán)境,就是我們一般事用的層。
5. X11,圖形界面。
用下面的命令以使iptables能在這些層運行:
- chkconfig --level 235 iptables on
你也可以使用這個命令使iptables能在其他層運行。但沒這個必要,因為層1是單用戶模式,一般用在維修上;層4保留不用;層6用來關(guān)閉計算機。
啟動iptables用:
- service iptables start
在腳本iptables里還沒有定義規(guī)則。在Red Hat 7.1中添加規(guī)則的方法有二:***個方法是編輯/etc/rc.d/init.d/iptables,要注意在用RPM升級iptables時,已有的規(guī)則可能會被刪除。另一個方法是先裝載規(guī)則,然后用命令iptables-save把規(guī)則保存到文件中,再由目錄rc.d下的腳本(/etc/rc.d/init.d/iptables)自動裝載。
我們先來說明如何利用“剪切粘貼大法”設(shè)置/etc/rc.d/init.d/iptables。為了能在計算機啟動iptables時裝載規(guī)則,可以把規(guī)則放在“start)”節(jié)或函數(shù)start()中。注意:如果把規(guī)則放在“start)”節(jié)里,則不要在“start)”節(jié)里運行start(),還要編輯“stop)”節(jié),以便在關(guān)機時或進入一個不需要iptables的層時,腳本知道如何處理。還應(yīng)檢查“restart”節(jié)和“condrestart”節(jié)的設(shè)置。一定要注意,我們所做的改動在升級iptables時可能會被刪除,而不管是通過Red Hat網(wǎng)絡(luò)自動升級還是用 RPM升級。
下面介紹第二種方法:先寫一個規(guī)則的腳本,或直接用iptables命令生成規(guī)則。規(guī)則要適合自己的需要,別忘了實驗一下是否有問題,確認正常之后,使用命令iptables-save來保存規(guī)則。一般用iptables-save > /etc/sysconfig/iptables生成保存規(guī)則的文件 /etc/sysconfig/iptables,也可以用service iptables save,它能把規(guī)則自動保存在/etc/sysconfig/iptables中。當計算機啟動時,rc.d下的腳本將用命令iptables-restore調(diào)用這個文件,從而就自動恢復(fù)了規(guī)則。
以上兩種方法***不要混用,以免用不同方法定義的規(guī)則互相影響,甚至使防火墻的設(shè)置無效。
至此,可以刪除預(yù)裝的ipchains和iptables了,這樣可以避免新舊版本的iptables之間的沖突。其實,只有當你從原碼安裝時,才需要這樣做。但一般來說,也不會出現(xiàn)互相影響的問題,因為基于rpm的包不使用原碼的缺省目錄。刪除用以下命令:
- rpm -e iptables
既然不用ipchains為什么要保留呢?刪吧!命令如下:
- rpm -e ipchains
歷經(jīng)磨難,勝利終于到來了。你已經(jīng)能夠從源碼在RED HAT下安裝iptables了。
【編輯推薦】