在 Ubuntu 里用 iptables 限制(开放/封锁)端口,常见做法如下:
iptables -A <链> -p <协议> --dport <端口> -j <动作>
常用参数说明:
-A:追加规则(也可以用 -I 插入到最前面)<链>:常用 INPUT(入站)、OUTPUT(出站)-p:协议,如 tcp、udp--dport:目标端口-j:动作
ACCEPT:允许DROP:直接丢弃(无回应)REJECT:拒绝并回包iptables -A INPUT -p tcp --dport 8080 -j DROP
iptables -A INPUT -p tcp --dport 22 -s 192.168.1.100 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j DROP
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j DROP
iptables -A INPUT -p tcp --dport 22 -m limit --limit 3/min -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j DROP
iptables -L -n -v
iptables -L --line-numbers
iptables -D INPUT 2
iptables -F
ufw 更方便(Ubuntu 推荐)ufw deny 8080
ufw allow 22
Ubuntu 20.04+:
apt install iptables-persistent
netfilter-persistent save
如果你有具体需求(比如:
可以告诉我,我给你精确规则。