只允许指定 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
总结
- 先允许指定 IP →
ufw allow from IP to any port 3306 - 再拒绝所有其他 IP →
ufw deny 3306 - 重载生效 →
ufw reload - 查看状态 →
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
总结
- 直接删 IP:
ufw delete allow from IP to any port 3306 proto tcp - 按编号删:
ufw status numbered→ufw delete 编号 - 生效:
ufw reload