發布者認證信息(營業執照和身份證)未完善,請登錄后完善信息登錄
91国语精品3p在线观看,欧洲亚洲欧美国产日本高清,亚洲国产精品成人精品,1024国产在线,欧美成a人片在线观看
中文字幕欧美日韩,欧美精品在线观看视频,欧美一道本,色噜噜亚洲黑人www视频,九九热视频在线免费观看,亚洲国产日韩在线观看,操国产美女,不卡色老大久久综合网
首頁 » 資訊 » 編程開發 » LINUX > iptables常用示例

iptables常用示例

  發布時間 : 2017-05-23 12:40:50 96
內容提要
本文將給出25個iptables常用規則示例,這些例子為您提供了些基本的模板,您可以根據特定需求對其進行修改調整以達到期望。 格式i

本文將給出25個iptables常用規則示例,這些例子為您提供了些基本的模板,您可以根據特定需求對其進行修改調整以達到期望。  格式

iptables [-t 表名] 選項 [鏈名] [條件] [-j 控制類型] 參數

 
  1. -設置默認策略:iptables -P INPUT (DROP|ACCEPT)
  2. -清空規則鏈
  3. -查看規則鏈
  4. -在規則鏈的末尾加入新規則
  5. -I num 在規則鏈的頭部加入新規則
  6. -D num 刪除某一條規則
  7. -匹配來源地址IP/MASK,加嘆號"!"表示除這個IP外。
  8. -匹配目標地址
  9. -網卡名稱 匹配從這塊網卡流入的數據
  10. -網卡名稱 匹配從這塊網卡流出的數據
  11. -匹配協議,如tcp,udp,icmp
  12. --dport num 匹配目標端口號
  13. --sport num 匹配來源端口號

示例

1. 刪除已有規則

在開始創建iptables規則之前,你也許需要刪除已有規則。

 
  1. 命令如下:
  2. iptables -F
  3. (or)
  4. iptables flush

2.設置鏈的默認策略

鏈的默認政策設置為”ACCEPT”(接受),若要將INPUT,FORWARD,OUTPUT鏈設置成”DROP”(拒絕),命令如下:

 
  1. iptables -P INPUT DROP
  2. iptables -P FORWARD DROP
  3. iptables -P OUTPUT DROP

當INPUT鏈和OUTPUT鏈都設置成DROP時,對于每一個防火墻規則,我們都應該定義兩個規則。例如:一個傳入另一個傳出。在下面所有的例子中,由于我們已將DROP設置成INPUT鏈和OUTPUT鏈的默認策略,每種情況我們都將制定兩條規則。當然,如果你相信你的內部用戶,則可以省略上面的最后一行。例如:默認不丟棄所有出站的數據包。在這種情況下,對于每一個防火墻規則要求,你只需要制定一個規則——只對進站的數據包制定規則。

3. 阻止指定IP地址

例:丟棄來自IP地址x.x.x.x的包

 
  1. iptables -A INPUT -s x.x.x.-j DROP
  2. 注:當你在log里發現來自某ip地址的異常記錄,可以通過此命令暫時阻止該地址的訪問以做更深入分析

例:阻止來自IP地址x.x.x.x eth0 tcp的包

 
  1. iptables -A INPUT -i eth0 -s x.x.x.-j DROP
  2. iptables -A INPUT -i eth0 -p tcp -s x.x.x.-j DROP

4. 允許所有SSH的連接請求

例:允許所有來自外部的SSH連接請求,即只允許進入eth0接口,并且目標端口為22的數據包

 
  1. iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT

5. 僅允許來自指定網絡的SSH連接請求

例:僅允許來自于192.168.100.0/24域的用戶的ssh連接請求

 
  1. iptables -A INPUT -i eth0 -p tcp -192.168.100.0/24 --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT

6.允許http和https的連接請求

例:允許所有來自web - http的連接請求

 
  1. iptables -A INPUT -i eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A OUTPUT -o eth0 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT

例:允許所有來自web - https的連接請求

 
  1. iptables -A INPUT -i eth0 -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A OUTPUT -o eth0 -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT

7. 使用multiport 將多個規則結合在一起

允許多個端口從外界連入,除了為每個端口都寫一條獨立的規則外,我們可以用multiport將其組合成一條規則。如下所示:  例:允許所有ssh,http,https的流量訪問

 
  1. iptables -A INPUT -i eth0 -p tcp -m multiport --dports 22,80,443 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A OUTPUT -o eth0 -p tcp -m multiport --sports 22,80,443 -m state --state ESTABLISHED -j ACCEPT

8. 允許從本地發起的SSH

 
  1. iptables -A OUTPUT -o eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A INPUT -i eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT

請注意,這與允許ssh連入的規則略有不同。本例在OUTPUT鏈上,我們允許NEW和ESTABLISHED狀態。在INPUT鏈上,我們只允許ESTABLISHED狀態。ssh連入的規則與之相反。

9. 僅允許從本地發起到一個指定的網絡域的SSH請求

例:僅允許從內部連接到網域192.168.100.0/24

 
  1. iptables -A OUTPUT -o eth0 -p tcp -192.168.100.0/24 --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A INPUT -i eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT

10. 允許從本地發起的HTTPS連接請求

下面的規則允許輸出安全的網絡流量。如果你想允許用戶訪問互聯網,這是非常有必要的。在服務器上,這些規則能讓你使用wget從外部下載一些文件

 
  1. iptables -A OUTPUT -o eth0 -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A INPUT -i eth0 -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT

注:對于HTTP web流量的外聯請求,只需要將上述命令中的端口從443改成80即可。

11. 負載平衡傳入的網絡流量

使用iptables可以實現傳入web流量的負載均衡,我們可以傳入web流量負載平衡使用iptables防火墻規則。  例:使用iptables nth將HTTPS流量負載平衡至三個不同的ip地址。

 
  1. iptables -A PREROUTING -i eth0 -p tcp --dport 443 -m state --state NEW -m nth --counter 0 --every 3 --packet 0 -j DNAT --to-destination 192.168.1.101:443
  2. iptables -A PREROUTING -i eth0 -p tcp --dport 443 -m state --state NEW -m nth --counter 0 --every 3 --packet 1 -j DNAT --to-destination 192.168.1.102:443
  3. iptables -A PREROUTING -i eth0 -p tcp --dport 443 -m state --state NEW -m nth --counter 0 --every 3 --packet 2 -j DNAT --to-destination 192.168.1.103:443

12. 允許外部主機ping內部主機

 
  1. iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
  2. iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT

13. 允許內部主機ping外部主機

 
  1. iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
  2. iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT

14. 允許回環訪問

例:在服務器上允許127.0.0.1回環訪問。

 
  1. iptables -A INPUT -i lo -j ACCEPT
  2. iptables -A OUTPUT -o lo -j ACCEPT

15. 允許內部網絡域外部網絡的通信

防火墻服務器上的其中一個網卡連接到外部,另一個網卡連接到內部服務器,使用以下規則允許內部網絡與外部網絡的通信。此例中,eth1連接到外部網絡(互聯網),eth0連接到內部網絡(例如:192.168.1.x)。

 
  1. iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT

16. 允許出站的DNS連接

 
  1. iptables -A OUTPUT -p udp -o eth0 --dport 53 -j ACCEPT
  2. iptables -A INPUT -p udp -i eth0 --sport 53 -j ACCEPT

17. 允許NIS連接

如果你使用NIS管理用戶帳戶,你需要允許NIS連接。如果你不允許NIS相關的ypbind連接請求,即使SSH連接請求已被允許,用戶仍然無法登錄。NIS的端口是動態的,先使用命令rpcinfo –p來知道端口號,此例中為853和850端口。  rpcinfo -p | grep ypbind  例:允許來自111端口以及ypbind使用端口的連接請求

 
  1. iptables -A INPUT -p tcp --dport 111 -j ACCEPT
  2. iptables -A INPUT -p udp --dport 111 -j ACCEPT
  3. iptables -A INPUT -p tcp --dport 853 -j ACCEPT
  4. iptables -A INPUT -p udp --dport 853 -j ACCEPT
  5. iptables -A INPUT -p tcp --dport 850 -j ACCEPT
  6. iptables -A INPUT -p udp --dport 850 -j ACCEPT

注:當你重啟ypbind之后端口將不同,上述命令將無效。有兩種解決方案:1)使用你NIS的靜態IP 2)編寫shell腳本通過“rpcinfo - p”命令自動獲取動態端口號,并在上述iptables規則中使用。

18. 允許來自指定網絡的rsync連接請求

例:允許來自網絡192.168.101.0/24的rsync連接請求

 
  1. iptables -A INPUT -i eth0 -p tcp -192.168.101.0/24 --dport 873 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A OUTPUT -o eth0 -p tcp --sport 873 -m state --state ESTABLISHED -j ACCEPT

19. 允許來自指定網絡的MySQL連接請求

很多情況下,MySQL數據庫與web服務跑在同一臺服務器上。有時候我們僅希望DBA和開發人員從內部網絡(192.168.100.0/24)直接登錄數據庫,可嘗試以下命令:

 
  1. iptables -A INPUT -i eth0 -p tcp -192.168.100.0/24 --dport 3306 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A OUTPUT -o eth0 -p tcp --sport 3306 -m state --state ESTABLISHED -j ACCEPT

20. 允許Sendmail, Postfix郵件服務

Sendmail和postfix都使用了25端口,因此我們只需要允許來自25端口的連接請求即可。

 
  1. iptables -A INPUT -i eth0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A OUTPUT -o eth0 -p tcp --sport 25 -m state --state ESTABLISHED -j ACCEPT

21. 允許IMAP和IMAPS

例:允許IMAP/IMAP2流量,端口為143

 
  1. iptables -A INPUT -i eth0 -p tcp --dport 143 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A OUTPUT -o eth0 -p tcp --sport 143 -m state --state ESTABLISHED -j ACCEPT

例:允許IMAPS流量,端口為993

 
  1. iptables -A INPUT -i eth0 -p tcp --dport 993 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A OUTPUT -o eth0 -p tcp --sport 993 -m state --state ESTABLISHED -j ACCEPT

22. 允許POP3和POP3S

例:允許POP3訪問

 
  1. iptables -A INPUT -i eth0 -p tcp --dport 110 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A OUTPUT -o eth0 -p tcp --sport 110 -m state --state ESTABLISHED -j ACCEPT

例:允許POP3S訪問

 
  1. iptables -A INPUT -i eth0 -p tcp --dport 995 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A OUTPUT -o eth0 -p tcp --sport 995 -m state --state ESTABLISHED -j ACCEPT

23. 防止DoS攻擊

 
  1. iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT
  2. 上述例子中:
  3. -m limit: 啟用limit擴展
  4. limit 25/minute: 允許最多每分鐘25個連接(根據需求更改)。
  5. limit-burst 100: 只有當連接達到limit-burst水平(此例為100)時才啟用上述limit/minute-。

24. 端口轉發

例:將來自422端口的流量全部轉到22端口。  這意味著我們既能通過422端口又能通過22端口進行ssh連接。啟用DNAT轉發。

 
  1. iptables -t nat -A PREROUTING -p tcp -192.168.102.37 --dport 422 -j DNAT --to 192.168.102.37:22

除此之外,還需要允許連接到422端口的請求

 
  1. iptables -A INPUT -i eth0 -p tcp --dport 422 -m state --state NEW,ESTABLISHED -j ACCEPT
  2. iptables -A OUTPUT -o eth0 -p tcp --sport 422 -m state --state ESTABLISHED -j ACCEPT

25. 記錄丟棄的數據表

第一步:新建名為LOGGING的鏈

 
  1. iptables -N LOGGING

第二步:將所有來自INPUT鏈中的數據包跳轉到LOGGING鏈中

 
  1. iptables -A INPUT -j LOGGING

第三步:為這些包自定義個前綴,命名為”IPTables Packet Dropped”

 
  1. iptables -A LOGGING -m limit --limit 2/min -j LOG --log-prefix "IPTables Packet Dropped: " --log-level 7

第四步:丟棄這些數據包

 
  1. iptables -A LOGGING -j DROP
layui

微信掃碼關注 億華聯眾 公眾號

頭條推薦

主站蜘蛛池模板: 永久免费av网站可以直接看的| 日本国产精品一区久久久| 国产激爽爽爽大片在线观看| 日韩东京热无码人妻| 欧美亚洲一区二区三区在线| 综合久久久久久久综合网| 毛片大全免费观看| 国产综合色在线视频播放线视| 国产黄色视频综合| 5555国产在线观看| 午夜福利无码一区二区| 四虎AV麻豆| 人妻精品全国免费视频| 国产福利大秀91| 亚洲精品无码日韩国产不卡| 午夜福利网址| 日本91视频| 午夜福利在线观看入口| 亚洲熟女偷拍| 少妇精品在线| 狠狠色狠狠综合久久| 中文字幕无码av专区久久| 潮喷在线无码白浆| 亚洲无码不卡网| 成人毛片在线播放| 人妻无码一区二区视频| 找国产毛片看| 国产9191精品免费观看| 黄色三级毛片网站| 日韩av手机在线| 亚洲国产日韩欧美在线| 欧美色99| 成人蜜桃网| 国产一区二区丝袜高跟鞋| 国产午夜小视频| 日韩在线成年视频人网站观看| 亚洲人成影院午夜网站| 国产交换配偶在线视频| 国产青榴视频| 黄色三级网站免费| 香蕉精品在线| 亚洲欧美日韩中文字幕在线| 亚洲天堂精品在线观看| 人妻中文字幕无码久久一区| 国产精品成人啪精品视频| 波多野结衣一二三| 色婷婷视频在线| 久久一日本道色综合久久| 中国一级毛片免费观看| 久草网视频在线| 成人在线不卡| 免费全部高H视频无码无遮掩| 中文字幕日韩欧美| 欧美黄网站免费观看| 99久久人妻精品免费二区| 久久婷婷六月| 国产无码精品在线播放| 国产成人高清精品免费软件 | 国产超薄肉色丝袜网站| 欧美精品在线免费| 久久精品人人做人人爽| 亚洲男人天堂2020| 国产精品免费p区| 丁香六月综合网| 久久99国产综合精品1| 国产精品大白天新婚身材| 欧美日本激情| 国产欧美日韩视频怡春院| 国产一区二区视频在线| 婷婷亚洲天堂| 亚洲成人www| 亚洲VA中文字幕| h网站在线播放| 日韩在线第三页| 亚洲国产日韩一区| 久视频免费精品6| 免费看一级毛片波多结衣| 欧美性天天| 亚洲精品视频免费| 青青草91视频| 永久在线精品免费视频观看| 亚洲精品你懂的|