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

采用高配品牌服务器

主流强悍CPU配置

确保服务高速稳定运行

中美直连线路

中美直连亚洲优化

采用中国CN2骨干网络

保证速度飞快稳定高效

如何在命令行中添加端口规则?

美国、香港服务器

如何在命令行中添加端口规则?

02-12   来源:

在命令行中给宝塔面板添加端口规则,核心是通过iptables(宝塔防火墙底层依赖)直接配置,同时确保规则永久生效、与宝塔面板规则协同。以下是分场景、可直接复制的命令行配置方法,适配 CentOS/Debian/Ubuntu 所有主流系统。
一、核心前提
操作前确保以root用户登录终端(宝塔终端默认是 root);
宝塔防火墙基于iptables,优先用iptables命令配置,避免与面板规则冲突;
配置后需保存规则,否则服务器重启后规则会丢失。
二、命令行添加端口规则(分场景)
1. 放行单个端口(白名单,允许所有 IP 访问)
比如放行 80 端口(网站 HTTP)、443 端口(HTTPS),这是最基础的规则:
bash
运行
# 放行TCP 80端口(所有IP可访问)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# 放行TCP 443端口(所有IP可访问)
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
2. 放行指定 IP 访问单个端口(端口白名单,仅指定 IP 可访问)
比如仅允许你的办公 IP(192.168.1.100)访问宝塔面板 8888 端口,最安全的配置:
bash
运行
# 第一步:放行指定IP访问8888端口(核心白名单规则)
iptables -I INPUT -s 192.168.1.100 -p tcp --dport 8888 -j ACCEPT
# 第二步:拒绝所有其他IP访问8888端口(兜底规则)
iptables -A INPUT -p tcp --dport 8888 -j DROP
说明:-I表示插入规则到最前面(优先级更高),-A表示追加到规则末尾;先放行白名单 IP,再拒绝所有 IP,确保白名单优先。
3. 放行指定 IP 访问端口范围(如 30000-40000)
比如允许 192.168.1.0/24 网段访问 30000-40000 端口范围:
bash
运行
# 放行指定网段访问端口范围
iptables -I INPUT -s 192.168.1.0/24 -p tcp --dport 30000:40000 -j ACCEPT
# 拒绝其他IP访问该端口范围
iptables -A INPUT -p tcp --dport 30000:40000 -j DROP
格式:端口范围用起始端口:结束端口表示(如 30000:40000),而非宝塔面板的30000-40000。
4. 封禁单个 IP 访问指定端口(端口黑名单)
比如封禁恶意 IP(203.0.113.10)访问 22 端口(SSH):
bash
运行
iptables -I INPUT -s 203.0.113.10 -p tcp --dport 22 -j DROP
5. 封禁所有 IP 访问指定端口(完全关闭端口)
比如关闭不使用的 3306 端口(MySQL),禁止所有 IP 访问:
bash
运行
iptables -A INPUT -p tcp --dport 3306 -j DROP
三、关键步骤:保存规则(避免重启失效)
配置完规则后,必须保存,否则服务器重启后规则会丢失:
1. CentOS 系统(最常用)
bash
运行
# 保存iptables规则
service iptables save
# 重启iptables使规则生效
systemctl restart iptables
2. Ubuntu/Debian 系统
bash
运行
# 安装iptables-persistent(首次保存需安装)
apt install -y iptables-persistent
# 保存规则
iptables-save > /etc/iptables/rules.v4
# 重启netfilter-persistent生效
systemctl restart netfilter-persistent
四、验证规则是否生效
配置后可通过以下命令查看已添加的规则,确认是否正确:
bash
运行
# 查看所有INPUT链规则(带行号,便于管理)
iptables -L INPUT -n --line-numbers
# 仅查看指定端口规则(如8888)
iptables -L INPUT -n --line-numbers | grep :8888
输出示例(8888 端口白名单规则):
plaintext
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
说明:192.168.1.100 可访问 8888,其他 IP 全部被拒绝,规则生效。
五、与宝塔面板协同的注意事项
命令行添加的规则会同步显示在宝塔面板「安全→防火墙→端口规则」中,无需重复配置;
若宝塔面板重启防火墙,会加载已保存的 iptables 规则,不会丢失;
避免同时开启firewalld/ufw,否则会与 iptables 规则冲突,建议关闭:
bash
运行
# 关闭firewalld(CentOS 7+)
systemctl stop firewalld && systemctl disable firewalld
# 关闭ufw(Ubuntu/Debian)
ufw disable
总结
命令行添加端口规则核心用iptables,优先级:-I(插入)>-A(追加);
白名单配置需「先放行指定 IP→再拒绝所有 IP」,黑名单直接DROP目标 IP / 端口;
配置后必须保存规则,否则重启服务器后规则失效;
规则可在宝塔面板中可视化查看 / 管理,无需重复操作。

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

上一篇:如何在命令行中删除端口规则? 下一篇:如何查看宝塔面板的端口规则?

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