设置云主机的端口映射,本质上是允许外部网络通过公网IP访问云主机内某个特定端口上的服务(如Web、数据库、游戏等)。

核心步骤只有两步:
1、云平台安全组放行端口(相当于云上防火墙)
2、云主机内部防火墙放行端口(操作系统自带防火墙)
3、 (可选)修改应用配置文件(如果服务绑定在非默认地址上)
下面以最常见的Linux云主机 + Web服务(Nginx)示例 详细说明,云厂商(华为云/阿里云/腾讯云/AWS)操作逻辑完全一致。

这是最容易被忽略的一步,安全组是云主机的第一道网络闸门。
1、登录云厂商控制台,找到你的云主机实例。
2、 点击实例名称进入详情页,找到“安全组” 或“网络与安全” 标签页。
3、 点击“配置规则” ->“入方向”(或Inbound Rules)->“添加规则”。
4、填写规则(以允许访问Web服务80端口为例):

协议类型:TCP
端口范围:80 (或者 80/80)
优先级:1(数字越小越优先)
授权对象:0.0.0.0/0 (允许所有IP访问,如需限制可只填你的公网IP,如101.102.103.104/32)
策略:允许
5、保存,通常规则会在几秒内生效。
>特别注意:如果你需要映射的是22端口(SSH)、3389端口(Windows远程桌面),切勿将授权对象设为0.0.0.0/0,否则极易被暴力破解,建议使用白名单IP或修改默认端口。
云主机内部默认可能有iptables、firewalld(Linux)或Windows防火墙,需要放行对应端口。
对于 Linux 云主机(CentOS / Ubuntu / Debian)
查看防火墙状态(通常是firewalld或ufw):
sudo systemctl status firewalld # 对于CentOS/RHEL
sudo ufw status # 对于Ubuntu/Debian放行端口:
# CentOS/RHEL (firewalld)
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --reload
# Ubuntu/Debian (ufw)
sudo ufw allow 80/tcp
sudo ufw reload如果使用 iptables:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo service iptables save1、 打开“控制面板” > “系统和安全” > “Windows Defender 防火墙”。
2、 点击“高级设置”。
3、 在“入站规则” 中,点击“新建规则”。
4、 选择“端口” -> “TCP” -> 填写端口号(如80)-> “允许连接” -> 按需勾选域、专用、公用 -> 起个名字(如“Web服务”)。
即使防火墙放行,如果服务本身只监听本地回环地址127.0.0.1,外部流量也无法到达。
检查监听地址:
# Linux
sudo netstat -tlnp | grep 80
sudo ss -tlnp | grep 80
# Windows
netstat -ano | findstr :80正确结果:应显示0.0.0.0:80 或*:80,如果显示127.0.0.1:80,说明服务只绑定在本地。
解决方法:修改应用的配置文件(如Nginx的listen 80;改为listen 0.0.0.0:80;;Tomcat的Connector标签中添加address="0.0.0.0"),然后重启服务。
特殊情况:云主机没有公网IP(通过NAT网关)
如果你的云主机是内网实例(没有独立公网IP),而是通过NAT网关统一访问外网,此时需要:
1、在NAT网关中配置端口转发(DNAT规则):
- 公网IP + 端口A → 内网云主机IP + 端口B。
2、在云主机的安全组中放行内网网段(如10.0.0.0/8或192.168.0.0/16)对端口B的访问。
3、在云主机内部防火墙放行端口B。
1、telnet测试:在你本机电脑上执行telnet <云主机公网IP> <端口>。
连接成功:说明是服务本身问题(如应用没启动、绑定错了)。
连接失败:防火墙或安全组未放行。
2、检查安全组规则优先级:确保你添加的放行规则优先级高于任何拒绝规则(若无拒绝规则,默认是允许)。
3、检查云主机内部防火墙:临时停掉内部防火墙测试(生产环境谨慎操作):
sudo systemctl stop firewalld # Linux如果停掉后能访问,说明内部防火墙规则有误。
4、端口是否被占用:确保你要映射的端口没有被其他进程占用(如Tomcat默认占用多个端口,确保8080等正确放行)。
5、云平台是否额外有DDoS防护白名单:极少数情况下云平台自动防护策略可能会误拦截。
:大部分端口映射失败的原因,都是忘了在云控制台安全组放行端口,或者云主机内部防火墙未关闭/未放行,按上述两步操作,基本能解决问题。
文章摘自:https://idc.huochengrm.cn/zj/27007.html
评论
巴高远
回复设置云主机端口映射,需登录云管理控制台,选择对应主机,配置网络与安全组规则,完成端口映射设置。