Mysql安全设置案例二

1. 进入xserver-mysql, 加固MySQL服务器,使所有的访问能被审计,要求通过对mysqld的启动项进行加固

设定审计文件为/var/log/mysql/access.log

#cd /etc/

# vi my.cnf

下面红色标记部分为增加的日志选项,重新启动后起作用

MYSQL数据库攻防与加固

2. 配置Linux 防火墙,允许MySQL服务能够被访问,要求规则中只包含端口项

1

2

3

4

5

# iptables -A INPUT -p tcp --dport 3306 -j ACCEPT

#iptables -nL --line  #以标号的形式显示出来

#service iptables save     #你应该保存一下,小伙子

3. 进入xserver-mysql,查看所有用户及权限,找到可以从任何IP地址访问的用户

Mysql>use mysql;

Mysql>select host,user from user;

MYSQL数据库攻防与加固

4. 对题号3中的漏洞进行加固,设定该用户只能从公司PC-1访问,用grants 命令进行管理。

Mysql>GRANT ALL ON *.* TO [email protected]   IDENTIFIED BY “” WITH GRANT OPTION;

5. 检查xserver-mysql中的是否存在数据库匿名用户,如果存在数据库匿名用户,则删除该用户,将发现的数据库匿名用户信息以及删除过程

mysql>use mysql;

mysql> select host,user from user where user=””;

MYSQL数据库攻防与加固

MYSQL数据库攻防与加固

mysql>flush privileges;    #记得刷新权限啊小伙子!

6. 改变默认MySQL管理员的名称,将系统的默认管理员root 改为admin,防止被列举,将执行过程

1

2

3

4

5

mysql>use mysql;

mysql> update  user set  user="admin" where user="root";

mysql>flush privileges;

7. 禁止MySQL对本地文件进行存取,对mysqld 的启动项进行加固

#cd /etc/

# vi my.cnf

下面红色框中为增加的本地文件存取的限制语句,重新启动后起作用

增加语句为

set-variable=local-infile=0

MYSQL数据库攻防与加固

#/etc/init.d/mysqld stop

#/etc/init.d/mysqld start

8. 限制一般用户浏览其他用户数据库,对mysqld 的启动项进行加固

跟上边一样,配置文件增加配置项,增加语句为

skip-show-database

#/etc/init.d/mysqld stop

#/etc/init.d/mysqld start

猜你喜欢

转载自blog.csdn.net/wz_cow/article/details/82377503