温馨提示×

如何禁止ip debian iptables

小樊
38
2026-09-20 00:09:57
栏目: 智能运维

在 Debian 上用 iptables 禁止某个 IP(或网段)访问,可以按下面步骤操作。


一、禁止单个 IP 访问(入站)

例如禁止 192.168.1.100

sudo iptables -A INPUT -s 192.168.1.100 -j DROP

说明:

  • -A INPUT:添加到入站规则
  • -s:源 IP
  • -j DROP:直接丢弃(不回应)

如果不想完全沉默,可以用 REJECT

sudo iptables -A INPUT -s 192.168.1.100 -j REJECT

二、禁止某个 IP 访问特定端口

例如禁止 192.168.1.100 访问 22 端口(SSH):

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

三、禁止整个网段

例如禁止 10.0.0.0/24

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

四、禁止本机访问某个外部 IP(出站)

例如禁止本机访问 8.8.8.8

sudo iptables -A OUTPUT -d 8.8.8.8 -j DROP

五、查看当前规则

sudo iptables -L -n -v

六、删除规则

方法 1:按编号删除(推荐)

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

方法 2:原样删除

sudo iptables -D INPUT -s 192.168.1.100 -j DROP

七、重启后生效(非常重要)

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

Debian 11/12(使用 netfilter-persistent)

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

八、常见补充

只禁止 IPv4

sudo iptables ...

禁止 IPv6

sudo ip6tables -A INPUT -s fe80::1 -j DROP

如果你说的是:

  • Docker / K8s
  • 只允许某些 IP
  • 自动化脚本 / fail2ban

可以告诉我具体场景,我可以给你更合适的规则。

0