在CentOS系统中,为MariaDB设置防火墙规则通常涉及以下几个步骤:
1. 确认防火墙状态
首先,确保你的CentOS系统已经安装并启用了防火墙。CentOS 7默认使用firewalld
作为防火墙管理工具。
sudo systemctl status firewalld
如果防火墙未启动,可以使用以下命令启动它:
sudo systemctl start firewalld
2. 允许MariaDB端口
MariaDB默认使用3306端口。你需要确保这个端口在防火墙中是开放的。
使用firewalld添加规则
sudo firewall-cmd --permanent --zone=public --add-port=3306/tcp
然后重新加载防火墙配置以应用更改:
sudo firewall-cmd --reload
验证规则是否添加成功
你可以使用以下命令检查3306端口是否已经开放:
sudo firewall-cmd --list-all
你应该能在输出中看到类似以下的内容:
ports: 3306/tcp
3. 允许特定IP访问(可选)
如果你只想允许特定的IP地址访问MariaDB,可以使用firewall-cmd
的富规则功能。
例如,只允许IP地址为192.168.1.100
的主机访问MariaDB:
sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="3306" accept'
然后重新加载防火墙配置:
sudo firewall-cmd --reload
4. 检查SELinux设置(可选)
如果你的系统启用了SELinux,可能还需要调整SELinux策略以允许MariaDB的网络连接。
你可以临时禁用SELinux进行测试:
sudo setenforce 0
或者修改SELinux策略文件/etc/selinux/config
,将SELINUX=enforcing
改为SELINUX=disabled
,然后重启系统。
5. 重启MariaDB服务
最后,确保MariaDB服务正在运行:
sudo systemctl restart mariadb
通过以上步骤,你应该能够成功地在CentOS系统中为MariaDB设置防火墙规则。