四表:filter 負責過濾功能
nat 網路位址轉換
mangle 負責修改資料報內容
raw 負責資料報跟蹤
五鏈:prerouting 主機外報文進入位置
input 報文進入本機使用者空間位置
output 報文從本機使用者空間出去的位置
forward 報文經過路由發覺不是本機決定**不知道從哪個網絡卡出去
postrouting 報文經過路由被**出去
流入本機:a ---> prerouting ---> input ---> b
流出本機:a ---> output ---> postrouting ---> b
經過本機:a ---> output ---> postrouting | --->
prerouting ---> forward ---> postrouting -
--> c ---> prerouting ---> input ---> b
filter:input forward output
nat:prerouting input output postrouting
raw:prerouting output
mangle:prerouting input forward output
postrouting
格式:iptables -t 表名 選項 鏈名稱 條件 動作
-t 指定操作的表
-l 列出當前規則
-v 顯示資料報和大小
-n 不反解位址
-a 追加一條規則到鏈中
-i 插入一條規則到頂部
-f 清空
-z 清空計數器
-d 刪除鏈中的規則
-r 修改
-s 列出所有的規則
-n 建立乙個自定義鏈
-x 刪除乙個自定義鏈
-p 指定鏈的預設策略
查詢本機埠占用命令:netstat -nutlp
1.accept 將資料報放行,處理完不比對其他規則,跳到下乙個規則鏈
2.reject 阻攔資料報,傳送資料報通知對方
3.drop 丟棄包,處理完不比對其他規則,中斷過濾程式
4.redirect 將包匯入另乙個埠,處理完比對其他規則
1.-s 源位址 傳送請求的位址
2.-d 目標位址 訪問的位址
3.--sport 源埠 傳送請求的埠
4.--dport 目標埠 訪問的埠
1.tcp
2.udp
3.icmp
4.all
1.-i 進來的網絡卡
2.-o 出去的網絡卡
3.-m 指定的模組
4.-j **動作
5.-p 指定協議
指定模組:-m
1.連續匹配多個埠multiport--dports 指定多個埠(不同埠之間以逗號分割,連續的端 口使用冒號分割)
2.指定一段連續ip位址範圍iprange
--src-range from[-to] 源位址範圍
--dst-range from[-to] 目標位址範圍
3.匹配指定字串string
--string pattern 指定要匹配的字串
--algo 匹配的查詢演算法
4.根據時間匹配報文time
--timestart hh:mm[:ss] 開始時間
--timestop hh:mm[:ss] 結束時間
--monthdays day[,day...] 指定乙個月的某一天
--weekdays day[,day...] 指定周 還是 周天
5.禁ping,預設本機無法ping別人,別人無法ping自己
--icmp-type
echo-request (8) 請求
echo-reply (0) 回應
6.限制鏈結數,併發連線connlimit
--connlimit-upto n 如果現有連線數小於或等於n 則匹配
--connlimit-above n 如果現有連線數大於n 則匹配
7.針對 報文速率 進行限制。 秒、分鐘、小時、天
--limit rate[/second|/minute|/hour|/day] 報文數量
--limit-burst number 報文數量(預設:5)
1.只允許22埠訪問,其他埠無法訪問
iptables -t filter -a input -p tcp --dport 22 -j accept
iptables -t filter -a input -p tcp -j drop
2.只允許192.168.15.71能夠通過22埠鏈結,其他的不行
iptables -t filter -a input -p tcp -s 192.168.15.71 -d 198.168.15.81 --dport 22 -j accept
iptables -t filter -a input -p tcp -j drop
3.要求192.168.15.71對外部不可見
iptables -t filter -a input -p tcp -d 192.168.15.71 -j drop
4.要求將22,80,443以及30000-50000之間所有的埠向外暴露,其他埠拒絕
iptables -t filter -a input -p tcp -m multiport --dports 22,80,443,30000:50000 -j accept
iptables -f filter -a input -p tcp -j drop
5.要求訪問資料報中包含helloworld的資料不允許通過
iptables -t filter -a input -p tcp -m string --string "helloworld" --algo kmp -j drop
6.7.要求限制速率在500k/s左右
iptables 五鏈 四表
iptables的5條鏈分別是 prerouting 路由前 input 發到本機某程序的報文 output 本機某程序發出的報文 forward postrouting 路由後 iptables的4張表 filter 負責過濾工程,防火牆 nat 網路位址轉換功能 network address ...
iptables之四表五鏈
iptables可謂是sa的看家本領,需要著重掌握。隨著雲計算的發展和普及,很多雲廠商都提供類似安全組產品來修改機器防火牆。iptables概念 iptables只是linux防火牆的管理工具而已。真正實現防火牆功能的是netfilter,它是linux核心中實現包過濾的內部結構。iptables具...
iptables詳解(2) 四表五鏈
關於iptables中 四表五鏈 我們今天來好好嘮嘮 1 表的概念 我們把具有相同功能的規則的集合叫做 表 所以說,不同功能的規則,我們可以放置在不同的表中進行管理,而iptables已經為我們定義了4種表,每種表對應了不同的功能,而我們定義的規則也都逃脫不了這4種功能的範圍,所以,學習iptabl...