Linux安全性和netfilter/iptables
Linux 因其健壯性、可靠性、靈活性以及好象無限范圍的可定制性而在 IT 業(yè)界變得非常受歡迎。Linux 具有許多內(nèi)置的能力,使開發(fā)人員可以根據(jù)自己的需要定制其工具、行為和外觀,而無需昂貴的第三方工具。如果 Linux 系統(tǒng)連接到因特網(wǎng)或 LAN、服務(wù)器或連接 LAN 和因特網(wǎng)的代理服務(wù)器,所要用到的一種內(nèi)置能力就是針對(duì)網(wǎng)絡(luò)上 Linux 系統(tǒng)的防火墻配置。可以在 netfilter/iptables IP 信息包過濾系統(tǒng)(它集成在 2.4.x 版本的 Linux 內(nèi)核中)的幫助下運(yùn)用這種能力。
在如 ipfwadm和 ipchains 這樣的 Linux 信息包過濾解決方案中,netfilter/iptables IP 信息包過濾系統(tǒng)是***的解決方案,而且也是***個(gè)集成到 Linux 內(nèi)核的解決方案。對(duì)于 Linux 系統(tǒng)管理員、網(wǎng)絡(luò)管理員以及家庭用戶(他們想要根據(jù)自己特定的需求來配置防火墻、在防火墻解決方案上節(jié)省費(fèi)用和對(duì) IP 信息包過濾具有完全控制權(quán))來說,netfilter/iptables 系統(tǒng)十分理想。
下載鏈接:http://down.51cto.com/data/148129
>>去網(wǎng)絡(luò)安全工具百寶箱看看其它安全工具
理解防火墻配置和信息包過濾
對(duì)于連接到網(wǎng)絡(luò)上的 Linux 系統(tǒng)來說,防火墻是必不可少的防御機(jī)制,它只允許合法的網(wǎng)絡(luò)流量進(jìn)出系統(tǒng),而禁止其它任何網(wǎng)絡(luò)流量。為了確定網(wǎng)絡(luò)流量是否合法,防火墻依靠它所包含的由網(wǎng)絡(luò)或系統(tǒng)管理員預(yù)定義的一組 規(guī)則。這些規(guī)則告訴防火墻某個(gè)流量是否合法以及對(duì)于來自某個(gè)源、至某個(gè)目的地或具有某種協(xié)議類型的網(wǎng)絡(luò)流量要做些什么。術(shù)語(yǔ)“配置防火墻”是指添加、修改和除去這些規(guī)則。稍后,我將詳細(xì)討論這些 規(guī)則。
網(wǎng)絡(luò)流量由 IP 信息包(或,簡(jiǎn)稱 信息包)— 以流的形式從源系統(tǒng)傳輸?shù)侥康牡叵到y(tǒng)的一些小塊數(shù)據(jù) — 組成。這些信息包有 頭,即在每個(gè)包前面所附帶的一些數(shù)據(jù)位,它們包含有關(guān)信息包的源、目的地和協(xié)議類型的信息。防火墻根據(jù)一組規(guī)則檢查這些頭,以確定接受哪個(gè)信息包以及拒絕哪個(gè)信息包。我們將該過程稱為 信息包過濾。
為什么要配置自己的防火墻?
出于各種因素和原因,需要根據(jù)特定需求來配置防火墻。或許,最重要的原因是安全性。
管理員可能想讓他們的防火墻能夠阻止未經(jīng)授權(quán)的源訪問其 Linux 系統(tǒng),例如通過 Telnet。他們可能還想限制進(jìn)出其系統(tǒng)的網(wǎng)絡(luò)流量,以便只有來自可信源的流量才可以進(jìn)入其系統(tǒng),以及只有授權(quán)的流量才可以出去。家庭用戶可能通過允許所有的出站信息包都可以通過,將防火墻配置成較低的安全性級(jí)別。
另一個(gè)背后的原因是,通過阻塞來自類似廣告站點(diǎn)之類的源的多余流量,可以節(jié)省帶寬。
因而,可以定制防火墻配置來滿足任何特定需求和任何安全性級(jí)別需求。這就是 netfilter/iptables 系統(tǒng)的用武之處。#p#
netfilter/iptables 系統(tǒng)是如何工作的?
netfilter/iptables IP 信息包過濾系統(tǒng)是一種功能強(qiáng)大的工具,可用于添加、編輯和除去規(guī)則,這些規(guī)則是在做信息包過濾決定時(shí),防火墻所遵循和組成的規(guī)則。這些規(guī)則存儲(chǔ)在專用的信息包過濾表中,而這些表集成在 Linux 內(nèi)核中。在信息包過濾表中,規(guī)則被分組放在我們所謂的 鏈(chain)中。我馬上會(huì)詳細(xì)討論這些規(guī)則以及如何建立這些規(guī)則并將它們分組在鏈中。
雖然 netfilter/iptables IP 信息包過濾系統(tǒng)被稱為單個(gè)實(shí)體,但它實(shí)際上由兩個(gè)組件 netfilter和 iptables 組成。
netfilter 組件也稱為 內(nèi)核空間(kernelspace),是內(nèi)核的一部分,由一些信息包過濾表組成,這些表包含內(nèi)核用來控制信息包過濾處理的規(guī)則集。
iptables 組件是一種工具,也稱為 用戶空間(userspace),它使插入、修改和除去信息包過濾表中的規(guī)則變得容易。除非您正在使用 Red Hat Linux 7.1 或更高版本,否則需要從 netfilter.org 下載該工具并安裝使用它。
通過使用用戶空間,可以構(gòu)建自己的定制規(guī)則,這些規(guī)則存儲(chǔ)在內(nèi)核空間的信息包過濾表中。這些規(guī)則具有 目標(biāo),它們告訴內(nèi)核對(duì)來自某些源、前往某些目的地或具有某些協(xié)議類型的信息包做些什么。如果某個(gè)信息包與規(guī)則匹配,那么使用目標(biāo) ACCEPT 允許該信息包通過。還可以使用目標(biāo) DROP 或 REJECT 來阻塞并殺死信息包。對(duì)于可對(duì)信息包執(zhí)行的其它操作,還有許多其它目標(biāo)。
根據(jù)規(guī)則所處理的信息包的類型,可以將規(guī)則分組在鏈中。處理入站信息包的規(guī)則被添加到 INPUT 鏈中。處理出站信息包的規(guī)則被添加到 OUTPUT 鏈中。處理正在轉(zhuǎn)發(fā)的信息包的規(guī)則被添加到 FORWARD 鏈中。這三個(gè)鏈?zhǔn)腔拘畔^濾表中內(nèi)置的缺省主鏈。另外,還有其它許多可用的鏈的類型(如 PREROUTING 和 POSTROUTING ),以及提供用戶定義的鏈。每個(gè)鏈都可以有一個(gè) 策略,它定義“缺省目標(biāo)”,也就是要執(zhí)行的缺省操作,當(dāng)信息包與鏈中的任何規(guī)則都不匹配時(shí),執(zhí)行此操作。
建立規(guī)則并將鏈放在適當(dāng)?shù)奈恢弥螅涂梢蚤_始進(jìn)行真正的信息包過濾工作了。這時(shí)內(nèi)核空間從用戶空間接管工作。當(dāng)信息包到達(dá)防火墻時(shí),內(nèi)核先檢查信息包的頭信息,尤其是信息包的目的地。我們將這個(gè)過程稱為 路由。
如果信息包源自外界并前往系統(tǒng),而且防火墻是打開的,那么內(nèi)核將它傳遞到內(nèi)核空間信息包過濾表的 INPUT 鏈。如果信息包源自系統(tǒng)內(nèi)部或系統(tǒng)所連接的內(nèi)部網(wǎng)上的其它源,并且此信息包要前往另一個(gè)外部系統(tǒng),那么信息包被傳遞到 OUTPUT 鏈。類似的,源自外部系統(tǒng)并前往外部系統(tǒng)的信息包被傳遞到 FORWARD 鏈。
接下來,將信息包的頭信息與它所傳遞到的鏈中的每條規(guī)則進(jìn)行比較,看它是否與某條規(guī)則完全匹配。如果信息包與某條規(guī)則匹配,那么內(nèi)核就對(duì)該信息包執(zhí)行由該規(guī)則的目標(biāo)指定的操作。但是,如果信息包與這條規(guī)則不匹配,那么它將與鏈中的下一條規(guī)則進(jìn)行比較。***,如果信息包與鏈中的任何規(guī)則都不匹配,那么內(nèi)核將參考該鏈的策略來決定如何處理該信息包。理想的策略應(yīng)該告訴內(nèi)核 DROP 該信息包。 圖 1 用圖形說明了這個(gè)信息包過濾過程。
圖 1. 信息包過濾過程#p#
安裝 netfilter/iptables 系統(tǒng)
因?yàn)?netfilter/iptables 的 netfilter 組件是與內(nèi)核 2.4.x 集成在一起的,所以只需要下載并安裝 iptables 用戶空間工具。
需求
下面是安裝 netfilter/iptables 系統(tǒng)的需求:
硬件:要使用 netfilter/iptables,需要有一個(gè)運(yùn)行 Linux OS 并連接到因特網(wǎng)、LAN 或 WAN 的系統(tǒng)。
軟件:帶有內(nèi)核 2.4 或更高版本的任何版本的 Linux OS。可以從 http://www.kernel.org 下載***版本的內(nèi)核。還需要從 http://www.netfilter.org 下載 iptables 這個(gè)用戶空間工具,因?yàn)檫@個(gè)工具不是內(nèi)核的一部分。但對(duì)于 RedHat Linux 版本 7.1 或更高版本,不需要下載此工具,因?yàn)樵诎姹?7.1 或更高版本中,標(biāo)準(zhǔn)安裝中已經(jīng)包含了此工具。
用戶:至少對(duì) Linux OS 有中等水平的了解,以及具備配置 Linux 內(nèi)核的經(jīng)驗(yàn)。
安裝前的準(zhǔn)備
在開始安裝 iptables 用戶空間工具之前,需要對(duì)系統(tǒng)做某些修改。首先,需要使用 make config 命令來配置內(nèi)核的選項(xiàng)。在配置期間,必須通過將 CONFIG_NETFILTER 和 CONFIG_IP_NF_IPTABLES 選項(xiàng)設(shè)置為 Y 來打開它們,因?yàn)檫@是使 netfilter/iptables 工作所必需的。下面是可能要打開的其它選項(xiàng):
CONFIG_PACKET : 如果要使應(yīng)用程序和程序直接使用某些網(wǎng)絡(luò)設(shè)備,那么這個(gè)選項(xiàng)是有用的。
CONFIG_IP_NF_MATCH_STATE : 如果要配置 有狀態(tài)的防火墻,那么這個(gè)選項(xiàng)非常重要而且很有用。這類防火墻會(huì)記得先前關(guān)于信息包過濾所做的決定,并根據(jù)它們做出新的決定。我將在 netfilter/iptables 系統(tǒng)的優(yōu)點(diǎn)一節(jié)中進(jìn)一步討論這方面的問題。
CONFIG_IP_NF_FILTER : 這個(gè)選項(xiàng)提供一個(gè)基本的信息包過濾框架。如果打開這個(gè)選項(xiàng),則會(huì)將一個(gè)基本過濾表(帶有內(nèi)置的 INPUT 、 FORWARD 和 OUTPUT 鏈)添加到內(nèi)核空間。
CONFIG_IP_NF_TARGET_REJECT : 這個(gè)選項(xiàng)允許指定:應(yīng)該發(fā)送 ICMP 錯(cuò)誤消息來響應(yīng)已被 DROP 掉的入站信息包,而不是簡(jiǎn)單地殺死它們。
現(xiàn)在,可以準(zhǔn)備安裝這個(gè)用戶空間工具了。#p#
安裝用戶空間工具
在下載 iptables 用戶空間工具的源代碼(它類似于 iptables-1.2.6a.tar.bz2)之后,可以開始安裝。您需要以 root 身份登錄來執(zhí)行安裝。 清單 1 給出了一個(gè)示例,它指出了安裝該工具所需的命令、其必要的次序及其說明。
清單 1. 用戶空間工具安裝的示例
- First, unpack the tool package into a directory:
- # bzip2 -d iptables-1.2.6a.tar.bz2
- # tar -xvf iptables-1.2.6a.tar
- This will unpack the tool source into a directory named iptables-1.2.6a.
- Now change to the iptables-1.2.6a directory:
- # cd iptables-1.2.6a
- The INSTALL file in this directory contains a lot of useful information
- on compiling and installing this tool.
- Now compile the userspace tool using the following command:
- # make KERNEL_DIR=/usr/src/linux/
- Here the KERNEL_DIR=/usr/src/linux/ specifies the path to the kernel's
- directory. If the directory of kernel happens to be different on some
- systems, the appropriate directory path should be substituted for
- /usr/src/linux.
- Now install the source binaries using the following command:
- # make install KERNEL_DIR=/usr/src/linux/
- Now the installation is complete.
注:如果您有 RedHat Linux 版本 7.1 或更高版本,就不需要執(zhí)行這里說明的前兩個(gè)步驟。正如我們所知道的,該 Linux 分發(fā)版(distribution)的標(biāo)準(zhǔn)安裝中包含了 iptables 用戶空間工具。但在缺省情況下,這個(gè)工具是關(guān)閉的。為了使該工具運(yùn)行,需要執(zhí)行以下步驟( 清單 2):
清單 2. 在 RedHat 7.1 系統(tǒng)上設(shè)置用戶空間工具的示例
- First you'll have to turn off the old ipchains module (predecessor of
- iptables) available in this OS package.
- This can be done using the following command:
- # chkconfig --level 0123456 ipchains off
- Next, to completely stop the ipchains module from running, so that it
- doesn't conflict with the iptables tool, you will have to stop the ipchains
- service using the following command:
- # service ipchains stop
- Now if you don't want to keep this old ipchains module on your system,
- uninstall it using the following command:
- # rpm -e ipchains
- Now you can turn on the iptables userspace tool with the following command:
- # chkconfig --level 235 iptables on
- Finally, you'll have to activate the iptables service to make the userspace
- tool work by using this command:
- # service iptables start
- Now the userspace tool is ready to work on a RedHat 7.1 or higher system.
現(xiàn)在,一切都已妥當(dāng),并且 netfilter/iptables 系統(tǒng)應(yīng)該正在運(yùn)行,接下來,需要建立一些規(guī)則和鏈來過濾信息包。#p#
建立規(guī)則和鏈
通過向防火墻提供有關(guān)對(duì)來自某個(gè)源、到某個(gè)目的地或具有特定協(xié)議類型的信息包要做些什么的指令,規(guī)則控制信息包的過濾。通過使用 netfilter/iptables 系統(tǒng)提供的特殊命令 iptables ,建立這些規(guī)則,并將其添加到內(nèi)核空間的特定信息包過濾表內(nèi)的鏈中。關(guān)于添加/除去/編輯規(guī)則的命令的一般語(yǔ)法如下:
$ iptables [-t table] command [match] [target]
表(table)
[-t table] 選項(xiàng)允許使用標(biāo)準(zhǔn)表之外的任何表。表是包含僅處理特定類型信息包的規(guī)則和鏈的信息包過濾表。有三種可用的表選項(xiàng): filter 、 nat 和 mangle 。該選項(xiàng)不是必需的,如果未指定,則 filter 用作缺省表。
filter 表用于一般的信息包過濾,它包含 INPUT 、 OUTPUT 和 FORWARD 鏈。nat 表用于要轉(zhuǎn)發(fā)的信息包,它包含 PREROUTING 、 OUTPUT 和 POSTROUTING 鏈。如果信息包及其頭內(nèi)進(jìn)行了任何更改,則使用 mangle 表。該表包含一些規(guī)則來標(biāo)記用于高級(jí)路由的信息包,該表包含 PREROUTING 和 OUTPUT 鏈。
注: PREROUTING 鏈由指定信息包一到達(dá)防火墻就改變它們的規(guī)則所組成,而 POSTROUTING 鏈由指定正當(dāng)信息包打算離開防火墻時(shí)改變它們的規(guī)則所組成。
命令(command)
上面這條命令中具有強(qiáng)制性的 command 部分是 iptables 命令的最重要部分。它告訴 iptables 命令要做什么,例如,插入規(guī)則、將規(guī)則添加到鏈的末尾或刪除規(guī)則。以下是最常用的一些命令:
-A 或 --append : 該命令將一條規(guī)則附加到鏈的末尾。
示例:
$ iptables -A INPUT -s 205.168.0.1 -j ACCEPT
該示例命令將一條規(guī)則附加到 INPUT 鏈的末尾,確定來自源地址 205.168.0.1 的信息包可以 ACCEPT 。
-D 或 --delete : 通過用 -D 指定要匹配的規(guī)則或者指定規(guī)則在鏈中的位置編號(hào),該命令從鏈中刪除該規(guī)則。下面的示例顯示了這兩種方法。
示例:
$ iptables -D INPUT --dport 80 -j DROP
$ iptables -D OUTPUT 3
***條命令從 INPUT 鏈刪除規(guī)則,它指定 DROP 前往端口 80 的信息包。第二條命令只是從 OUTPUT 鏈刪除編號(hào)為 3 的規(guī)則。
-P 或 --policy : 該命令設(shè)置鏈的缺省目標(biāo),即策略。所有與鏈中任何規(guī)則都不匹配的信息包都將被強(qiáng)制使用此鏈的策略。
示例:
$ iptables -P INPUT DROP
該命令將 INPUT 鏈的缺省目標(biāo)指定為 DROP 。這意味著,將丟棄所有與 INPUT 鏈中任何規(guī)則都不匹配的信息包。
-N 或 --new-chain : 用命令中所指定的名稱創(chuàng)建一個(gè)新鏈。
示例:
$ iptables -N allowed-chain
-F 或 --flush : 如果指定鏈名,該命令刪除鏈中的所有規(guī)則,如果未指定鏈名,該命令刪除所有鏈中的所有規(guī)則。此參數(shù)用于快速清除。
示例:
$ iptables -F FORWARD
$ iptables -F
-L 或 --list : 列出指定鏈中的所有規(guī)則。
示例:
$ iptables -L allowed-chain#p#
匹配(match)
iptables 命令的可選 match 部分指定信息包與規(guī)則匹配所應(yīng)具有的特征(如源和目的地地址、協(xié)議等)。匹配分為兩大類: 通用匹配和 特定于協(xié)議的匹配。這里,我將研究可用于采用任何協(xié)議的信息包的通用匹配。下面是一些重要的且常用的通用匹配及其示例和說明:
-p 或 --protocol : 該通用協(xié)議匹配用于檢查某些特定協(xié)議。協(xié)議示例有 TCP 、 UDP 、 ICMP 、用逗號(hào)分隔的任何這三種協(xié)議的組合列表以及 ALL (用于所有協(xié)議)。 ALL 是缺省匹配。可以使用 ! 符號(hào),它表示不與該項(xiàng)匹配。
示例:
$ iptables -A INPUT -p TCP, UDP
$ iptables -A INPUT -p ! ICMP
在上述示例中,這兩條命令都執(zhí)行同一任務(wù) — 它們指定所有 TCP 和 UDP 信息包都將與該規(guī)則匹配。通過指定 ! ICMP ,我們打算允許所有其它協(xié)議(在這種情況下是 TCP 和 UDP ),而將 ICMP 排除在外。
-s 或 --source : 該源匹配用于根據(jù)信息包的源 IP 地址來與它們匹配。該匹配還允許對(duì)某一范圍內(nèi)的 IP 地址進(jìn)行匹配,可以使用 ! 符號(hào),表示不與該項(xiàng)匹配。缺省源匹配與所有 IP 地址匹配。
示例:
$ iptables -A OUTPUT -s 192.168.1.1
$ iptables -A OUTPUT -s 192.168.0.0/24
$ iptables -A OUTPUT -s ! 203.16.1.89
第二條命令指定該規(guī)則與所有來自 192.168.0.0 到 192.168.0.24 的 IP 地址范圍的信息包匹配。第三條命令指定該規(guī)則將與除來自源地址 203.16.1.89 外的任何信息包匹配。
-d 或 --destination : 該目的地匹配用于根據(jù)信息包的目的地 IP 地址來與它們匹配。該匹配還允許對(duì)某一范圍內(nèi) IP 地址進(jìn)行匹配,可以使用 ! 符號(hào),表示不與該項(xiàng)匹配。
示例:
$ iptables -A INPUT -d 192.168.1.1
$ iptables -A INPUT -d 192.168.0.0/24
$ iptables -A OUTPUT -d ! 203.16.1.89#p#
目標(biāo)(target)
我們已經(jīng)知道,目標(biāo)是由規(guī)則指定的操作,對(duì)與那些規(guī)則匹配的信息包執(zhí)行這些操作。除了允許用戶定義的目標(biāo)之外,還有許多可用的目標(biāo)選項(xiàng)。下面是常用的一些目標(biāo)及其示例和說明:
ACCEPT : 當(dāng)信息包與具有 ACCEPT 目標(biāo)的規(guī)則完全匹配時(shí),會(huì)被接受(允許它前往目的地),并且它將停止遍歷鏈(雖然該信息包可能遍歷另一個(gè)表中的其它鏈,并且有可能在那里被丟棄)。該目標(biāo)被指定為 -j ACCEPT 。
DROP : 當(dāng)信息包與具有 DROP 目標(biāo)的規(guī)則完全匹配時(shí),會(huì)阻塞該信息包,并且不對(duì)它做進(jìn)一步處理。該目標(biāo)被指定為 -j DROP 。
REJECT : 該目標(biāo)的工作方式與 DROP 目標(biāo)相同,但它比 DROP 好。和 DROP 不同, REJECT 不會(huì)在服務(wù)器和客戶機(jī)上留下死套接字。另外, REJECT 將錯(cuò)誤消息發(fā)回給信息包的發(fā)送方。該目標(biāo)被指定為 -j REJECT 。
示例:
$ iptables -A FORWARD -p TCP --dport 22 -j REJECT
RETURN : 在規(guī)則中設(shè)置的 RETURN 目標(biāo)讓與該規(guī)則匹配的信息包停止遍歷包含該規(guī)則的鏈。如果鏈?zhǔn)侨?INPUT 之類的主鏈,則使用該鏈的缺省策略處理信息包。它被指定為 -jump RETURN 。示例:
$ iptables -A FORWARD -d 203.16.1.89 -jump RETURN
還有許多用于建立高級(jí)規(guī)則的其它目標(biāo),如 LOG 、 REDIRECT 、 MARK 、 MIRROR 和 MASQUERADE 等。
保存規(guī)則
現(xiàn)在,您已經(jīng)學(xué)習(xí)了如何建立基本的規(guī)則和鏈以及如何從信息包過濾表中添加或刪除它們。但是,您應(yīng)該記住:用上述方法所建立的規(guī)則會(huì)被保存到內(nèi)核中,當(dāng)重新引導(dǎo)系統(tǒng)時(shí),會(huì)丟失這些規(guī)則。所以,如果您將沒有錯(cuò)誤的且有效的規(guī)則集添加到信息包過濾表,同時(shí)希望在重新引導(dǎo)之后再次使用這些規(guī)則,那么必須將該規(guī)則集保存在文件中。可以使用 iptables-save命令來做到這一點(diǎn):
$ iptables-save > iptables-script
現(xiàn)在,信息包過濾表中的所有規(guī)則都被保存在文件 iptables-script 中。無論何時(shí)再次引導(dǎo)系統(tǒng),都可以使用 iptables-restore命令將規(guī)則集從該腳本文件恢復(fù)到信息包過濾表,如下所示:
$ iptables-restore iptables-script
如果您愿意在每次引導(dǎo)系統(tǒng)時(shí)自動(dòng)恢復(fù)該規(guī)則集,則可以將上面指定的這條命令放到任何一個(gè)初始化 shell 腳本中。#p#
netfilter/iptables 系統(tǒng)的優(yōu)點(diǎn)
netfilter/iptables 的***優(yōu)點(diǎn)是它可以配置有狀態(tài)的防火墻,這是 ipfwadm 和 ipchains 等以前的工具都無法提供的一種重要功能。有狀態(tài)的防火墻能夠指定并記住為發(fā)送或接收信息包所建立的連接的狀態(tài)。防火墻可以從信息包的連接跟蹤狀態(tài)獲得該信息。在決定新的信息包過濾時(shí),防火墻所使用的這些狀態(tài)信息可以增加其效率和速度。這里有四種有效狀態(tài),名稱分別為 ESTABLISHED 、 INVALID 、 NEW 和 RELATED 。
狀態(tài) ESTABLISHED 指出該信息包屬于已建立的連接,該連接一直用于發(fā)送和接收信息包并且完全有效。 INVALID 狀態(tài)指出該信息包與任何已知的流或連接都不相關(guān)聯(lián),它可能包含錯(cuò)誤的數(shù)據(jù)或頭。狀態(tài) NEW 意味著該信息包已經(jīng)或?qū)?dòng)新的連接,或者它與尚未用于發(fā)送和接收信息包的連接相關(guān)聯(lián)。***, RELATED 表示該信息包正在啟動(dòng)新連接,以及它與已建立的連接相關(guān)聯(lián)。
netfilter/iptables 的另一個(gè)重要優(yōu)點(diǎn)是,它使用戶可以完全控制防火墻配置和信息包過濾。您可以定制自己的規(guī)則來滿足您的特定需求,從而只允許您想要的網(wǎng)絡(luò)流量進(jìn)入系統(tǒng)。
另外,netfilter/iptables 是免費(fèi)的,這對(duì)于那些想要節(jié)省費(fèi)用的人來說十分理想,它可以代替昂貴的防火墻解決方案。
結(jié)束語(yǔ)
***的 Linux 內(nèi)核 2.4.x 具有 netfilter/iptables 系統(tǒng)這種內(nèi)置的 IP 信息包過濾工具,它使配置防火墻和信息包過濾變得便宜且方便。netfilter/iptables 系統(tǒng)使其用戶可以完全控制防火墻配置和信息包過濾。它允許為防火墻建立可定制化的規(guī)則來控制信息包過濾。它還允許配置有狀態(tài)的防火墻。