溫馨提示×

iptables命令行參數有哪些用法

小樊
46
2025-08-27 05:33:06
欄目: 編程語言

iptables 是 Linux 系統中用于配置內核防火墻(netfilter)規則的一個命令行工具。以下是一些常用的 iptables 命令行參數及其用法:

基本結構

iptables [選項] [鏈] [規則匹配條件] [目標動作]

常用選項

  • -A:追加規則到鏈的末尾。
  • -I:在指定位置插入規則。
  • -D:刪除規則。
  • -R:替換規則。
  • -L:列出所有鏈的規則。
  • -n:以數字形式顯示地址和端口。
  • -v:詳細模式,顯示更多信息。
  • -x:精確計數,顯示精確的數據包和字節計數。
  • -t:指定表(如 filter, nat, mangle, raw)。

鏈(Chain)

  • INPUT:處理進入本機的數據包。
  • OUTPUT:處理從本機發出的數據包。
  • FORWARD:處理經過本機轉發的數據包。
  • PREROUTING:目標地址轉換(DNAT)之前處理數據包。
  • POSTROUTING:源地址轉換(SNAT)之后處理數據包。

規則匹配條件

  • -p:指定協議(如 tcp, udp, icmp)。
  • --dport:指定目標端口。
  • --sport:指定源端口。
  • -i:指定輸入接口。
  • -o:指定輸出接口。
  • -s:指定源IP地址。
  • -d:指定目標IP地址。
  • -m:指定匹配模塊(如 conntrack, state, limit)。

目標動作

  • ACCEPT:允許數據包通過。
  • DROP:丟棄數據包,不給出任何回應。
  • REJECT:拒絕數據包,并給出錯誤響應。
  • LOG:記錄數據包信息到系統日志。

示例

  1. 允許所有來自特定IP的SSH連接

    iptables -A INPUT -p tcp --dport 22 -s 192.168.1.100 -j ACCEPT
    
  2. 阻止所有ICMP請求

    iptables -A INPUT -p icmp -j DROP
    
  3. 限制每分鐘最多接收5個新的SSH連接

    iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m limit --limit 5/min -j ACCEPT
    
  4. 刪除特定規則

    iptables -D INPUT -p tcp --dport 22 -s 192.168.1.100 -j ACCEPT
    
  5. 列出所有INPUT鏈的規則

    iptables -L INPUT -v -n
    
  6. 清空所有規則

    iptables -F
    

注意事項

  • 修改 iptables 規則可能會影響系統的網絡連接,請謹慎操作。
  • 在生產環境中,建議先在測試環境中驗證規則的正確性。
  • 使用 iptables-saveiptables-restore 命令可以備份和恢復整個 iptables 規則集。

希望這些信息對你有所幫助!如果有更多具體問題,歡迎繼續提問。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女