因为您正在使用 MySQL 来验证用户身份,所以您需要限制对 3306 端口的网络访问。
最简单的方法是将 MySQL 仅绑定到环回接口 127.0.0.1。这确保了没有人可以通过网络连接到您的 MySQL 守护进程。
编辑/etc/init.d/mysql.server并按如下方式更改第 107 行
原始行
$bindir/safe_mysqld --datadir=$datadir --pid-file=$pid_file& |
更改行
$bindir/safe_mysqld --datadir=$datadir --pid-file=$pid_file \ --bind-address=127.0.0.1& |
通过执行命令/etc/init.d/mysql.server start重启您的 MySQL 守护进程
为了确保配置更改成功,执行 netstat -an|grep LISTEN。输出应类似于这样
bond:~ # netstat -an|grep LISTEN tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN |
只有当您在邮件服务器以外的主机上运行 MySQL 服务器时,此步骤才是必要的。这允许您从另一台主机安全连接,因为只允许从预定义的 IP 地址访问。
使用的示例来自服务 MySQL 数据库的主机的角度。假设您的邮件服务器的 IP 是 192.168.0.100,而 MySQL 主机的 IP 是 192.168.0.200
编辑/etc/rinetd.conf并添加
192.168.0.200 3306 127.0.0.1 3306 allow 192.168.0.100 |
这意味着:MySQL 主机正在 192.168.0.200 的 3306 端口上监听。如果 192.168.0.100 尝试连接,它将被转发到 127.0.0.1:3306。所有其他主机都将被拒绝。