Linux 防火墙端口设置
封面图
•
2025-12-16
•
Linux
234
0
0
0
在 Linux 系统中,防火墙的配置通常通过 `iptables`、`nftables` 或 `firewalld` 等工具实现。以下是一些常见的 Linux 防火墙端口设置方法,适用于不同的防火墙工具。 --- ## 一、使用 `iptables`(传统方式) ### 1. 开放某个端口 ```bash sudo iptables -A INPUT -p tcp --dport <端口号> -j ACCEPT ``` 例如,开放 80 端口(HTTP): ```bash sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT ``` ### 2. 保存规则(Ubuntu/Debian) ```bash sudo apt install iptables-persistent sudo netfilter-persistent save ``` ### 3. 查看规则 ```bash sudo iptables -L -n -v ``` --- ## 二、使用 `firewalld`(适用于 CentOS/RHEL 7+ / Fedora) ### 1. 开放端口 ```bash sudo firewall-cmd --permanent --add-port=<端口号>/tcp sudo firewall-cmd --reload ``` 例如,开放 8080 端口: ```bash sudo firewall-cmd --permanent --add-port=8080/tcp sudo firewall-cmd --reload ``` ### 2. 检查端口是否开放 ```bash sudo firewall-cmd --list-all ``` --- ## 三、使用 `ufw`(Ubuntu/Debian 推荐) ### 1. 启用 ufw ```bash sudo ufw enable ``` ### 2. 开放端口 ```bash sudo ufw allow <端口号>/tcp ``` 例如,开放 22 端口(SSH): ```bash sudo ufw allow 22/tcp ``` ### 3. 查看规则 ```bash sudo ufw status verbose ``` --- ## 四、使用 `nftables`(较新的系统推荐) ### 1. 添加规则 ```bash sudo nft add rule inet filter input tcp dport <端口号> accept ``` 例如,开放 443 端口(HTTPS): ```bash sudo nft add rule inet filter input tcp dport 443 accept ``` ### 2. 检查规则 ```bash sudo nft list ruleset ``` --- ## 五、通用建议 - **默认策略**:通常将默认的 `INPUT` 和 `FORWARD` 策略设为 `DROP`,只允许需要的端口。 - **测试端口**:可以使用 `telnet` 或 `nc` 测试端口是否开放。 ```bash telnet <IP地址> <端口号> ``` 或 ```bash nc -zv <IP地址> <端口号> ``` --- ## 六、常见问题 ### Q: 如何关闭某个端口? - 使用 `iptables`:`iptables -D INPUT -p tcp --dport <端口号> -j ACCEPT` - 使用 `firewalld`:`firewall-cmd --permanent --remove-port=<端口号>/tcp` - 使用 `ufw`:`ufw delete allow <端口号>/tcp` --- 如果你告诉我你使用的 Linux 发行版和防火墙工具,我可以给出更具体的指导。
上一篇:
如何利用cmp命令比较文件?
下一篇:
Linux SSH 连接安全配置
标题录入,一次不能超过6条
留言
评论