在Linux上配置MySQL防火墙,你需要确保MySQL服务器只接受来自受信任的IP地址的连接。以下是一些步骤来配置MySQL防火墙:
确定MySQL监听的端口:
默认情况下,MySQL监听3306端口。你可以通过查看MySQL配置文件(通常是/etc/mysql/my.cnf或/etc/my.cnf)来确认这一点。
配置防火墙规则:
根据你使用的防火墙工具(如iptables、firewalld、ufw等),添加规则以允许来自特定IP地址的连接。
使用iptables:
sudo iptables -A INPUT -p tcp --dport 3306 -s <trusted_ip_address> -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 3306 -j DROP
将<trusted_ip_address>替换为允许连接MySQL服务器的IP地址。
使用firewalld:
sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="<trusted_ip_address>" port protocol="tcp" port="3306" accept'
sudo firewall-cmd --reload
将<trusted_ip_address>替换为允许连接MySQL服务器的IP地址。
使用ufw:
sudo ufw allow from <trusted_ip_address> to any port 3306
sudo ufw reload
将<trusted_ip_address>替换为允许连接MySQL服务器的IP地址。
重启MySQL服务(可选): 有时,重启MySQL服务可以确保新的防火墙规则生效。
sudo systemctl restart mysql
验证配置: 确保防火墙规则已经正确应用,并且MySQL服务器只接受来自受信任的IP地址的连接。
使用iptables:
sudo iptables -L -n | grep 3306
使用firewalld:
sudo firewall-cmd --list-all | grep 3306
使用ufw:
sudo ufw status | grep 3306
通过以上步骤,你可以确保MySQL服务器只接受来自受信任的IP地址的连接,从而提高安全性。