腾讯云 CVM 如何开启并配置防火墙 UFW 限制特定 IP 访问

文章导读
在腾讯云 CVM 上限制特定 IP 访问,优先建议在控制台配置安全组,其次才是实例内部开启 UFW 防火墙,两者配合使用能提供更细粒度的控制,但务必先放行 SSH 端口以防失联。
📋 目录
  1. A 命令速用版
  2. B 为什么会这样
  3. C 分步处理
  4. D 怎么验证是否生效
  5. E 常见坑
A A

在腾讯云 CVM 上限制特定 IP 访问,优先建议在控制台配置安全组,其次才是实例内部开启 UFW 防火墙,两者配合使用能提供更细粒度的控制,但务必先放行 SSH 端口以防失联。

先说结论:安全组是网络边界的第一道防线,UFW 是系统内部的补充,配置顺序错误会导致无法远程连接。

  • 先判断:确认是否需要主机层防火墙,多数场景安全组已足够。
  • 优先做:在 UFW 启用前,务必先执行允许 SSH 连接的规则。
  • 再验证:开启防火墙后,立即新开一个终端窗口测试 SSH 连接是否存活。

命令速用版

如果你已确认需要操作 UFW,以下是限制特定 IP 的核心命令,请在确保 SSH 安全的前提下执行:

ufw allow 22/tcp
ufw deny from 192.168.1.1
ufw enable

为什么会这样

腾讯云 CVM 的网络流量会先经过云平台的安全组,再进入操作系统内部。安全组属于分布式防火墙,性能损耗更低且配置生效快;UFW 则是基于 iptables/nftables 的主机防火墙。如果在 UFW 中误封了当前登录 IP 且未预留放行规则,会导致连接立即中断,且无法通过控制台 VNC 以外的方式恢复。

分步处理

1. 检查安全组规则
登录腾讯云控制台,进入云服务器实例详情页,查看“安全组”配置。确保入站规则中已放行 TCP 22 端口(SSH)或你使用的远程管理端口。如果这里没开,内部防火墙配置再好也无法连接。

腾讯云 CVM 如何开启并配置防火墙 UFW 限制特定 IP 访问

2. 安装并检查 UFW 状态
Ubuntu/Debian 系统通常预装 UFW,CentOS 默认使用 firewalld。确认安装:
ufw version
查看当前状态:
ufw status

3. 设置默认策略与白名单
建议先设置默认拒绝入站,但必须先添加允许规则。
ufw default deny incoming
ufw allow 22/tcp
注意:如果你修改了 SSH 端口,请对应修改端口号。

4. 封禁特定 IP
针对需要限制的 IP 执行:
ufw deny from 1.2.3.4
如果是封禁整个网段:
ufw deny from 1.2.3.0/24

腾讯云 CVM 如何开启并配置防火墙 UFW 限制特定 IP 访问

5. 启用防火墙
确认规则无误后启用:
ufw enable
系统会提示可能导致 SSH 中断,确认已放行 22 端口后输入 y。

怎么验证是否生效

1. 查看状态
执行 ufw status verbose,确认 Status 为 active,且能看到具体的 deny/allow 规则列表。

2. 外部测试
找一台未被封禁的机器测试 SSH 连接是否正常。再尝试用被封禁 IP 的机器发起连接(如 telnet 或 ping),观察是否超时或被拒绝。

3. 日志检查
UFW 日志通常位于 /var/log/ufw.log/var/log/syslog,可查看是否有被阻挡的记录。

腾讯云 CVM 如何开启并配置防火墙 UFW 限制特定 IP 访问

常见坑

1. 把自己关在门外
最常见错误是启用 UFW 前忘记 allow 22 端口。一旦启用,当前 SSH 会话可能不会立即断开,但重连会失败。务必保留一个已登录的会话窗口用于应急。

2. 安全组与 UFW 冲突
如果安全组拒绝了某个 IP,UFW 根本收不到这个包,日志里也不会有记录。排查问题时需同时检查控制台安全组。

3. IPv6 问题
默认情况下 UFW 可能只配置了 IPv4 规则。如果服务器启用了 IPv6,需确保 /etc/default/ufwIPV6=yes,否则 IPv6 流量可能不受控。