TOP云提供高性价比云服务器租用,有中国内地/港澳台、海外等全球各地节点,TOP云国内云服务器只要有域名备案号就能直接用,无须重复备案;港澳台及海外云服务器不用备案,购买之后直接使用,省时省力省心。价格实惠,续费同价,2核2G5M仅需27元每月,8核8G50M仅需66元每月,更多配置套餐请进入下面网址了解:

TOP云总站云服务器:https://topyun.vip/server/buy.html

TOP云C站云服务器:https://c.topyun.vip/cart

关闭云服务器上不必要的端口是提升服务器安全性的重要措施之一。开放过多端口会增加被攻击的风险,尤其是那些不需要的服务端口,可能成为黑客入侵的入口。以下是关闭不必要端口的详细方法和步骤,涵盖操作系统防火墙云平台安全组两个层面的配置。


一、关闭不必要端口的总体思路

关闭不必要的端口需要从以下两个层面进行:

  1. 操作系统层面的防火墙:通过配置防火墙规则(如 firewalld、iptables 或 ufw),禁止对不需要端口的访问;

  2. 云平台的安全组:通过云服务商提供的安全组功能,限制外部对不需要端口的访问。

注意:操作系统防火墙和云平台安全组的规则是“叠加”生效的。即使你在操作系统防火墙中放行了某个端口,如果云平台安全组禁止了该端口,外部仍然无法访问。因此,需要同时配置两者,以确保端口关闭生效。


二、操作系统层面的防火墙配置

根据你的服务器操作系统类型,选择对应的防火墙工具进行配置。


1. Linux 系统

(1)CentOS / RHEL 系统(使用 firewalld)

① 查看当前开放的端口
sudo firewall-cmd --zone=public --list-ports

这将列出当前在 public 区域中开放的所有端口。

② 关闭指定端口

如果你想关闭某个端口(如 8080),可以使用以下命令:

sudo firewall-cmd --zone=public --remove-port=8080/tcp --permanent
  • --remove-port:移除指定端口的规则;

  • --permanent:永久生效,如果不加此参数,重启后会失效。

③ 重新加载防火墙配置
sudo firewall-cmd --reload
④ 再次检查开放的端口
sudo firewall-cmd --zone=public --list-ports

确认目标端口已从列表中移除。


(2)Ubuntu / Debian 系统(使用 ufw)

① 查看当前规则
sudo ufw status verbose

这将显示当前防火墙的规则,包括允许和拒绝的端口。

② 关闭指定端口

如果你想关闭某个端口(如 8080),可以使用以下命令:

sudo ufw delete allow 8080/tcp

如果端口是通过服务名(如 http)开放的,可以使用服务名代替端口号,例如:

sudo ufw delete allow http
③ 检查规则是否生效
sudo ufw status verbose

确认目标端口已被移除。


(3)直接使用 iptables(不推荐新手使用)

iptables 是 Linux 底层的防火墙工具,功能强大但配置复杂。如果你需要直接使用 iptables 关闭端口,可以参考以下命令:

  • 删除允许某个端口的规则(如关闭 TCP 8080 端口):

    sudo iptables -D INPUT -p tcp --dport 8080 -j ACCEPT
  • 保存规则(CentOS):

    sudo service iptables save
  • 保存规则(Ubuntu):

    sudo apt install iptables-persistent
    sudo netfilter-persistent save

注意:iptables 规则重启后会丢失,需要手动保存和加载。


2. Windows 系统

如果你使用的是 Windows 云服务器(如 Windows Server 2012/2016/2019),可以通过以下方式关闭不必要的端口。

(1)通过图形界面关闭端口

  1. 打开【控制面板】 > 【系统和安全】 > 【Windows Defender 防火墙】;

  2. 点击【高级设置】;

  3. 在左侧选择【入站规则】;

  4. 找到与目标端口相关的规则(如 8080 端口),右键点击该规则,选择【禁用规则】或【删除规则】。

(2)通过命令行关闭端口

使用 netsh 命令可以关闭指定端口:

  • 禁用某个端口的入站规则(如关闭 TCP 8080 端口):

    netsh advfirewall firewall set rule name="规则名称" new enable=no

    如果不知道规则名称,可以先列出所有规则:

    netsh advfirewall firewall show rule name=all
  • 删除某个端口的规则:

    netsh advfirewall firewall delete rule name="规则名称"

三、云平台安全组配置

云平台(如腾讯云、阿里云、AWS、华为云等)提供的安全组是一个虚拟防火墙,用于控制进出云服务器的流量。即使你在操作系统防火墙中关闭了某个端口,如果云平台安全组仍然允许该端口的访问,外部仍然可以访问该端口。

1. 登录云平台控制台

腾讯云为例:

  1. 登录 腾讯云控制台

  2. 进入【云服务器】 > 【安全组】;

  3. 选择你需要配置的安全组,点击【修改规则】。


2. 关闭不必要的端口(配置入站规则)

(1)找到需要关闭的端口

在【入站规则】选项卡中,查看当前开放的所有端口。

(2)删除或禁用对应规则

  • 找到目标端口(如 8080)的规则;

  • 点击【删除】按钮,移除该规则;

  • 或者将规则的【策略】从【允许】改为【拒绝】。

注意:如果规则较多,可以通过【筛选】功能快速定位目标端口。


3. 配置出站规则(可选)

如果你还需要限制服务器主动访问外部网络的流量,可以在【出站规则】中配置:

  • 删除或禁用与目标端口相关的出站规则;

  • 或者限制目标 IP 和端口范围。


4. 保存并应用配置

  • 修改完成后,点击【保存】;

  • 如果安全组已经绑定到云服务器实例,新规则会自动生效;

  • 如果没有绑定,需要将安全组绑定到云服务器:

    1. 在安全组页面,点击【关联实例】;

    2. 选择需要绑定的云服务器,点击【确定】。


四、验证端口是否已关闭

无论你是通过操作系统防火墙还是云平台安全组关闭了端口,都需要验证端口是否已成功关闭。

1. 使用 telnet 测试端口

安装 telnet(如果未安装):

  • Linux

    sudo yum install telnet -y       # CentOS
    sudo apt install telnet -y       # Ubuntu/Debian
  • Windows:在【控制面板】 > 【程序和功能】 > 【启用或关闭 Windows 功能】中启用 Telnet 客户端。

测试端口是否可访问:

telnet 服务器IP地址 端口号

例如:

telnet 123.123.123.123 8080
  • 如果显示 无法打开连接 或 连接失败,说明端口已成功关闭;

  • 如果显示 已连接到,说明端口仍然开放。


2. 使用 nmap 扫描端口(高级)

nmap 是一个强大的网络扫描工具,可以用来检测服务器开放的端口。

  • 安装 nmap:

    • Linux

      sudo yum install nmap -y       # CentOS
      sudo apt install nmap -y       # Ubuntu/Debian
    • Windows:从 nmap 官方网站 下载并安装。

  • 扫描目标服务器的端口:

    nmap -p 1-65535 服务器IP地址

查看输出结果,确认目标端口是否已关闭。


五、总结:关闭不必要端口的最佳实践

步骤说明
确定不必要的端口根据服务器用途,列出所有正在使用的端口,关闭其他不需要的端口
操作系统防火墙配置使用 firewalld、ufw 或 iptables 关闭目标端口
云平台安全组配置在云平台的安全组中删除或禁用目标端口的入站规则
验证端口是否关闭使用 telnet 或 nmap 测试目标端口是否仍然开放
定期检查端口使用情况定期扫描服务器端口,及时发现并关闭不必要的端口


不容错过
Powered By TOPYUN 云产品资讯