? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?iptables防火墻
防火墻的分類:
硬件旅东,購買設(shè)備
軟件炎辨,安裝軟件
iptables的功能:
強(qiáng)制訪問指定站點(diǎn)
發(fā)布內(nèi)網(wǎng)服務(wù)器nat/snat/dnat
智能型DNS
iptables的格式:
iptables-t filter-A INPUT-p tcp --dport 23-j REJECT
命令?4表?5鏈?數(shù)據(jù)描述?處理方式
-t?指定表? ??
?4表:
filter過濾(數(shù)據(jù)過濾,默認(rèn))INPUT/OUTPUT/FORWARD
nat轉(zhuǎn)換(地址轉(zhuǎn)換)PREROUTING/POSTROUTING/OUTPUT
mangle校正(數(shù)據(jù)包打標(biāo)記)INPUT/OUTPUT/FORWARD/PREROUTING/POSTROUTING
raw??
5鏈:
INPUT:接收娩井,發(fā)送方不一定是你呜投,但接收方一定是你
OUTPUT:發(fā)送,接收方不一定是你炫隶,但發(fā)送方一定是你
FORWARD:轉(zhuǎn)發(fā)淋叶,接收方和發(fā)送方全都不是你
PREROUTING:路由前時(shí),指代在決定去向前處理
POSTROUTING:路由后時(shí)伪阶,指代在決定去向后處理
外出的包:
本地程序
路由判斷(決定包使用源地址煞檩,外出接口)
mangle表OUTPUT鏈(標(biāo)記、生存時(shí)間栅贴、服務(wù)類型)
nat表OUTPUT鏈(對防火墻自己發(fā)出的包做DNAT)
filter表OUTPUT鏈(過濾)
mangle表POSTROUTING鏈(標(biāo)記斟湃、生存時(shí)間、服務(wù)類型)
nat表POSTROUTING鏈(對數(shù)據(jù)包做SNAT)
離開接口
網(wǎng)絡(luò)傳輸
進(jìn)入的包:
網(wǎng)絡(luò)傳輸
進(jìn)入接口
mangle表PREROUTING鏈(標(biāo)記檐薯、生存時(shí)間凝赛、服務(wù)類型)
nat表PREROUTING鏈(對數(shù)據(jù)包做DNAT)
路由判斷(決定包的去向注暗,給自己的)
mangle表INPUT鏈(標(biāo)記、生存時(shí)間墓猎、服務(wù)類型)
filter表INPUT鏈(過濾)
交給本地程序處理
轉(zhuǎn)發(fā)的包:
網(wǎng)絡(luò)傳輸
進(jìn)入接口
mangle表PREROUTING鏈(標(biāo)記捆昏、生存時(shí)間、服務(wù)類型)
nat表PREROUTING鏈(對數(shù)據(jù)包做DNAT)
路由判斷(決定包的去向毙沾,發(fā)給別人)
mangle表FORWARD鏈(標(biāo)記骗卜、生存時(shí)間、服務(wù)類型)
filter表FORWARD鏈(過濾)
mangle表POSTROUTING鏈(標(biāo)記左胞、生存時(shí)間寇仓、服務(wù)類型)
nat表POSTROUTING鏈(對數(shù)據(jù)包做SNAT)
離開接口
網(wǎng)絡(luò)傳輸
走向:
不考慮鏈mangle>nat>filter
不考慮表PREROUTING>INPUT>(FORWARD)>OUTPUT>POSTROUTING
數(shù)據(jù)包的流程:
參數(shù):
A在所選擇的鏈末尾添加規(guī)則
iptables -A INPUT -s?192.168.1.123 -p tcp --dport 22 -j ACCEPT
R替換規(guī)則
iptables -R INPUT 1 -s 192.168.0.123 -j DROP
D刪除規(guī)則
iptables -D INPUT -p tcp --dport 80 -j DROP
iptables -D INPUT 3
I插入規(guī)則
iptables -I INPUT 3 -s?192.168.1.222 -j DROP
L查看規(guī)則
iptables -t filter -L INPUT
X刪除非內(nèi)建鏈
iptables -X birdteam
F清空規(guī)則
iptables -t nat -F OUTPUT
Z將計(jì)數(shù)器清空(包計(jì)數(shù)器、字節(jié)計(jì)數(shù))
iptables -Z
N新創(chuàng)建鏈
iptables -N birdteam
P修改默認(rèn)規(guī)則
iptables -P INPUT DROP
E自定義鏈改名
iptables -E birdteam vfast
選項(xiàng):
v詳細(xì)信息
x精確
n顯示端口
line-numbers顯示規(guī)則序號
通用匹配:
p匹配協(xié)議
s匹配來源地址
iptables -A INPUT -s ! 192.168.1.123 -j ACCEPT
d匹配目的地址
i匹配包進(jìn)入的接口
o匹配包送出的接口
OUTPUT/FORWARD/POSTROUTING
f匹配被分片的包的第二片及后續(xù)部分
TCP的端口:
sport匹配來源端口
dport匹配目的端口
tcp-flags匹配TCP的封包標(biāo)記
SYN/ACK/FIN/RST/URG/PSH
syn?
tcp-option檢查TCP的包頭信息
8位選項(xiàng)類型罩句、長度焚刺、內(nèi)容
iptables -A INPUT -p tcp --tcp-flags syn,ack,fin syn?
=
iptables -A INPUT -p tcp --syn
UDP的端口: -
sport匹配來源端口
dport匹配目的端口
ICMP的端口:
icmp-type匹配ICMP的類型
INPUT鏈:
-s --sport對方的端口和地址
-d --dport自己的端口和地址
iptables -A INPUT -p tcp --dport 23 -j DROP
OUTPUT鏈:
-s --sport自己的端口和地址
iptables -A OUTPUT -p tcp --sport 23 -j DROP
-d --dport對方的端口和地址
顯示匹配
iptables -A INPUT -p tcp -m multiport --port 23,26,76?限制來源目的
iptables A INPUT -m state --state ESTABLISHED,RELATED
limit匹配平均速率--limit
--limit-burst
mac匹配源MAC地址--mac-source
multiport不連續(xù)多端口匹配--source-port
--destination-port
--port?
mark標(biāo)記--mark
owner匹配所有--uid-owner
--gid-owner
--pid-owner
--sid-owner
state匹配包的狀態(tài)--state
tos匹配服務(wù)類型--tos
ttl匹配生存時(shí)間--ttl
處理:
ACCEPT允許?
REJECT拒絕并且返回錯(cuò)誤信息?
DROP丟棄并不返回錯(cuò)誤信息?
LOG記錄到/var/log/messages--log-prefix
--log-level
--log-tcp-sequence
--log-tcp-options
--log-ip-options
DNAT目標(biāo)地址轉(zhuǎn)換--to-destination
MARK標(biāo)記--set-mark
MASQUERADE偽裝--to-ports
SNAT來源地址轉(zhuǎn)換--to-source
MIRROR鏡像換掉源和目標(biāo)
QUEUE隊(duì)列需要配合設(shè)備使用
REDIRECT重新定向--to-ports
RETURN返回返回上級
TOS服務(wù)類型--set-tos
TTL生存時(shí)間--ttl-set
--ttl-dec
--ttl-inc
ULOG記錄用戶被匹配的包的信息?
應(yīng)用實(shí)例:
iptables -A INPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --syn -m state --state NEW --dport ?80 ?-j ACCEPT
iptables -A INPUT -p tcp --syn -m state --state NEW --dport ?25 ?-j ACCEPT
iptables -A INPUT -p tcp --syn -m state --state NEW --dport ?110 ?-j ACCEPT
iptables -A INPUT -p tcp --syn -m state --state NEW --dport ?22 ?-j ACCEPT
iptables -A INPUT -p tcp --syn -m state --state NEW --dport ?23 ?-j ACCEPT
?iptables -I INPUT -p all -j ACCEPT?實(shí)現(xiàn)所有服務(wù)可用