Linux網(wǎng)絡(luò)防火墻
你所需要的網(wǎng)站建設(shè)服務(wù),我們均能行業(yè)靠前的水平為你提供.標(biāo)準(zhǔn)是產(chǎn)品質(zhì)量的保證,主要從事成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計、企業(yè)網(wǎng)站建設(shè)、成都做手機網(wǎng)站、網(wǎng)頁設(shè)計、成都品牌網(wǎng)站建設(shè)、網(wǎng)頁制作、做網(wǎng)站、建網(wǎng)站。成都創(chuàng)新互聯(lián)擁有實力堅強的技術(shù)研發(fā)團隊及素養(yǎng)的視覺設(shè)計專才。
netfilter :frame 過濾,內(nèi)核中的過濾框架,規(guī)則生效的位置框架
iptables:附加在netfilter上,生成防火墻規(guī)則,真正實現(xiàn)數(shù)據(jù)報文過濾,NAT,mangle等規(guī)則生成的工具
防火墻:工作在主機或者網(wǎng)絡(luò)的邊緣,對于進出的報文進行檢查監(jiān)控,并根據(jù)事先定義好的規(guī)則(其中有匹配標(biāo)準(zhǔn)和處理辦法),一旦符合標(biāo)準(zhǔn),對這個報文進行相應(yīng)的處理規(guī)則的組件稱為防火墻
iptables的實現(xiàn)實際上是基于報文的過濾,實例如下:
1.IP:源地址,目標(biāo)地址
TCP:源端口,目標(biāo)端口
UDP:源端口,目標(biāo)端口
ICMP:icmp報文類型
發(fā)展歷程:
linux2.0
ipfw/firewall
linux2.2
ipchain/firewall
linux2.4
iptables/netfilter
netfilter的過濾有下面五個規(guī)則鏈
PREROUTING
INPUT
FORWARD
OUTPUT
POSTROUTING
四種表
filter,過濾表
INPUT,OUTPUT,F(xiàn)ORWARD
nat,地址轉(zhuǎn)換表
prerouting,output,postrouting
mangle(拆分,修改,封裝) 表
prerouting,forwarding,output,postrouting
raw表
prerouting,output
iptables:
500條規(guī)則
能否使用自定義鏈?
可以使用自定義鏈,但是只在被調(diào)用的時候才能發(fā)揮作用,而且如果沒有自定義鏈中的任何規(guī)則匹配,還應(yīng)該有返回機制
*用戶可以刪除自定義空鏈
*默認(rèn)鏈無法刪除
每個規(guī)則都有兩個內(nèi)置的計數(shù)器
被匹配的報文個數(shù)
被匹配的報文大之和
規(guī)則內(nèi)包含:匹配標(biāo)準(zhǔn),處理動作
匹配標(biāo)準(zhǔn):
1.通用匹配
-s,--src 源地址
-d,--dst 目標(biāo)地址
-p(tcp,udp,icmp)指定協(xié)議
-i INTERFACE指定數(shù)據(jù)報文流入的接口(ethX)
可用于定義標(biāo)準(zhǔn)的鏈,PREROUTING ,INPUT,FORWARD
-o INTERFACE 指定數(shù)據(jù)報文流出的接口
可用于標(biāo)準(zhǔn)定義的鏈,OUTPUT,POSTROUTING,FORWARD,
2.擴展匹配
a.隱含擴展:不用特別指明哪個模塊進行的擴展,因為此時使用-p(tcp/udp/icmp)
-p tcp 指定目標(biāo)端口,源端口
--tcp-flags mask comp :只檢查mask 指定的標(biāo)志位,是逗號分隔的標(biāo)志位列表;comp:此列表中出現(xiàn)的標(biāo)記位必須為1,comp中沒出現(xiàn),而mask中出現(xiàn)的,必須為0
可根據(jù)ACK,FIN,RST,SYN等標(biāo)志位的值來盤端報文的類型,例如當(dāng)SYN=1,其余為0,則這個報文時TCP/IP的第一次握手
-p-icmp
--icmp-type -8 被ping通
--icmp-type -1能夠發(fā)出ping 報文
-p-udp
指定目標(biāo)端口以及源端口
b. 顯示擴展:必須指明由哪個模塊進行的擴展,在iptables會用-m選項即可完成功能
使用額外的匹配機制
-m EXTENSTION --spe-opt
state:狀態(tài)擴展 -m state --state NEW -ij ACCEPT
結(jié)合ip_constrack追蹤會話的狀態(tài)
NEW:新連接請求
ESTABLISHED:已建立的連接
INVALID:非法連接
RELATED:相關(guān)聯(lián)的
-m multiport :離散的多端口匹配擴展
--source-ports
--destination-ports
--ports
-m iprange 指定一段地址
--src-range
--dst-range
-m connlimit 連接數(shù)限制
! --connlimit-above n
-m limit
--limit RATE速率限定
#iptables-save> /etc/sysconfig/iptables.2021
#iptables-restore < /etc/sysconfig/iptables.2021
命令
管理規(guī)則
-A:附加一條規(guī)則,添加在鏈的尾部
-I CHAIN [num]:插入一條規(guī)則,插入為對應(yīng)CHAIN上的第num條
-D CHAIN?。踤um]:刪除指定鏈中的第Num條規(guī)則
-R CHAIN [num]:替換指定的規(guī)則
管理鏈
-F [CHAIN]:flush用于清空指定規(guī)則鏈,如果省略CHAIN ,則可以刪除對應(yīng)表中的所有鏈
-P CHAIN :設(shè)定指定鏈的默認(rèn)策略
-N :自定義一個新的空鏈
-X:刪除一個自定義的空鏈
-Z:置零指定鏈中所有規(guī)則的計數(shù)器
-E:重命名自定義的鏈
查看類
-L:顯示指定表中的規(guī)則
-n:以數(shù)字形式顯示主機地址和端口號
-x:顯示計數(shù)器的精確值
-v:顯示鏈和規(guī)則的詳細(xì)信息 -vv:
--line-numbers:顯示規(guī)則號碼
執(zhí)行的動作(target)
-j指定
ACCEPT放行,允許通過
DROP丟棄
REJECT拒絕
DNAT目標(biāo)地址轉(zhuǎn)換
SNAT源地址轉(zhuǎn)換
REDIRECT(端口重定向)
MASQUERADE:地址偽裝 MAC表的PREROUTING鏈實現(xiàn)
MARK打標(biāo)記
LOG 日志
iptables不是服務(wù),但有服務(wù)腳本:腳本服務(wù)的主要作用在于管理保存的規(guī)則
裝載或移除iptable/netfilter相關(guān)的內(nèi)核模塊
iptables_nat,iptales_filter,iptable_mangle,iptables_raw,ip_nat,
保存規(guī)則:
#service iptables save
/etc/sysconfig/iptables
#iptables-save> /etc/sysconfig/iptables.2021
#iptables-restore < /etc/sysconfig/iptables.2021