Linux下MySQL数据库安全配置指南.doc
文本预览下载声明
Linux下MySQL数据库安全配置指南
目 录
1 MySQL数据库安装 3
2 安装后的安全设置 3
3 日常管理安全提示 4
3.1 登陆MySQL服务器时保护密码 4
3.2 使用SSL登陆MySQL服务器 4
3.3 保证数据文件安全 5
3.4 正确配置用户权限 5
3.6 密码丢失后重新设置 6
3.7 MySQL服务端mysqld_safe安全相关的选项 6
Linux下MySQL数据库安全配置指南
操作系统:Redhat Linux Enterprise Linux 5
MySQL版本:5.0.22-2.1
MySQL数据库安装
请以root登陆、或使用su命令取得root之执行权限
插入Redhat Linux Enterprise Linux 5 Disk 2
挂载光驱,此处实例光驱路径为/dev/hdc
#mount /dev/hdc /mnt
进入RPM包所在目录
#cd /mnt/Server/
安装MySQL及其依赖包
#rpm -ivh perl-DBI-1.52-1.fc6.i386.rpm
#rpm -ivh mysql-5.0.22-2.1.i386.rpm
#rpm -ivh perl-DBD-MySQL-3.0007-1.fc6.i386.rpm
#rpm -ivh mysql-server-5.0.22-2.1.i386.rpm
数据库安装完毕以后,启动数据库进程
#/etc/init.d/mysqld start
检验数据库实例是否成功运行,查看是否监听端口3306
#netstat -an|grep 3306
安装后的安全设置
数据库超级用户root 的初始密码为空,故需要即刻修改
以root之身份登陆数据库
#mysql -u root -p
修改密码,示例密码为mypasswd
mysqlupdate mysql.user set password = password(‘mypasswd’)where user=’root’;
mysql commit;
mysql flush privileges;
删除系统默认存在的匿名用户
#delete from user where user=
删除系统默认示例数据库test
mysql drop database test;
日常管理安全提示
登陆MySQL服务器时保护密码
使用MySQL客户端登陆MySQL服务器有多种方式。
这种方式将密码明文暴露,并且会在~/.bash_history文件中留下记录,易遭窃取。
#mysql -u root –p mypasswd 请使用一下的形式。在MySQL提示输入密码时方输入密码。
#mysql -u root –p
使用SSL登陆MySQL服务器
必要时,可以使用安全套接字连接登陆服务器。或使用SSH登陆。
#mysql –u root –p –ssl
保证数据文件安全
在Redhat Enterprise Linux中MySQL的数据文件默认存放于/var/lib/mysql/目录中。请确认目录的权限设置正确,只有被允许的用户才有读取与写入的权限。如下面的展示的目录,mysql以及test库数据文件存放目录的权限为700(drwx------),意味着其他用户没有读写权限,保证了数据安全。
#cd /var/lib/mysql/
# ls -l
total 20552
-rw-rw---- 1 mysql mysql Jul 14 18:08 ibdata1
-rw-rw---- 1 mysql mysql 5242880 Jul 14 18:08 ib_logfile0
-rw-rw---- 1 mysql mysql 5242880 Jul 14 18:08 ib_logfile1
drwx------ 2 mysql mysql 4096 Jul 14 18:08 mysql
srwxrwxrwx 1 mysql mysql 0 Jul 14 18:08 mysql.sock
drwx------ 2 mysql mysql 4096 Jul 14 18:08 test
正确配置用户权限
使用MySQL提供的GRANT以及REVOKE语句控制用户权限。除管理员以外,其他用户帐号不能具有访问mysql库的权限.
保证~/.mysql_history文件安全
在每个用户home目录下都会产生.mysql_history文件,以保存在MySQL中执行SQL语句的历史记录。请确认该文件的权限为700。如果权限非700,可以用一下命令设置:
#c
显示全部