大家买来云服务器后第一件事就是装系统、装面板、部署网站,为了省事,安全组一不小心就放开了很多端口,甚至直接选择全部开放。短期看好像方便了,后面却可能埋下安全风险。
云服务器和家用电脑不一样,它是直接暴露在公网里的。只要端口开着,外部网络就有机会扫描到。很多攻击并不是专门盯着你,而是批量扫描公网 IP,看到有常见端口开放,就开始尝试登录、爆破、探测漏洞。
今天这篇文章就来聊聊,云服务器哪些端口不建议随便打开,哪些端口可以开但要限制来源,以及新手应该怎么设置安全组更稳。

一、不是不能开,而是不要暴露到公网
很多端口本身没有问题,真正有风险的是把它们直接开放给所有公网 IP。
比如 SSH 的 22 端口、Windows 远程桌面的 3389 端口,服务器管理时确实需要用。但这类端口一旦对全网开放,就很容易被扫描和暴力尝试登录。
数据库端口也是一样。MySQL、Redis、MongoDB、PostgreSQL 这些服务原本更多是给服务器内部程序连接的,不应该随便暴露在公网。公网直接开放数据库端口,是新手很容易踩的坑。
所以判断一个端口该不该开,不能只看“这个服务要不要用”,还要看 是否必须让公网直接访问。
二、22端口:Linux远程登录可以用,但不建议全网开放
22 端口是 Linux 服务器最常见的 SSH 登录端口。新手连接云服务器、上传文件、执行命令,基本都离不开它。
但正因为太常见,22 端口也是最容易被扫描的端口之一。服务器刚开好没多久,日志里可能就会出现大量陌生 IP 尝试登录的记录。
如果只是自己管理服务器,22 端口不建议对所有 IP 开放。更稳的做法是限制为自己的固定 IP、办公网络 IP,或者改成 VPN、堡垒机、密钥登录等方式。
这里要注意,改端口不是万能安全手段,只能减少一些低级扫描。真正重要的是 关闭密码登录、使用密钥登录、限制登录来源、及时更新系统。
三、3389端口:Windows远程桌面更要谨慎
Windows 云服务器常用 3389 端口做远程桌面连接。这个端口一旦暴露在公网,也很容易被批量扫描。
很多用户觉得设置了复杂密码就够了,但远程桌面长期暴露在公网,风险仍然不低。尤其是使用弱密码、默认管理员账号、长期不更新系统补丁时,风险会更明显。
如果你使用 Windows 云服务器,3389 最好不要全网开放。可以只允许自己的办公 IP 访问,或者通过 VPN 后再连接远程桌面。
Windows 服务器还有一个问题是资源占用相对更高,装软件也更容易混乱。远程桌面端口开着没问题,但要把访问范围控制好,不要为了方便把门一直敞开。
四、这些端口不建议直接暴露公网
下面这些端口,不是说永远不能用,而是不建议直接对公网开放。很多服务应该放在内网、本机或者指定 IP 范围内使用。
| 端口 | 常见服务 | 为什么不建议直接开放 |
|---|---|---|
| 21 | FTP | 明文传输风险高,容易被爆破 |
| 22 | SSH | 容易被扫描和暴力尝试登录 |
| 23 | Telnet | 明文协议,不建议使用 |
| 25 | SMTP | 容易被滥用发信,很多服务商会限制 |
| 3306 | MySQL | 数据库不应直接暴露公网 |
| 3389 | Windows远程桌面 | 常见扫描目标,需限制来源 |
| 5432 | PostgreSQL | 数据库端口,建议内网访问 |
| 6379 | Redis | 配错权限风险很高 |
| 9200 | Elasticsearch | 暴露后可能导致数据泄露 |
| 11211 | Memcached | 不适合公网开放 |
| 27017 | MongoDB | 数据库端口,需严格限制访问 |
| 445 / 139 | SMB文件共享 | 公网暴露风险高 |
这张表里最需要新手注意的是数据库端口。很多网站程序和数据库部署在同一台服务器上,数据库只需要本机访问,根本不需要对公网开放。
能不对公网开的端口,就不要对公网开。
五、80和443可以开,但也不是完全不用管
做网站时,80 和 443 端口是最常见的开放端口。80 用于 HTTP,443 用于 HTTPS。网站要被用户访问,这两个端口通常是需要开放的。
但这并不代表它们没有安全问题。网站程序、插件、主题、后台路径、上传目录、接口权限,都会通过 80 和 443 暴露出去。
也就是说,80 和 443 是业务入口,不是管理入口。它们可以开放,但网站本身要做好安全更新、HTTPS、后台保护、WAF、防暴力登录和备份。
新手不要以为只开放 80 和 443 就绝对安全。真正稳定的网站,要同时做好 程序安全、服务器安全和访问控制。
六、数据库端口尽量不要开放给公网
数据库端口是我最不建议新手随便开的端口之一。MySQL 的 3306、PostgreSQL 的 5432、Redis 的 6379、MongoDB 的 27017,都属于高风险端口。
很多网站部署在同一台服务器上,程序连接数据库时直接走本机地址就行。比如 WordPress 和 MySQL 在同一台 VPS 上,数据库只允许本机连接即可,没必要让公网访问 3306。
如果确实有远程连接数据库的需求,也不建议直接全网开放。可以限制固定 IP、使用 VPN、开启强密码和权限隔离,并且关闭默认弱配置。
数据库一旦出问题,不只是网站打不开,数据也可能受影响。数据库端口宁可麻烦一点,也不要随便开放。
七、安全组应该怎么设置更稳?
云服务器安全组不是越开放越方便,而是要按用途最小化开放。你的网站需要什么端口,就只开必要端口;管理端口只给可信 IP 使用;数据库和缓存尽量不对公网开放。
比较稳的做法是:
- 网站服务器只开放 80、443,管理端口限制固定 IP。
- SSH、远程桌面、数据库端口不要设置为 0.0.0.0/0 全网开放。
- 不用的服务及时关闭,不用的端口及时删除规则。
新手买云服务器时,也可以优先选择安全组规则清楚、支持多节点和灵活调整的平台,比如 萤光云 和 LightNode。前期先把端口规则设置简单清楚,后面业务复杂了再逐步调整,会更稳一些。
不要为了省几分钟操作,把所有端口都打开。服务器安全问题,很多时候就是从一个“先这样用着吧”的设置开始的。
八、打开端口前,先问自己三个问题
端口不是不能开,但每次开放之前,最好先想清楚它是不是真的需要公网访问。
可以先问自己三个问题:这个端口是不是业务必须用?是不是必须给所有人访问?能不能只允许固定 IP、内网或 VPN 访问?
很多端口真正需要的不是“开放”,而是“限制”。比如远程登录只需要你自己能访问,数据库只需要程序能访问,缓存只需要内网服务能访问。
这也是云服务器安全里很重要的原则:只开放必要端口,只允许必要来源,只给必要权限。
常见问题
问:22端口一定不能开吗?
答:不是不能开,但不建议全网开放,最好限制固定 IP 并使用密钥登录。
问:Windows服务器的3389端口可以开放吗?
答:可以用于远程桌面,但建议限制来源 IP,不要长期全网开放。
问:MySQL的3306端口要不要开?
答:网站和数据库在同一台服务器时,通常不需要对公网开放。
问:80和443端口安全吗?
答:它们是网站访问必需端口,但网站程序本身仍然要做好安全更新和防护。
问:安全组全部开放会怎样?
答:短期方便,长期风险很高,容易被扫描、爆破和攻击。
温馨提示
云服务器端口管理的核心,不是把所有端口都关掉,而是 只开放真正需要的端口。网站访问可以开放 80 和 443,远程管理端口要限制来源,数据库、缓存、文件共享这类端口尽量不要暴露到公网。
新手最容易犯的错,是为了方便把安全组全部放开。服务器一旦放到公网,就不要把它当成本地电脑来用。端口开得越随意,后面遇到安全问题的概率就越高。


