使用iptables设置防御MySQL攻击,可以采取以下步骤:
sudo iptables -A INPUT -p tcp --dport 3306 -j DROP
这条命令会阻止所有尝试通过TCP协议访问3306端口的流量。
sudo iptables -A INPUT -p tcp --dport 3306 -m state --state NEW -m recent --set
sudo iptables -A INPUT -p tcp --dport 3306 -m state --state NEW -m recent --update --seconds 60 --hitcount 5 -j DROP
第一条命令会创建一个新的规则,记录所有尝试连接到3306端口的流量。第二条命令则会根据记录的流量信息,如果某个IP地址在60秒内尝试连接超过5次,就将其加入黑名单并阻止其后续的连接尝试。
sudo iptables -A INPUT -p tcp -s 192.168.1.100 --dport 3306 -j ACCEPT
sudo ufw enable
sudo ufw allow 3306/tcp
在CentOS/RHEL系统上,你可以使用以下命令启用并配置firewalld防火墙:
sudo systemctl enable firewalld
sudo firewall-cmd --permanent --add-service=mysql
sudo firewall-cmd --reload
请注意,以上命令仅供参考,具体配置可能因系统版本和需求而有所不同。建议在进行任何更改之前备份重要数据,并仔细阅读相关文档或咨询专业人士的意见。