国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > 管理維護 > 正文

iptable防火墻詳解

2024-09-10 14:19:09
字體:
來源:轉載
供稿:網友
一.基本格式

1.  iptable  [-t  表]  命令選項  [連名]   匹配條件   [-j 動作]

2.常用命令選項如下:

-A 【append】 在指定的連的結尾添加規則
-D 【delete】刪除指定連中的規則,可以按規則號或規則內容匹配
-I 【insert】插入一條新規則,默認是在最前面
-R 【replace】 替換某一條規則
-L 【list】列出所有規則
-F 【flush】清空所有規則
-N 【new】自定義一條規則連
-X 【--delete-chain】 刪除用戶自定義規則連
-P 【policy】設置默認策略
-n 【numeric】以數字方式顯示,如:顯示ip,但不顯示主機名
-v 【verbose】顯示詳細信息
-V 【version】查看iptable的版本信息

--line-number  查看規則連是,顯示列表號 

-Z   清空計數器值


二.舉例

# iptable -t filter -F【清空filter表中所有規則】
# iptable -t filter -Z【清空filter表中的計數器值】
#iptable -t filter  -X 【清除filter表中自定義連】
# iptable -t filter -P INPUT DROP 【設置INPUT連默認策略為DROP】
# iptable -t filter -P OUTPUT DROP
# iptable -t filter -P FORWROD DROP
# iptable -t filter -A INPUT -p tcp -j ACCEPT 【在INPUT連最后添加一條允許tcp協議的數據包進入的規則】
# iptable -t filter -R INPUT 1 -p tcp -j DROP 【替換INPUT連的第1條規則為拒絕tcp數據包進入】
# iptable -t nat -vnL  --line-number  【以詳細的、數字的格式列出nat表中的所有規則】
# iptable -t nat -D POSTROUTING 1  【刪除nat表POSTROUTING 連中的第1條規則】


三.條件匹配
1. 協議匹配:用于檢查數據包使用的協議,符合規則就允許,反之拒絕。允許使用的協議名在/etc/protocols文件中。
   常用的協議有tcp,udp,icmp,ip 和all。【  -p  協議名 】
# iptable -I INPUT -p icmp  -j REJECT 【拒絕進入防火墻本身的icmp數據包】

# iptable -A FORWARD -p udp -j ACCEPT  【允許轉發udp的所有數據包】

2. 地址匹配:用于檢查數據包的地址是否符合規則,包括源地址和目的地址。【-s  源地址, -d  目的地址】

# iptable -A FORWARD -s 10.0.0.0/8   -j DROP  【拒絕轉發來自10.0.0.0/8 網段的數據包】
 

# iptable -A FORWARD -d 80.0.0.0/8   -j DROP  【 拒絕轉發目的是80.0.0.0/8 網段的數據包】

3.端口匹配:用于檢查數據包的tcp或udp端口,需要和 “-p 協議類型” 一起使用【-sport  源端口,-dport 目的端口】

# iptables -A FORWARD -s 10.0.0.0/8  -p tcp  --dport  80    -j ACCEPT 【允許轉發來自10.0.0.0/8網段,目的端口是80的數據包】

# iptables -I FORWARD -s 10.0.0.0/8  -p tcp  --sport 21     -j ACCEPT【允許轉發來自10.0.0.0/8網段,源端口是21的數據包】

4.接口匹配:用于檢查數據包從防火墻那個接口進入或出去,來判斷是否允許。

# iptables -A FORWARD  -i eth0 -s 10.0.0.0/8 -p tcp --dport 80  -j ACCEPT
【允許轉發從eth0進入,來自10.0.0.0/8網段,使用tcp 協議,目的端口椒80的數據包】

# iptables -A INPUT -i eth0  -s 80.0.0.0/8  -j DORP 【拒絕從eth0進入,來自80.0.0.0/8的數據包】

5.SNAT轉換:一般linux充當網關服務器時使用

SNAT只能用在nat表的POSTROUTING連,用于對源地址進行轉換。要結合 --to 使用。
# iptables -t nat -A POSTROUTING -s 10.0.0.0/8  -j SNAT  --to 202.106.1.1
【將來自10.0.0.0/8網段的所有數據包的源地址轉為202.106.1.1】

# iptables -t nat -A POSTROUTING  -i eth0  -s 80.0.0.0/8  -p tcp --dport 25 -j SNAT  --to 202.106.1.1

6.DNAT轉換:只能用在nat表中的PREROUTING連,用于對目的地址或端口進行轉換。

# iptables -t nat -A PREROUTING -i eth1 -d 202.106.1.1  -p tcp --dport  80 -j DNAT --to 10.0.0.10

【將從eth1 進入,目的地址是202.106.1.1,使用tcp 協議,目的端口是80的數據包的目的地址轉為10.0.0.1】

7.MASQUERADE:偽裝,是SNAT的特例。

# iptables  -t nat  -A POSTROUTING -s 10.0.0.0/8 -o eth1  -j MASQUERADE
【將來自10.0.0.0/8網段,從eth1出去的數據包的源地址偽裝為eth1接口地址】


四.拓展模塊
1.按來源MAC地址匹配
# iptables -t filter -A FORWARD -m --mac-source  00:02:b2:03:a5:f6  -j DROP

【拒絕轉發來自該MAC地址的數據包】

2.按多端口或連續端口匹配

   20:      表示20以后的所有端口
   20:100   表示20到100的端口
   :20     表示20之前的所有端口 
   -m  multiport [--prots, --sports,--dports] 
#  iptables -A INPUT -p tcp -m  multiport  --dports 21,20,25,53,80  -j ACCEPT 【多端口匹配】
#  iptables -A INPUT -p tcp -dport  20:    -j ACCEPT
#  iptables -A INPUT -p tcp  -sport 20:80   -j ACCEPT

#  iptables -A INPUT -p tcp  -sport  :80    -j ACCEPT

3.還可以按數據包速率和狀態匹配

-m  limit  --limit 匹配速率   如: -m  limit --limit 50/s  -j ACCEPT
-m  state  --state  狀態     如: -m  state --state INVALID,RELATED  -j ACCEPT
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 包头市| 漾濞| 兴安盟| 从江县| 鸡泽县| 佛坪县| 商水县| 依兰县| 万荣县| 梧州市| 屏边| 大化| 扬州市| 白城市| 特克斯县| 滁州市| 庆安县| 五台县| 望都县| 建水县| 土默特左旗| 封开县| 景泰县| 卫辉市| 南丰县| 肥乡县| 衡南县| 盘山县| 岳阳县| 蒲江县| 天峻县| 霍城县| 会宁县| 贵阳市| 合山市| 左贡县| 斗六市| 黔东| 胶州市| 韶关市| 丹凤县|