UFW 限制指定 IP 访问 MySQL 3306 端口

1 阅读2分钟

只允许指定 IP 访问 3306 端口,拒绝所有其他 IP,这是最安全的 MySQL 防火墙配置。

一、核心命令(直接用)

1. 允许 单个指定 IP 访问 3306

运行

ufw allow from 192.168.1.100 to any port 3306 proto tcp

192.168.1.100 换成你允许访问的 IP即可。

2. 拒绝 所有其他 IP 访问 3306

运行

ufw deny 3306/tcp

3. 重载 UFW 使规则生效

运行

ufw reload

二、如果你需要 允许多个 IP

依次执行多条命令:

运行

ufw allow from 192.168.1.100 to any port 3306 proto tcp
ufw allow from 112.34.56.78 to any port 3306 proto tcp
ufw deny 3306/tcp
ufw reload

三、检查规则是否生效

运行

ufw status

你会看到类似这样的结果(表示配置成功):

3306/tcp        DENY        Anywhere
3306/tcp        ALLOW       192.168.1.100

四、常用辅助命令

开启 UFW(如果没开)

运行

ufw enable

删除一条错误规则

运行

ufw delete allow from 192.168.1.100 to any port 3306 proto tcp

清空所有 UFW 规则

运行

ufw reset

总结

  1. 先允许指定 IPufw allow from IP to any port 3306
  2. 再拒绝所有其他 IPufw deny 3306
  3. 重载生效ufw reload
  4. 查看状态ufw status

UFW 删除指定 IP 访问 3306 端口

我给你最准确、直接可用的删除命令,一步到位。

1. 直接删除指定 IP 规则(最常用)

192.168.1.100 换成你要删除的 IP 即可:

运行

ufw delete allow from 192.168.1.100 to any port 3306 proto tcp

2. 先查看规则编号,再按编号删除(更稳妥)

第一步:查看规则列表

运行

ufw status numbered

你会看到类似:

[ 1] 3306/tcp DENY IN Anywhere
[ 2] 3306/tcp ALLOW IN 192.168.1.100

第二步:按编号删除

比如要删除第 2 条:

运行

ufw delete 2

3. 删除后重载生效

运行

ufw reload

4. 确认是否删除成功

运行

ufw status

总结

  • 直接删 IPufw delete allow from IP to any port 3306 proto tcp
  • 按编号删ufw status numberedufw delete 编号
  • 生效ufw reload

切记:UFW 是从上到下匹配,只要前面允许了全网,后面 deny 就没用了。