Linux之iptables命令用法解讀
一、netfilter/iptables
netfilter:Linux內(nèi)核中的一個(gè)軟件框架,用于處理網(wǎng)絡(luò)數(shù)據(jù)包,提供的功能包括:網(wǎng)絡(luò)地址轉(zhuǎn)換NAT,數(shù)據(jù)包內(nèi)容修改、過(guò)濾、轉(zhuǎn)發(fā)等防火墻的功能iptables:運(yùn)行在用戶(hù)空間的應(yīng)用軟件,命令行工具,通過(guò)其設(shè)置規(guī)則,來(lái)控制netfilter模塊,從而實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)包的管理,從而實(shí)現(xiàn)防火墻的配置。
二者組成Linux下的包過(guò)濾防火墻。
二、四表五鏈
1、規(guī)則表
filter表:過(guò)濾數(shù)據(jù)包nat表:網(wǎng)絡(luò)地址轉(zhuǎn)換mangle表:管理mangle包raw表:關(guān)閉在nat表啟用的連接追蹤機(jī)制
2、規(guī)則鏈
PREROUTING:對(duì)數(shù)據(jù)包作路由選擇前應(yīng)用此鏈中的規(guī)則INPUT:進(jìn)來(lái)的數(shù)據(jù)包FORWARD:轉(zhuǎn)發(fā)數(shù)據(jù)包OUTPUT:出去的數(shù)據(jù)包POSTROUTING:路由選擇后

三、規(guī)則配置
1、命令格式
iptables [-t table] command chain parameter target
table:指定操作的表,默認(rèn)filter表
command:操作的命令
- -A:在指定鏈尾添加一條新的規(guī)則(append)
- -D:刪除指定鏈中的一條規(guī)則,可以根據(jù)序號(hào)或內(nèi)容進(jìn)行刪除(delete)
- -I:在指定鏈插入一條新的規(guī)則,默認(rèn)在第一行(insert)
- -L:列出所有規(guī)則(list)
- -R:修改、替換指定鏈的某一條規(guī)則,可以根據(jù)序號(hào)和內(nèi)容進(jìn)行替換(replace)
- -N:新建一條自定義規(guī)則鏈(new-chain)
- -X:刪除自定義的規(guī)則鏈
- -E:重命名自定義鏈
- -F:清空(flush)
…
chain:規(guī)則鏈(INPUT、OUTPUT、FORWARD…)
parameter:匹配規(guī)則
- -s:匹配報(bào)文的源地址,可以同時(shí)指定多個(gè),每個(gè)用逗號(hào)進(jìn)行隔開(kāi)
- -d:匹配報(bào)文的目標(biāo)地址,可以同時(shí)指定多個(gè),每個(gè)用逗號(hào)進(jìn)行隔開(kāi)
- -p:匹配報(bào)文的協(xié)議類(lèi)型,如tcp、udp、icmp、sctp、udplite、esp等
- -i:匹配報(bào)文從哪個(gè)網(wǎng)卡接口流入
- -o:匹配報(bào)文將要從哪個(gè)網(wǎng)卡接口流出
…
- –sport:匹配源端口,可以用冒號(hào)指定一個(gè)連續(xù)的端口范圍
- –dport:匹配目的端口,可以用冒號(hào)指定一個(gè)連續(xù)的端口范圍
- -m multiport --sports/dports:匹配多個(gè)離散的端口號(hào),用逗號(hào)隔開(kāi)
示例: iptables -t filter -I OUTPUT -s 192.168.1.111 -p tcp -m tcp --dports 22:25 -j DROP
target:處理數(shù)據(jù)包的方式
-j ACCEPT:允許數(shù)據(jù)包通過(guò)-j DROP:丟棄數(shù)據(jù)包,不給回應(yīng)信息-j REJECT:拒絕數(shù)據(jù)包通過(guò),必要時(shí)會(huì)給數(shù)據(jù)發(fā)送端一個(gè)響應(yīng)信息
…
四、常用規(guī)則示例
1、規(guī)則保存
service iptables save
若不保存,待服務(wù)器重啟時(shí)會(huì)恢復(fù)原先狀態(tài)。
2、查看規(guī)則(帶編號(hào))
iptables -L -n --line-number
3、刪除OUTPUT第一條規(guī)則
iptables -D OUTPUT 1
4、拒絕進(jìn)入防火墻的所有ICMP協(xié)議數(shù)據(jù)包
iptables -I INPUT -P icmp -j REJECT
5、限制udp53端口只進(jìn)不出
iptables -I OUTPUT -p udp --dport 53 -j REJECT
6、獲取域名服務(wù)端口號(hào)
grep domain /etc/services
五、注意點(diǎn)
1、規(guī)則順序
若報(bào)文已被前面的規(guī)則匹配,則會(huì)直接執(zhí)行對(duì)應(yīng)的操作,即使后續(xù)規(guī)則也能匹配,但不會(huì)再執(zhí)行。
2、匹配條件
若一條規(guī)則中有多個(gè)匹配條件,則需同時(shí)滿(mǎn)足所有匹配條件,報(bào)文才能被匹配,即"與"的關(guān)系。
3、將更容易被匹配的規(guī)則放在前面
在沒(méi)有順序要求的情況下,不同類(lèi)別的規(guī)則,被匹配次數(shù)多、匹配頻率高的規(guī)則應(yīng)放在前面。
4、當(dāng)IPTABLES所在主機(jī)作為網(wǎng)絡(luò)防火 墻時(shí),在配置規(guī)則時(shí),應(yīng)著重考慮方向性,雙向都要考慮,從外到內(nèi),從內(nèi)到外。
5、在配置IPTABLES白名單時(shí),往往會(huì)將鏈的默認(rèn)策略設(shè)置為ACCEPT,通過(guò)在鏈的最后設(shè)置REJECT規(guī)則實(shí)現(xiàn)白名單機(jī)制,而不是將鏈的默認(rèn)策略設(shè)置為DROP,如果將鏈的默認(rèn)策略設(shè)置為DROP,當(dāng)鏈中的規(guī)則被清空時(shí),管理員的請(qǐng)求也將會(huì)被DROP掉。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Apache為mysql以及自己的項(xiàng)目設(shè)置虛擬路徑
Apache為mysql以及自己的項(xiàng)目設(shè)置虛擬路徑2009-12-12
linux服務(wù)器ubuntu定時(shí)任務(wù)cron設(shè)置每秒執(zhí)行
這篇文章主要介紹了linux服務(wù)器ubuntu定時(shí)任務(wù)cron設(shè)置每秒執(zhí)行,使用 cron 時(shí),有一些注意事項(xiàng)可以幫助你確保任務(wù)按預(yù)期執(zhí)行,并減少潛在的問(wèn)題,本文給大家介紹的非常詳細(xì),需要的朋友參考下吧2024-02-02
詳解Linux系統(tǒng)無(wú)法上網(wǎng)解決方案
本篇文章主要介紹了詳解Linux系統(tǒng)無(wú)法上網(wǎng)解決方案,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06
詳解linux dma驅(qū)動(dòng)編寫(xiě)
這篇文章主要介紹了詳解linux dma驅(qū)動(dòng)編寫(xiě),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
Linux系統(tǒng)之service創(chuàng)建方式
Linux下創(chuàng)建service的方法:1.創(chuàng)建一個(gè)新的service文件在/etc/systemd/system目錄中,2.編寫(xiě)service文件的內(nèi)容,包括Description、After、ExecStart、User、Group、Restart和WantedBy,3.啟用service,使用命令systemctl enable2024-11-11
Centos 6.5 下配置DNS服務(wù)器的方法(圖文詳解)
這篇文章主要介紹了Centos 6.5 下配置DNS服務(wù)器的方法詳解,需要的朋友可以參考下2017-05-05
linux讓程序開(kāi)機(jī)自動(dòng)運(yùn)行最簡(jiǎn)單的方法
在本篇文章里小編給大家整理的是一篇關(guān)于linux讓程序開(kāi)機(jī)自動(dòng)運(yùn)行最簡(jiǎn)單的方法以及相關(guān)代碼,需要的朋友們學(xué)習(xí)下。2019-11-11
Linux VPS備份教程 數(shù)據(jù)庫(kù)/網(wǎng)站文件自動(dòng)定時(shí)備份
這篇文章老左分享目前大家比較常用的自動(dòng)定時(shí)備份方案,數(shù)據(jù)庫(kù)發(fā)送到我們的郵箱、文件發(fā)送同步到我們另外空間FTP中2012-09-09

