服务器端口设置指南
服务器端口是网络通信的逻辑端点,用于区分同一台服务器上运行的不同服务,正确配置端口既能保证业务正常运行,又能有效提升服务器的安全性。
常用端口参考
在设置端口前,了解一些行业标准的默认端口有助于快速配置:
- 远程管理:SSH (22)
- Web 服务:HTTP (80), HTTPS (443)
- 数据库:MySQL (3306), PostgreSQL (5432), MongoDB (27017), Redis (6379)
- 文件传输:FTP (21), SFTP (22)
- 其他常见服务:DNS (53), SMTP (25), IMAP (143)
端口设置的核心步骤
要使外部用户能够访问服务器上的某个服务,通常需要经过三个层级的放行:
第一步:服务监听设置
确保你的应用程序已经绑定并监听在指定的端口上。
- 检查命令:使用
netstat -tunlp或ss -tunlp查看当前服务器哪些端口处于 LISTEN 状态。
第二步:操作系统防火墙设置
即使服务在运行,操作系统内置的防火墙也可能拦截流量。
- Ubuntu/Debian (ufw):
- 允许端口:
sudo ufw allow 80/tcp - 查看状态:
sudo ufw status
- 允许端口:
- CentOS/RHEL (firewalld):
- 允许端口:
sudo firewall-cmd --permanent --add-port=80/tcp - 重新加载:
sudo firewall-cmd --reload
- 允许端口:
- 通用 (iptables):
- 允许端口:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
- 允许端口:
第三步:云平台安全组设置
如果你使用的是简米云、酷番云、AWS 等云服务器,必须在云控制台的安全组(Security Group)中添加入站规则。
- 协议:TCP 或 UDP
- 端口范围:具体端口号(如 80)或范围(如 8000-9000)
- 授权对象:
0.0.0/0(允许所有人访问)或 指定 IP(仅允许特定用户访问)
端口安全最佳实践
开放端口意味着增加了被攻击的风险,建议采取以下安全措施:
- 修改默认端口:将 SSH 的 22 端口修改为高位随机端口(如 22026),可有效减少 90% 以上的自动化暴力破解尝试。
- 最小权限原则:仅开放必须使用的端口,关闭所有不必要的端口。
- 限制访问来源:对于数据库(如 3306)或管理界面,
严禁对全网 (0.0.0.0/0) 开放
,应仅绑定公司内网 IP 或个人固定 IP。 - 使用反向代理:尽量不要直接将应用端口(如 8080)暴露给公网,建议使用 Nginx 或 Apache 作为反向代理,统一通过 80/443 端口进入。
端口连通性测试工具
设置完成后,可以使用以下工具验证端口是否真正开启:
- Telnet:
telnet 服务器IP 端口(如果屏幕黑屏或显示连接成功,则端口畅通)。 - Curl:
curl -v 服务器IP:端口(适用于 Web 服务)。 - NC (Netcat):
nc -zv 服务器IP 端口(快速扫描端口状态)。 - 在线检测工具:使用第三方端口扫描网站进行外部探测。
首发原创文章,作者:世雄 - 原生数据库架构专家,如若转载,请注明出处:https://idctop.com/article/493134.html



