上一篇
📢 最新消息(2025年08月)
Linux 内核 6.10 版本进一步优化了网络栈性能,使得端口管理和防火墙规则配置更加高效。UFW(Uncomplicated Firewall) 和 firewalld 仍然是主流选择,但越来越多的管理员开始尝试 nftables 替代传统的 iptables。
在计算机网络中,端口(Port) 就像是服务器上的“门”,不同的服务(如 Web、SSH、数据库)通过不同的端口进行通信。
默认情况下,Linux 不会开放所有端口,所以我们需要手动配置。
在开始配置前,先看看哪些端口已经是开放的:
netstat
(经典但逐渐被取代)sudo netstat -tuln
-t
→ 显示 TCP 端口 -u
→ 显示 UDP 端口 -l
→ 仅显示监听中的端口 -n
→ 以数字形式显示(不解析域名) ss
(更现代,推荐)sudo ss -tuln
输出类似:
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
这里可以看到 22 端口(SSH) 是开放的。
nmap
(扫描本机或远程主机)sudo nmap -sT -p- 127.0.0.1
-sT
→ TCP 扫描 -p-
→ 扫描所有端口(1-65535) Linux 的防火墙管理主要有三种方式:
适用于较老系统,但逐渐被 nftables
取代。
开放 8080 端口(TCP):
sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
保存规则(否则重启失效):
sudo iptables-save > /etc/iptables/rules.v4 # Debian/Ubuntu sudo service iptables save # CentOS/RHEL
sudo ufw allow 8080/tcp # 开放 8080 sudo ufw enable # 启用防火墙 sudo ufw status # 查看规则
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent sudo firewall-cmd --reload
--permanent
→ 永久生效 --reload
→ 重新加载规则 ✅ 检查:
0.0.0
(而不是 0.0.1
)? ✅ 解决:
sudo ss -tulnp | grep 80 # 查看谁占用了 80 sudo systemctl stop nginx # 停止冲突服务
✅ 确保规则保存:
iptables
→ iptables-save
firewalld
→ --permanent
UFW
→ 默认永久生效 方法 | 适用场景 | 示例命令 |
---|---|---|
iptables |
老系统 | iptables -A INPUT -p tcp --dport 8080 -j ACCEPT |
UFW |
Ubuntu | ufw allow 8080 |
firewalld |
CentOS/RHEL | firewall-cmd --add-port=8080/tcp --permanent |
💡 小技巧:
telnet 你的IP 8080
或 nc -zv 你的IP 8080
nftables
(未来趋势) 你的 Linux 服务器已经可以安全地开放端口啦!🎉 如果有问题,欢迎在评论区交流~
本文由 悉强 于2025-08-02发表在【云服务器提供商】,文中图片由(悉强)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/515385.html
发表评论