mysql攻防与加固_MYSQL数据库攻防与加固

MYSQL数据库攻防与加固

练习环境:DCST-6000-N10mysql加固

任务内容:

1.配置lnux-mysql防火墙,允许mysql服务能够被访问

执行命令 iptables –l RH –Firewall-1-INPUT 11 –p tcp –dport 3306 –j ACCEPT

执行命令 iptables –L

82d16470322cc65d22dc2f369b57bfca.png

发现已经允许mysql服务被访问

2.访问DCST中的MysqlServer,在/var/log目录下创建access.log文件,并修改mysql的配置文件,使其能够记录所有的访问记录

首先创建记录日志的文件

#touch /var/log/access.log

cf38cd3bf8efac04a1f10d3ab9d0d954.png

一般mysql的配置文件的路径是/etc/my.cnf,我们也可以通过命令来查找配置文件

#find –name ‘my.cnf’

f6220860dc175d9b4ae33ea95f353836.png

接下来修改mysql的配置文件my.cnf,将访问记录保存到access.log中

#vi /etc/my.cnf

#log=/var/log/access.log

c36f65b42d87c5b88371ed732a6df3b0.png

执行命令 /etc/init.d/mysqld restart 重启mysql服务

3.进入mysql数据库,找到可以从任何IP地址进行访问的用户

终端输入mysql启动mysql客户端

d2121aee43e7efbba405ebc59a508fda.png

执行命令 mysql>use mysql 使用mysql数据库

22f951d82d248277167a93cbe2b91314.png

执行命令 mysql>select host,user from user; 查看mysql数据库里的所有用户权限

36c510df9c5f2af9262e5222e0a89c1b.png

发现test用户可以从任意地点访问

4.对题号3中的漏洞进行加固,删除可以任意IP地址进行访问的用户

执行命令 mysql>delete user from user where user=”test”; 删除test用户

执行命令 mysql>flush privileges; 避免重启数据库来让我们之前所作的修改生效

执行命令 mysql>select host,user from user;来查看一下,发现用户已经删除

8682a8daafc567949d95849b7b685e3c.png

如果设定该用户只能从特定IP访问,在mysql客户端用grants命令进行管理

执行命令–:mysql>GRANT ALL ON . TO test@IP地址 IDENTIFIED BY “” WITH

GRANT OPTION

这个命令也可以用来新建用户名,by后面加的是账户密码

d58791799f4955a311fce8184a414f4f.png

5.检查是否存在匿名用户,如果存在匿名用户,则加固删除 ,将执行加固命

执行命令 mysql>select host,user from user where user=””;来寻找匿名用户

12e9ef402c7415208abb7997cd92d91f.png

发现有两个匿名用户

执行命令 mysql>delete user from user where user=””; 删除匿名用户

f4cef4ebd0c304bdb5a823a3793e4b25.png

执行命令 mysql>flush privileges; 避免重启数据库来让我们之前的修改生效

执行命令 mysql>select host,user from user ;查看用户表发现匿名用户已经被删除

7be8380cb280a6305e22b50ca56da9ab.png

6.改变默认mysql管理员的名称,将默认管理员root改为admin

执行命令 mysql>use mysql; 使用mysql数据库

执行命令 mysql>update user set user=”admin” where user=”root”;将root修改为admin

执行命令 mysql>select host,user from user; 发现root已经改名为admin

66b3fab9e964067f45ea5dd1628edad5.png

7.禁止mysql对本地文件进行存取,对mysql的配置文件进行修改

在mysql操作界面下输入\q、exit或者quit退出mysql

执行命令 vi /etc/my.cnf

增加语句 set –variable=local-infile=0

79a3f3f99d8e19c089bdf953f4566eba.png

执行命令 /etc/init.d/mysqld restart 重启mysql服务

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

执行命令 vi /etc/my.cnf

增加语句 skip-show-database

4980836ae884f4ab39651e2cde9d65e1.png

执行命令 /etc/init.d/mysqld restart 重启mysql服务

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值