如何在 Linux 系统中开放防火墙端口
如何在 Linux 系统中开放防火墙端口
在 Linux 服务器上运行应用程序时,有时需要手动开放防火墙端口,以便外部设备能够访问服务。本文将介绍如何在 Linux 系统(主要针对 firewalld
和 iptables
)中开放端口。
1. 检查防火墙状态
firewalld
sudo systemctl status firewalld
如果未运行,可以启动:
sudo systemctl start firewalld
iptables
sudo iptables -L -n
2. 开放端口
使用 firewalld
开放单个端口(如 8080)
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
重新加载防火墙规则
sudo firewall-cmd --reload
验证端口是否开放
sudo firewall-cmd --list-ports
使用 iptables
添加规则开放端口
sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
保存规则(防止重启后失效)
sudo iptables-save > /etc/iptables/rules.v4 # Debian/Ubuntu
sudo service iptables save # CentOS
查看规则是否生效
sudo iptables -L -n | grep 8080
3. 其他防火墙管理工具
如果使用 ufw
(Ubuntu 默认防火墙),可以使用以下命令开放端口:
sudo ufw allow 8080/tcp
sudo ufw reload
4. 确保服务正在监听端口
可以使用 netstat
或 ss
命令检查端口状态:
sudo netstat -tulnp | grep 8080
# 或者
sudo ss -tulnp | grep 8080
如果服务未在监听端口,可能需要检查应用程序配置。