三二互联专业提供速度最快最稳定的美国服务器、香港服务器。中美直连,亚洲优化![ 代理登陆 ] [ 付款方式 ] [ 找回密码 ][ 电子协议责任书 ]
硬件资源保障

采用高配品牌服务器

主流强悍CPU配置

确保服务高速稳定运行

中美直连线路

中美直连亚洲优化

采用中国CN2骨干网络

保证速度飞快稳定高效

如何在命令行中删除端口规则?

美国、香港服务器

如何在命令行中删除端口规则?

02-12   来源:

 在命令行中删除宝塔面板对应的端口规则,核心是通过iptables命令(宝塔防火墙底层依赖)先定位规则行号,再精准删除,避免误删其他规则。以下是分场景、可直接复制的删除方法,适配所有主流 Linux 系统,且与宝塔面板规则完全同步。

一、核心前提
必须以root用户执行命令(宝塔终端默认是 root);
删除前先查看规则行号,这是精准删除的关键;
规则删除后需保存配置,否则重启服务器后被删规则可能恢复。
二、删除端口规则的完整步骤
步骤 1:查看规则行号(定位要删除的规则)
先执行以下命令,列出所有 INPUT 链规则(端口规则主要在 INPUT 链),并显示行号:
bash
运行
# 查看所有INPUT链规则(带行号、端口、IP、策略)
iptables -L INPUT -n --line-numbers
输出示例(以 8888 端口白名单为例):
plaintext
num  target     prot opt source               destination
1    ACCEPT     tcp  --  192.168.1.100        0.0.0.0/0            tcp dpt:8888
2    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:8888
3    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:80
4    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:443
行号num是删除的核心依据(比如要删 8888 端口的拒绝规则,行号是 2);
可通过grep筛选指定端口 / IP 规则,更高效:
bash
运行
# 仅查看8888端口的规则(快速定位)
iptables -L INPUT -n --line-numbers | grep :8888
# 仅查看针对203.0.113.10的黑名单规则
iptables -L INPUT -n --line-numbers | grep 203.0.113.10
步骤 2:删除指定规则(分场景)
场景 1:删除单个规则(按行号删除,推荐)
这是最精准的方式,避免误删,格式:iptables -D INPUT 行号
bash
运行
# 示例:删除行号2的8888端口拒绝规则
iptables -D INPUT 2
# 示例:删除行号1的8888端口放行规则
iptables -D INPUT 1
场景 2:删除指定端口的所有规则(批量删除)
若某个端口有多个规则(放行 + 拒绝),可批量删除:
bash
运行
# 先筛选出目标端口的所有行号,再逐个删除(以8888为例)
for line in $(iptables -L INPUT -n --line-numbers | grep :8888 | awk "{print $1}"); do
  iptables -D INPUT $line
done
场景 3:删除指定 IP 的端口规则(精准拉黑 / 白名单)
比如删除封禁 203.0.113.10 访问 22 端口的规则:
bash
运行
# 先查行号
iptables -L INPUT -n --line-numbers | grep 203.0.113.10 | grep :22
# 再删除(假设行号是5)
iptables -D INPUT 5
场景 4:清空所有端口规则(谨慎使用)
仅在规则混乱时使用,会删除 INPUT 链所有规则:
bash
运行
# 清空INPUT链所有规则(谨慎!会关闭所有端口访问)
iptables -F INPUT
# 重置默认策略(可选,恢复默认放行)
iptables -P INPUT ACCEPT
步骤 3:保存删除后的规则(关键,避免重启恢复)
删除规则后必须保存配置,否则服务器重启后,被删的规则会重新出现:
bash
运行
# CentOS系统
service iptables save
systemctl restart iptables
 
# Ubuntu/Debian系统
iptables-save > /etc/iptables/rules.v4
systemctl restart netfilter-persistent
三、验证删除是否生效
执行以下命令,确认目标规则已消失:
bash
运行
# 再次查看规则,确认无目标端口/IP规则
iptables -L INPUT -n --line-numbers | grep :8888
# 若输出为空,说明删除成功
同时,宝塔面板「安全→防火墙→端口规则」中对应的规则也会同步消失,无需额外操作。
四、避坑注意事项
规则行号动态变化:删除某条规则后,后续规则的行号会自动前移,比如删除行号 2 后,原行号 3 会变成行号 2,需重新查看行号再删除下一条;
避免误删核心规则:80/443(网站)、22(SSH)、8888(宝塔面板)的放行规则不要误删,否则会无法访问服务器 / 网站;
云安全组协同:若云服务器安全组也配置了端口规则,仅删除 iptables 规则不够,需同步在云控制台删除;
宝塔防火墙重启:删除规则后,若在宝塔面板重启防火墙,会加载已保存的 iptables 规则,无需担心冲突。
总结
命令行删除端口规则的核心是「先查行号→再删规则→最后保存」;
优先用iptables -D INPUT 行号精准删除,避免批量清空;
删除后必须保存规则,否则重启服务器会恢复;
规则删除会同步到宝塔面板,无需重复操作。

三二互联专业提供香港VPS,美国VPS主机,香港云服务器租用等业务香港美国到大陆CN2 GIA速度最快

上一篇:如何在命令行中修改端口规则? 下一篇:如何在命令行中添加端口规则?

美国GIA服务器三二互联版权所有 WWW.250.cc 2008-2015 All Rights Reserved
三二互联 - 专业的美国C3服务器、香港vps、抗DOOS流量清洗、云备份系统、网站加速系统、美国GIA服务器和香港云服务器产品提供商
三二互联24小时在线工单系统为您提供全面、专业、周到的技术支持与服务
咨询热线:400-679-9994(免长话费)