服务器端口该开哪些?最小开放原则

2026-11-12

服务器安全很重要,服务器的端口很多都用不上,开的太多了也不安全;每多开一个端口,公网上就多一扇可以被敲的门。扫描器二十四小时在扫全网的 3306、6379、3389,凡是开着又没设防的,被探到的当天就可能出事。所以端口管理的思路只有一句话:用哪个开哪个,其余全关——这就是最小开放原则。这篇文章给你一张常用端口对照表,加上宝塔和命令行两种收口操作,收完还有自查办法。

一台普通服务器,真正需要的口就这么几个

端口用途建议
22SSH 登录保留,改成高位端口更稳
80 / 443网站 HTTP/HTTPS对公网开放
3306MySQL不对公网开,远程走 SSH 隧道
6379Redis不对公网开,只监听本机
3389Windows 远程桌面改端口 + 限源 IP
8888 等宝塔面板改默认端口 + 改安全入口
21FTP尽量不用,传文件走 SFTP

判断标准就一条:这个口是给全网用户用的,还是只给管理员用的?给用户的开,给管理员的收进隧道或者限源 IP。

怎么收口:宝塔和命令行各走一遍

宝塔用户进【安全】,把放行列表里用不上的规则逐条删掉,只留表里那几项。注意宝塔改的是系统防火墙这一层,云服务器还有服务商控制台的安全组那一层——两层都要核对,只清一层等于门关了窗户还开着。

命令行以 firewalld 为例,先看现状再动手:

firewall-cmd --list-all 列出当前放行;firewall-cmd --permanent --remove-port=3306/tcp 删掉不该开的;改完 firewall-cmd --reload 生效。删之前留个神:业务真在用的口别手滑关了,关错口网站会当场打不开。

宝塔面板本身就是个端口,【面板设置】里把默认端口改掉、安全入口改掉、有条件就绑定访问 IP,这三项面板设置里都能点出来。

数据库和缓存端口是重灾区

3306 和 6379 被扫中的概率排在前列。MySQL 挂公网靠强密码还能撑一阵,Redis 更悬——大量攻击专挑没设密码的 Redis,连进去直接写定时任务下载挖矿脚本。正确做法三件套:bind 127.0.0.1 只监听本机、requirepass 设强密码、远程管理需求一律走 SSH 隧道。做到这三条,这两个口连对公网开都省了。

收完自查:从外部扫一遍

自己以为关了不算数,要从外部看。装了 nmap 的本地机器跑 nmap -Pn 你的服务器IP,或者用在线端口扫描工具,扫出来的结果和你手里的清单逐条比对,多出来的就是漏网的。这个自查建议每月做一次——业务每次上新功能、装新组件,都可能悄悄多开一个口。

拿不准自己机器该开哪些口、哪些口正在裸奔,留言写下系统和主要用途(建站、数据库、跑应用都说明一下),我按你的场景给一份该开该关的对照清单。了解更多详情咨询我们。


上一篇:一台服务器放多个网站行吗?
下一篇:没有了