宝塔面板里给 MySQL 改成只允许本机访问的做法
【摘要】 MySQL 默认可能对外监听,数据库暴露公网风险很大。本文记录在宝塔面板里把 MySQL 改成只允许本机访问的几个步骤和验证方法。
用宝塔面板搭站的时候,MySQL 默认可能是对外监听的,如果云服务器安全组又恰好放开了 3306,数据库就直接暴露在公网上,很容易被人扫描爆破。其实只需要几步,就可以让 MySQL 只允许本机访问。
一、先确认当前监听情况
登录服务器,执行下面的命令看看 3306 绑定在哪个地址:
ss -lntp | grep 3306
如果看到的是 0.0.0.0:3306,说明对外监听;如果是 127.0.0.1:3306,就已经只允许本机访问了。
二、修改 MySQL 配置
- 在宝塔面板左侧打开「软件商店」,找到已安装的 MySQL,点「设置」。
- 进入「配置修改」,找到 [mysqld] 段落。
- 把 bind-address 改成 127.0.0.1,如果没有这一行就手动加上。
- 保存后回到「服务」页,点「重启」让配置生效。
三、关闭端口和限制访问权限
- 在宝塔面板「安全」页面,把 3306 端口的放行规则删掉。
- 云厂商控制台的安全组里,同样不要放行 3306。
- 在 MySQL 设置的「权限」里,把数据库访问权限改成「本地服务器」,不要选「所有人」。
四、验证
重启之后再执行一次 ss -lntp | grep 3306,确认变成 127.0.0.1:3306,再从外部机器尝试连接,应该连不上。本机上的网站程序仍然通过 127.0.0.1 连接,不受影响。
小结
如果数据库只给本机上的网站使用,没有必要对外开放。需要远程管理时,可以用 SSH 隧道或者宝塔自带的 phpMyAdmin,比直接开放 3306 安全得多。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)