mariadb安全配置
一、操作系统级权限检查
查看并配置数据库存放路径权限
登录数据库
mysql -u root -p
查看数据存放路径
show variables where variable_name = 'datadir';
退出 quit
查看数据库存放路径权限
ls -l /var/lib | grep mysql
建议将权限改为700
chmod 700 /var/lib/mysql
二、数据库的通用安全配置
1.删除默认的test数据库
DROP DATABASE 'test';
2.禁用local_infile参数
查看local_infile参数是否开启
show variables where variable_name = 'local_infile';
若为开启,编辑 /etc/my.cnf 文件 在mysqld一项中添加(需重启数据库方能生效)
local_infile=0
3.修改secure_file_priv参数
查看secure_file_priv参数
SHOW GLOBAL VARIABLES WHERE Variable_name = 'secure_file_priv' ;
若显示为空,表示所有路径,建议设为固定值 。编辑 /etc/my.cnf 文件 在mysqld一项中添加(需重启数据库方能生效)
secure_file_priv=/www/server
4.确定只有root用户有内置数据库mysql的权限
查看内置数据库权限
SELECT user, host FROM mysql.user WHERE (Select_priv = 'Y') OR (Insert_priv = 'Y') OR (Update_priv = 'Y') OR (Delete_priv = 'Y') OR (Create_priv = 'Y') OR (Drop_priv = 'Y');
5.查看file_priv权限,确定只有root用户有
select user, host from mysql.user where file_priv = 'Y';
6.配置允许用户登录的主机
查看当前用户可以登录的主机
select user,host from mysql.user;
更新用户允许登录的主机
update mysql.user set host="IP" where host="localhost" and user="root";