温馨提示×

ubuntu iptables如何禁止ip

小樊
41
2026-09-28 03:36:38
栏目: 智能运维

在 Ubuntu 上使用 iptables 禁止某个 IP(或 IP 段)访问,常用方法如下:


一、禁止单个 IP 访问(最常用)

1. 禁止某个 IP 访问本机所有端口

sudo iptables -A INPUT -s 1.2.3.4 -j DROP

或(更“礼貌”地拒绝):

sudo iptables -A INPUT -s 1.2.3.4 -j REJECT
  • DROP:直接丢弃,对方无响应(更安全)
  • REJECT:明确返回拒绝信息

2. 禁止某个 IP 访问特定端口(如 22)

sudo iptables -A INPUT -s 1.2.3.4 -p tcp --dport 22 -j DROP

二、禁止 IP 段

sudo iptables -A INPUT -s 192.168.1.0/24 -j DROP

三、禁止本机访问某个外部 IP

sudo iptables -A OUTPUT -d 1.2.3.4 -j DROP

四、查看当前规则

sudo iptables -L -n -v

五、删除规则

方法 1:按编号删除

sudo iptables -L INPUT --line-numbers
sudo iptables -D INPUT 2

方法 2:按原命令删除

sudo iptables -D INPUT -s 1.2.3.4 -j DROP

六、重要:保存 iptables 规则(Ubuntu)

Ubuntu 默认重启后 iptables 规则会丢失,需要保存:

Ubuntu 20.04 / 22.04(使用 netfilter-persistent)

sudo apt install iptables-persistent
sudo netfilter-persistent save
sudo netfilter-persistent reload

七、示例完整流程

sudo iptables -A INPUT -s 8.8.8.8 -j DROP
sudo netfilter-persistent save

如果你愿意,我可以:

  • 帮你写 防爆破 SSH 的规则
  • 教你用 ufw(更简单)
  • 或针对 Docker / 云服务器 给方案

0 踩