新闻资讯

掌握最新资讯,了解关于我们的最新动态!
您当前位置首页 > 新闻资讯 > 服务器问题

Linux防火墙端口放行操作指南

更新时间:2026-06-02 07:06

在服务器运维中,防火墙端口配置是基础但至关重要的操作。无论是部署Web服务、配置数据库远程访问,还是搭建FTP,都需要正确配置防火墙规则。本文以Linux为例,讲解端口放行的方法和注意事项。

为什么需要手动配置防火墙端口?

默认情况下,服务器的防火墙仅放行少数常用端口(如SSH 22、RDP 3389)。当你安装Nginx(80/443)、MySQL(3306)、Redis(6379)等服务后,外部流量无法访问这些端口,必须在防火墙中手动添加放行规则。

检查当前防火墙状态和已放行端口

首先查看当前防火墙规则:

code
firewall-cmd --list-ports

此命令会列出所有已放行的端口。如果目标端口不在列表中,则需要添加规则。

添加端口放行规则

以下是添加TCP端口80(HTTP)的示例命令:

code
firewall-cmd --add-port=80/tcp --permanent

注意:firewall-cmd 添加规则后需执行 firewall-cmd --reload 使配置生效。使用 --permanent 参数表示永久生效,不加则重启后失效。

配置完成后验证

端口放行后,使用 telnet 或 nc 命令测试端口是否真正对外开放:

code
telnet 服务器IP 80

如果显示 Connected 则说明配置成功。如果连接被拒绝,请检查:

  • 云服务商安全组是否也放行了该端口
  • 端口对应的服务是否已启动并监听在 0.0.0.0 上
  • SElinux(Linux)是否拦截了连接

五、应用层防火墙规则

使用firewalld的富规则(rich rule)可以实现更精细的应用层过滤。例如限制特定源IP对Nginx服务(80端口)的访问频率,或根据HTTP请求头内容进行过滤。丰富的规则语言可满足复杂的安全需求。

六、DDoS防护实践

code
# iptables防DDoS基础规则
iptables -A INPUT -p tcp --dport 80 -m limit --limit 100/minute --limit-burst 200 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j DROP
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/second -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP

七、防火墙审计与日志

开启防火墙日志功能有助于安全审计和故障排查。将日志配置到独立文件,结合Logwatch或fail2ban进行自动分析。定期审查防火墙日志可以发现异常访问模式,及时调整规则。

八、IPv6防火墙配置

随着IPv6普及,需要同时配置IPv4和IPv6防火墙规则。firewalld支持双栈配置,使用ip6tables管理IPv6流量。注意IPv6环境下默认开放端口不同,需单独评估安全风险。

安全合格的云服务,让您的业务轻松上云!

立即选购