在 CentOS 上配置 MySQL 的安全设置,可以提高数据库系统的安全性
-
使用
mysql_secure_installation
脚本:在安装 MySQL 之后,可以运行
mysql_secure_installation
脚本来自动完成一些安全设置。这个脚本会引导你完成以下操作:- 设置 root 密码
- 删除匿名用户
- 禁止 root 用户远程登录
- 删除测试数据库和访问权限
- 重新加载授权表
要运行此脚本,请在命令行中输入:
sudo mysql_secure_installation
然后按照提示操作。
-
修改 MySQL 配置文件:
编辑
/etc/my.cnf
文件,以应用一些安全相关的设置。在[mysqld]
部分添加或修改以下设置:# 禁止远程 root 登录 bind-address = 127.0.0.1 # 设置最大连接数 max_connections = 500 # 设置数据目录的权限 datadir=/var/lib/mysql chown -R mysql:mysql /var/lib/mysql chmod -R 700 /var/lib/mysql
保存更改并重启 MySQL 服务:
sudo systemctl restart mysqld
-
创建新用户并授权:
为每个需要访问数据库的用户创建一个新的 MySQL 用户,并为其分配适当的权限。例如,创建一个名为
myuser
的新用户,并授予对mydb
数据库的所有权限:CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword'; GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'localhost'; FLUSH PRIVILEGES;
如果需要允许此用户从其他主机访问,将
'localhost'
替换为相应的主机名或 IP 地址。 -
定期更新和打补丁:
确保定期更新系统和软件包,以修复已知的安全漏洞。可以使用以下命令更新系统:
sudo yum update
通过以上步骤,你可以提高 CentOS 上 MySQL 的安全性。请根据实际需求调整配置设置。