溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Iptables防火墻基本匹配條件是什么

發(fā)布時(shí)間:2022-08-10 16:41:56 來源:億速云 閱讀:143 作者:iii 欄目:開發(fā)技術(shù)

本篇內(nèi)容主要講解“Iptables防火墻基本匹配條件是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Iptables防火墻基本匹配條件是什么”吧!

引言

@[TOC] 應(yīng)用匹配條件時(shí),經(jīng)常會(huì)用到以下幾個(gè)參數(shù)。

  • -p:指定要操作的協(xié)議類型,不指定-p參數(shù)聲明是那種協(xié)議,默認(rèn)是all,也就是所有協(xié)議。

  • -s:指定源地址。

  • -d:指定目標(biāo)地址。

  • --sport:指定源端口.

  • --dport:指定目標(biāo)端口。

  • -i:指定從哪個(gè)網(wǎng)卡進(jìn)入的報(bào)文。

  • -o:指定從哪個(gè)網(wǎng)卡出去的報(bào)文。

  • -m

  • -j:指定策略的動(dòng)作。

基本匹配條件案例一

**需求:**

僅允許 192.168.20.21 訪問 192.168.20.20 的80端口,其余的來源客戶端都拒絕訪問。

明確需求后,下面來分析應(yīng)該如何實(shí)現(xiàn)。

這條需求分包含兩種不同的條件,首先是允許192.168.20.21訪問目標(biāo)端口,然后是拒絕其他所有的客戶端訪問。

  • 首先來思考允許的條件如何實(shí)現(xiàn):

1、允許某個(gè)來源訪問本機(jī)的特定服務(wù),這種訪問屬于數(shù)據(jù)的流入,那么就會(huì)經(jīng)過PREROUTING和INPUT兩個(gè)鏈,允許或者拒絕這些操作都是在filter表實(shí)現(xiàn)的,PREROUTING鏈沒有filter,因此首先就可以得出結(jié)論,這條規(guī)則會(huì)在INPUT鏈的filter表中進(jìn)行添加。

2、允許192.168.20.21這個(gè)地址,那么就需要指定來源的IP,然后根據(jù)來源IP的請(qǐng)求,還需要指定目標(biāo)端的地址。

3、限制來源地址僅訪問本機(jī)的某個(gè)服務(wù),那么就需要指定服務(wù)具體的協(xié)議以及端口號(hào)。

4、最后指定匹配完這些條件后,執(zhí)行的動(dòng)作,也就是ACCEPT。

  • 然后來思考拒絕的條件如何實(shí)現(xiàn):

1、首先明確拒絕其余來源訪問本機(jī)的某個(gè)服務(wù),那么一定是在INPUT鏈的filter表中添加具體的規(guī)則。

2、最后聲明拒絕其他的來源地址。

注意:由于不是全部拒絕,還有一個(gè)來源地址192.168.20.21是允許訪問TCP的80端口的,因此在寫入拒絕規(guī)則時(shí),不能在使用-I參數(shù)添加到表的最頂端,應(yīng)該通過-A參數(shù)添加到表的最后一行,追加進(jìn)去。

1)實(shí)現(xiàn)該需求的防火墻規(guī)則如下

1.允許192.168.20.21訪問192.168.20.20的80端口
[root@jxl-1 ~]# iptables -t filter -I INPUT -s 192.168.20.21 -d 192.168.20.20 -p tcp --dport 80 -j ACCEPT
2.拒絕其余來源IP訪問本機(jī)的80端口
[root@jxl-1 ~]# iptables -t filter -A INPUT -p tcp --dport 80 -j DROP

注意第二條拒絕所有的時(shí)候一定要使用-A參數(shù)追加到最后一行,否則所有的來源都將不可訪問。

2)查看設(shè)置的防火墻規(guī)則

INPUT鏈中一共有2條規(guī)則,第一條規(guī)則的動(dòng)作是允許,允許192.168.20.21訪問192.168.20.20的tcp 80端口,第二條規(guī)則的動(dòng)作是拒絕,拒絕全部IP訪問本機(jī)的80端口。

[root@jxl-1 ~]# iptables -L -n -v --line-number
Chain INPUT (policy ACCEPT 9483 packets, 17M bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1        0     0 ACCEPT     tcp  --  *      *       192.168.20.21        192.168.20.20        tcp dpt:80
2        0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:80
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
Chain OUTPUT (policy ACCEPT 9619 packets, 15M bytes)
num   pkts bytes target     prot opt in     out     source               destination

3)測(cè)試結(jié)果

只有來源地址為192.168.20.21的IP,才能訪問到192.168.20.20的TCP 80端口的服務(wù)。

Iptables防火墻基本匹配條件是什么

基本匹配條件案例二

**需求:**由本機(jī)發(fā)出的TCP協(xié)議的報(bào)文都允許,發(fā)出的其他協(xié)議報(bào)文都拒絕。

明確需求后,下面來分析應(yīng)該如何實(shí)現(xiàn),和案例一類似,分為兩種規(guī)則,一是允許某一個(gè)協(xié)議,二是拒絕其余所有的協(xié)議。

首先要明確在哪一個(gè)鏈的哪一個(gè)表中添加Iptables防火墻規(guī)則,看需求中的關(guān)鍵字“由本機(jī)發(fā)出”,由本機(jī)發(fā)出都需要經(jīng)過POSTROUTING和OUTPUT鏈,這種過濾規(guī)則一定會(huì)在OUPUT鏈進(jìn)行添加,引起POSTROUTING鏈沒有filter表。

明確完再哪一張表和哪一個(gè)鏈添加規(guī)則后,就非常容易了。

1)先來添加允許TCP協(xié)議報(bào)文流出的Iptables防火墻規(guī)則。

2)然后來添加拒絕剩余的其他報(bào)文,一定要將拒絕的規(guī)則添加在允許規(guī)則的下面,否則允許的規(guī)則將永不生效。

可以先將之前添加的規(guī)則清空,以免受到干擾。

[root@jxl-1 ~]# iptables -t filter -F

1)實(shí)現(xiàn)該需求的防火墻規(guī)則如下

1.允許本機(jī)的TCP協(xié)議報(bào)文流出
[root@jxl-1 ~]# iptables -t filter -I OUTPUT -p tcp -j ACCEPT
2.拒絕本機(jī)所有協(xié)議報(bào)文流出
[root@jxl-1 ~]# iptables -t filter -A OUTPUT -p all -j DROP

2)查看設(shè)置的防火墻規(guī)則

在OUTPUT鏈可以看到兩條規(guī)則,第一條規(guī)則允許TCP協(xié)議報(bào)文流出,第二條規(guī)則拒絕所有協(xié)議的報(bào)文流出。

[root@jxl-1 ~]# iptables -L -n -v --line-number
Chain INPUT (policy ACCEPT 5138 packets, 8863K bytes)
num   pkts bytes target     prot opt in     out     source               destination         
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1     6703   10M ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           
2        1    76 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0

3)測(cè)試結(jié)果

由于拒絕了除TCP協(xié)議以外的所有協(xié)議,因此再使用ICMP協(xié)議時(shí)就產(chǎn)生了拒絕的現(xiàn)象,但是使用TCP協(xié)議就沒有任何影響。

Iptables防火墻基本匹配條件是什么

基本匹配條件案例三

需求: 禁止其他主機(jī)從ens192發(fā)送來的ping請(qǐng)求。

首先來進(jìn)行分析,案例三就非常簡(jiǎn)單了,只有一種條件,那就是禁止其他的主機(jī)從本機(jī)的ens192網(wǎng)卡發(fā)送來的數(shù)據(jù)報(bào)文,從字面意思可以清楚的知道這是一條數(shù)據(jù)流入的規(guī)則。

那么一定是在INPUT鏈的filter表添加相應(yīng)的規(guī)則策略。

1)實(shí)現(xiàn)該需求的防火墻規(guī)則如下

[root@jxl-1 ~]# iptables -t filter -I INPUT -i ens192 -p icmp -j DROP

2)查看設(shè)置的防火墻規(guī)則

在INPUT鏈中已經(jīng)添加上了這條規(guī)則,凡是來自ens192網(wǎng)卡并且協(xié)議是icmp的報(bào)文都會(huì)被拒絕。

[root@jxl-1 ~]# iptables -L -n -v --line-number
Chain INPUT (policy ACCEPT 2680 packets, 4308K bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1        0     0 DROP       icmp --  ens192 *       0.0.0.0/0            0.0.0.0/0           
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
Chain OUTPUT (policy ACCEPT 2752 packets, 4004K bytes)
num   pkts bytes target     prot opt in     out     source               destination

3)測(cè)試結(jié)果

在其他主機(jī)ping防火墻主機(jī)的ens192網(wǎng)卡,發(fā)現(xiàn)不通,但是ens224網(wǎng)卡就通。

Iptables防火墻基本匹配條件是什么

拒絕所有協(xié)議進(jìn)入本機(jī)的規(guī)則配置

iptables -t filter INPUT -j DROP

--dport參數(shù)聲明多個(gè)連續(xù)的端口號(hào)

--dport 20:22
表示20-22三個(gè)端口都可以進(jìn)行匹配。

到此,相信大家對(duì)“Iptables防火墻基本匹配條件是什么”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI