91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux系統iptables命令該怎樣使用

發布時間:2022-01-26 11:42:52 來源:億速云 閱讀:121 作者:柒染 欄目:開發技術

Linux系統iptables命令該怎樣使用,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

很多人以為iptables就是防護墻,其實iptables是一個命令行工具,其背后的netfilter才是防火墻,我們只是用iptables操作防火墻。

iptables -A INPUT -s 192.168.109.10 -j DROP:拒絕192.168.109.10主機訪問本服務器

注意:-A:添加一條規則,默認是加在最后。

注意:“拒絕給192.168.109.10主機提供服務”,最好使用INPUT鏈。使用PREROUTING,也可以滿足要求,但是如果用戶的要求是讓服務器提供轉發功能,添加到PREROUTING鏈中,”轉發”功能也將被拒絕掉。

注意:鏈名要大寫;

注意:-s:指定源地址,可以是IP地址,也可以是網段”192.168.109.10/24″;”-s 為空”,表示拒絕所有;

注意:-j:指定所需要的操作;

注意:拒絕有兩種方式,一種是”REJECT”,還有一種是”DROP”;DROP是不回應,REJECT是拒絕;

注意:iptables -A INPUT -j DROP,表示拒絕所有。不過加規則的時候,不要將自己的ssh給拒絕掉。

Linux系統iptables命令該怎樣使用

iptables -nvL -t mangle:查看mangle表中的防火墻規則;

注意:-t:指定表名,默認情況下是”fliter”表;

注意:-v:查看詳細信息;

pkts:被本機報文所匹配的個數;

prot:放行哪種協議;

opt:額外的選項,–表示沒有;

target:處理機制;

注意:選項中”v”和”L”的順序(V只能在L的前面);

iptables -nvL –line-numbers:查看fliter表中規則的順序;

注意:–line-numbers:查看指定表中的規則的順序;

注意:不指定表,默認情況下就是”fliter”表;

注意:表中的規則是有執行順序的,編號(num)越小,越先執行。只要匹配到結果,就不會往下執行了;

Linux系統iptables命令該怎樣使用

iptables -F:清空”fliter”表中的所有的規則;

注意:-F:表示清空指定表中的所有鏈中的規則;

iptables -I INPUT -s 1.1.1.1 -j DROP:在”fliter”表中的INPUT鏈中,鏈首插入一條規則;

注意:-I:表示在指定的鏈中插入一條規則,可以指定編號;

Linux系統iptables命令該怎樣使用

iptables -R INPUT 1 -s 2.2.2.2 -j REJECT:表示替換第一條規則;

注意:-R,replace,替換指定的規則;

iptables -S:以iptables-save命令格式顯示fliter鏈上的規則;

Linux系統iptables命令該怎樣使用

iptables -A INPUT -s 192.168.109.10 -d 192.168.109.4 -j REJECT:拒絕來自192.168.109.10的主機訪問192.168.109.4的ip地址;

注意:-d:指定目標地址,使規則更加詳細;

Linux系統iptables命令該怎樣使用

iptables -A INPUT -s 192.168.109.10 -d 192.168.109.4,192.168.109.5 -j REJECT:拒絕192.168.109.10的主機訪問192.168.109.4,192.168.109.5這兩個ip地址。

注意:一條命令添加兩條規則;

注意:源地址也可以使用這種方式,快速添加規則;

注意:該命令在規則中的語義的含義,-s、-d屬于并且的關系,即:拒絕源是192.168.109.10的ip,且源是192.168.109.4的訪問;而192.168.109.4和192.168.109.5在邏輯上屬于或者的關系。

Linux系統iptables命令該怎樣使用

iptables -A INPUT -s 192.168.109.10 -p tcp –dport 22 -j REJECT:拒絕192.168.109.10主機使用tcp協議訪問我的所有ip的22端口。

注意:-p:指定協議;可以通過”/etc/protocols”文件查看協議類型;

注意:–dport:指定目標主機的端口號;(拒絕別人鏈接我。)

注意:–sport:指定源主機的端口號;(拒絕我鏈接別人。)

注意:此處,注意區分dport和sport;

iptables -A INPUT -s 192.168.109.10 -p icmp -j REJECT:拒絕來自192.168.109.10主機發來的ping包。

注意:icmp協議沒有端口號,即不屬于tcp也不屬于udp。由于icmp協議的特性,這條命令的結果會造成,192.168.109.10無法ping通自己,自己也無法ping通192.168.109.10主機。

注意:如果要想實現別人無法ping通自己,自己可以ping通別人,需要根據state來判斷。0表示回應包,8表示請求包。

iptables -A INPUT -s 192.168.109.10 -i eth0 -j REJECT:拒絕192.168.109.10主機訪問我的eth0網卡。

注意:-i:加上網卡名,表示報文流入的接口;

注意:-o:加上網卡名,表示報文流出的接口;

iptables -A INPUT ! -s 192.168.109.4 -p tcp –dport 80 -j REJECT:除了192.168.109.4的主機可以訪問我的tcp的80端口,其他的主機全部拒絕;

注意:!:表示”非”;一般情況下,很少使用該方式。

iptables -A INPUT -s 192.168.109.4 -p icmp –icmp-type 8 -j REJECT:拒絕來自192.168.109.10主機發送來的icmp的請求包。即192.168.109.10主機無法ping通我,我可以ping通它。

注意:icmp協議中,ping通需要滿足兩個條件,首先源主機向目標主機發送一個請求包(8),目標主機收到之后,便會返回一個回應包(0)。

注意:-p:指定協議;

注意:–icmp-type:指定ping包的類型。(code可以省略;)

iptables -A INPUT -s 192.168.109.10 -p tcp -m multiport –dports 20:22,80 -j REJECT:拒絕來自192.168.109.10主機發送來的訪問我的20-22,80端口的包。

注意:-m:后面跟模塊名,multiport:以離散形式表示的多端口(最多可以跟15個端口);

注意:–dports:目標端口是多個端口;

注意:使用samba服務測試多端口的話,可能存在問題。想要抓包測試的話,可以使用”tcpdump -i eth0 -nn host 192.168.109.4″;

iptables -A INPUT -m iprange –src-range 192.168.109.1-192.168.109.10 -j REJECT:拒絕192.168.109.1~192.168.109.10范圍內的所有主機的訪問。

注意:iprange:ip范圍的模塊;

注意:–src-range:源地址范圍;

注意:–dsc-range:目標地址的范圍;

Linux系統iptables命令該怎樣使用

iptables -A INPUT -m mac –mac-source 00:0c:29:2f:b1:d6 -j REJECT:拒絕該mac地址的主機訪問本主機的資源。

注意:mac:mac地址模塊;

注意:–mac-source:源主機的mac地址;

iptables -A OUTPUT -p tcp -m string –algo bm –string “han” -j REJECT:拒絕所有主機訪問訪問我的有”han”字符串的報文。

注意:string:字符串模塊;

注意:–algo:指定匹配算法,bm、kmp算法,兩個隨便選一個;

注意:–string:指定要匹配的字符串;

注意:–from offset:開始偏移,–to offset:結束偏移;

注意:添加的是OUTPUT鏈;

Linux系統iptables命令該怎樣使用

iptables -F OUTPUT:清空OUTPUT鏈中的規則;

iptables -A INPUT -m time –weekdays 1,2,3,4,5 –timestart 9:00 –timestop 10:00 -j REJECT:拒絕所有的主機在周一到周五的九點~十點之間,訪問本主機的所有資源;

注意:time:時間模塊;

注意:–datestart YYYY[-MM[-DD[Thh[:mm[:ss]]]]] 日期

–datestop YYYY[-MM[-DD[Thh[:mm[:ss]]]]]

–timestart hh:mm[:ss] 時間

–timestop hh:mm[:ss]

–monthdays day[,day…] 每個月的幾號

–weekdays day[,day…] 星期幾

注意:centos7中,使用的是UTC時間(北京時間轉化成UTC時間是減8);centos6中使用的是本地時間;

Linux系統iptables命令該怎樣使用

iptables -A INPUT -m connlimit –connlimit-above 2 -j REJECT:并發連接的數量大于兩條的時候,就拒絕;

注意:connlimit:并發連接數量的模塊;

注意:–connlimit-upto n:連接的數量小于等于n時匹配;

注意:–connlimit-above n:連接的數量大于n時匹配;

注意:可以使用ssh服務測試;

iptables -A INPUT -p icmp -m limit –limit 10/minute –limit-burst 5 -j ACCEPT:對于icmp協議,ping通5個包后,便會以每分鐘接收十個的速度匹配。

注意:–limit-burst 5:達到5個之后,便會限制速度;

注意:–limit 10/minute:以每分鐘通過10個的速度匹配;

注意:需要”iptables -A INPUT -p icmp -j REJECT”配合使用。

Linux系統iptables命令該怎樣使用

iptables -N ACCOUNT:在”fliter表中,”創建一個自定義鏈,命名為ACCOUNT;

注意:-N:創建一條鏈;建議,將一些常用的規則放在自定義的鏈中,當使用的時候,將自定義的鏈關聯到INPUT鏈中。

注意:可以將自定義鏈的操作,理解為函數的聲明。將關聯操作,理解為函數的調用;

iptables -A ACCOUNT -s 192.168.109.10,192.168.109.220 -j REJECT:在自定義鏈ACCOUNT中添加一條規則;

iptables -D INPUT 2:刪除INPUT鏈中的第二條;

iptables -A INPUT -j ACCOUNT:將ACCOUNT鏈關聯到INPUT鏈中;

iptables -F ACCOUNT:清空”fliter”表中的ACCOUNT鏈中的規則;

iptables -X ACCOUNT:刪除”fliter”表中ACCOUNRT鏈;

注意:-X:刪除指定的自定義的鏈

Linux系統iptables命令該怎樣使用

iptables -A INPUT -p icmp -m state –state NEW -j REJECT:拒絕使用icmp第一次連接的請求包;

注意:state:state模塊;

注意:NEW:第一連接(注意此處并不是三次握手中的狀態);

iptables -A INPUT -s 192.168.109.10 -j LOG –log-prefix “FROM .10~~”:當192.168.109.10主機訪問我時,將他記錄到/var/log/messige日志文件中,并且,日志中的記錄的前綴的”FROM .10~~”

注意:LOG,記錄日志的target;

注意:–log-prefix:定義日志文件中的記錄的前綴;

Linux系統iptables命令該怎樣使用

iptables -A FORWARD -s 192.168.109.4/24 -d 172.17.253.120/16 -m state –state NEW -j ACCEPT:在FORWARD表中添加一條規則,當源192.168.109.0網段中的主機,目標是172.17.0.0網段中的主機時,狀態是NEW(第一條連接)時,就允許連接;

iptables -A FORWARD -m state –state ESTABLISHED -j ACCEPT:對于狀態是ESTABLISHED的連接,允許通過。

iptables -A FORWARD -j REJECT:拒絕所有連接;

以上三條規則結合起來,可以實現允許192.168.109.0網段中的主機ping通172.17.0.0的主機,但是反過來,ping不通。實現網絡防火墻的功能。

可以通過實驗來驗證:

四臺機器,兩臺192的地址(A、B),一臺172的地址(D),還有一臺充當路由器(C),既有172的地址,又有192的地址。設置好四臺主機的路由表,并開啟C主機的路由轉發功能。然后,執行iptables的命令,添加規則,即可實現功能。

Linux系統iptables命令該怎樣使用

iptables -t nat -R POSTROUTING 1 -s 192.168.109.0/24 -j SNAT –to-source 172.17.250.111:在nat表中的POSTROUTING鏈中,添加一策略,當收到192.168.109.0/24網段的主機訪問的目標地址是任意地址的時候,就將該包的源地址改成172.17.250.111,發送。(SNAT)

注意:要保證防火墻主機上的路由表,有到達目標地址的路徑。

注意:實驗中的C主機上,執行了該規則后,A主機通過C主機,到達C主機的POSTROUTING鏈的時候,將包的源地址改成C主機的公網地址,然后,發送給D主機。實驗的時候,將D主機上的默認路由刪掉。確保返回的包是將C主機的公網地址,作為目標地址的。

注意:可以在D主機上,安裝一個httpd服務,A訪問D之后,通過查看日志(/var/log/httpd/access_log),來驗證結果。

Linux系統iptables命令該怎樣使用

iptables -t nat -A PREROUTING -d 172.17.250.111 -dport 80 -j DNAT –to-destination 192.168.109.4:8080:當訪問172.17.250.111主機的80端口的時候,將目標端口改成192.168.109.4主機的8080端口。(DNAT)

注意:將192.168.109.4主機上的httpd服務監聽的端口改成8080;

Linux系統iptables命令該怎樣使用

看完上述內容,你們掌握Linux系統iptables命令該怎樣使用的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

弋阳县| 收藏| 五原县| 白朗县| 洛川县| 攀枝花市| 旅游| 安仁县| 涟水县| 万山特区| 鹤山市| 罗源县| 罗甸县| 霍林郭勒市| 沙湾县| 天津市| 乌审旗| 嘉兴市| 张家港市| 宝鸡市| 泸水县| 且末县| 承德市| 尚义县| 温泉县| 香格里拉县| 南涧| 探索| 出国| 孟村| 雷波县| 长沙市| 时尚| 衡阳市| 金昌市| 达日县| 常山县| 鹤庆县| 视频| 娱乐| 天台县|