网络知识
MySQL在Linux上如何配置防火墙
2025-07-13 14:39  点击:6

在Linux上配置MySQL防火墙可以通过使用iptablesfirewalld来实现。以下是详细的步骤:

使用iptables配置MySQL防火墙

    允许本地访问:

    sudo iptables -A INPUT -i lo -p tcp --dport 3306 -j ACCEPT

    这条命令允许本地回环接口(lo)访问MySQL端口(3306)。

    允许特定IP访问:

    sudo iptables -A INPUT -s 192.168.1.100 -p tcp --dport 3306 -j ACCEPT

    这条命令允许IP地址为192.168.1.100的机器访问MySQL端口。

    拒绝所有其他IP访问:

    sudo iptables -A INPUT -p tcp --dport 3306 -j DROP

    这条命令拒绝所有其他IP地址访问MySQL端口。

    保存iptables规则:

    sudo service iptables save

    这条命令将iptables规则保存到系统启动时自动加载。

使用firewalld配置MySQL防火墙

    安装firewalld(如果尚未安装):

    sudo apt install firewalld# 在Ubuntu上sudo yum install firewalld# 在CentOS上

    启用firewalld:

    sudo systemctl start firewalldsudo systemctl enable firewalld

    允许特定IP访问MySQL端口:

    sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="10.2.3.192" port protocol="tcp" port="3306" accept' --permanent

    这条命令允许IP地址为10.2.3.192的机器访问MySQL端口。

    重新加载firewalld配置:

    sudo firewall-cmd --reload

    查看firewalld规则:

    sudo firewall-cmd --list-all

    这条命令会列出所有的firewalld规则,以确认新规则已生效。

通过以上步骤,你可以成功配置Linux系统上的MySQL防火墙,确保数据库的安全性。根据具体需求,可能还需要进一步调整配置和设置。