我有一个具有固定 IP 的 mysql 客户端,应该能够访问 mysql 服务器。mysql 客户端集成在软件中,只有端口、ip、用户名和密码可以修改。
在不更改 mysql 客户端的情况下保护 mysql 服务器的最佳做法是什么。
编辑: 除了端口、IP、用户名和密码之外,客户端无法进行任何更改。
目前我有这个:
/etc/mysql/my.cnf
# bind to all ip's
bind to 0.0.0.0
将端口 3306 的连接限制为 IP
iptables -I INPUT -i eth0 -p tcp --dport 3306 --src xxx.x.x.xx -j ACCEPT
丢弃所有不允许进入该端口的流量
#iptables -I INPUT -i eth0 -p tcp --dport 3306 -j DROP
答案1
最佳实践实际上并没有答案,因为这取决于很多因素。
但是,在大多数情况下,我宁愿使用 VPN 或 SSH 隧道访问服务器,而根本不暴露 MySQL 服务器,即使通过 SSL 并且仅限于客户端的 IP 地址。