錯誤命令
iptables -I INPUT -p UDP -dport 161 -j ACCEPT
Bad argument `161'
正確命令
iptables -I INPUT -p udp --dport 161 -j ACCEPT
關鍵點
- 協議小寫:`-p udp`(雖然大寫也接受,規範用小寫)
- 雙破折號:`--dport` / `--sport` / `--destination-port`,**單破折號 `-dport` 會被識別為無效參數**
- 持久化:重啟失效,需保存
- CentOS/RHEL:
service iptables save 或 iptables-save > /etc/sysconfig/iptables
- Ubuntu/Debian:
iptables-save > /etc/iptables/rules.v4 (需安裝 iptables-persistent)
- 驗證:
iptables -nL INPUT --line-numbers | grep 161
補充:SNMP 典型部署
- UDP 161:Agent 接收請求(Get/Walk)
- UDP 162:Manager 接收 Trap/Inform
- 若兩者同機,需同時開放:
iptables -I INPUT -p udp -m multiport --dports 161,162 -j ACCEPT