MySQL 安全审计、容灾备份、数据恢复

0x00 信息系统安全实验报告

实验六:基于mysql8实现数据库安全审计、容灾备份、数据恢复实验

环境准备:

Linux操作系统:ubuntu或centos
数据库版本:mysql 8.0或以上版本

1、 数据库主从配置
2、 数据库备份
3、 数据库恢复
4、 数据库安全策略设置
5、 数据库安全审计
6、 数据库安全基线检查

0x01 环境准备

更换国内源:

su root # 切换至root用户
cp /etc/apt/sources.list /etc/apt/sources.list.bak # 备份源文件
vim /etc/apt/sources.list # 更改源文件
Esc # vim命令行模式
ggdG # 删除原内容
# copy以下内容
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security multiverse
:wq # 保存并退出

在这里插入图片描述

sudo apt update # 刷新软件源信息

在这里插入图片描述

su root # 切换至root用户
apt install mysql -server # 下载并安装mysql服务
service mysql start # 启动服务
mysql # 进入mysql
exit # 离开mysql

在这里插入图片描述
在这里插入图片描述

0x02 主从配置

MySQL数据库进行主从配置后,可以实现数据库的备份。同时应用也可以实现读写分离,提高应用的并发量。
在这里插入图片描述
https://www.cnblogs.com/atcloud/p/10773855.html

vim /etc/mysql/mysql.conf.d/mysqld.cnf # 更改配置文件[mysqld]下加入
server-id=1
log-bin=master-bin
:wq # 保存并退出
service mysql restart # 配置完成后重启服务

在这里插入图片描述
创建用于从服务器同步数据使用的帐号:

mysql # 进入mysql
GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' identified by 'slave'; 
FLUSH PRIVILEGES; # 刷新授权表信息

获取主节点当前binary log文件名和位置position:

SHOW MASTER STATUS;

在这里插入图片描述
在从slave节点上设置主节点参数:

CHANGE MASTER TO MASTER_HOST='localhost',MASTER_USER='slave',MASTER_PASSWORD='slave',
MASTER_LOG_FILE='master-bin.000001',MASTER_LOG_POS=154;

在这里插入图片描述

0x03 容灾备份

mysql # 进入mysql
show databses;
exit # 离开mysql 
mysqldump -u root -p mysql > /home/i0clay/桌面/mysql.bak.sql

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

0x04 数据恢复

mysql # 进入mysql
drop database mysql;
show databses;
create database mysql;
mysql -u root -p mysql < /home/i0clay/桌面/mysql.bak.sql
use mysql;
show tables;

在这里插入图片描述
在这里插入图片描述

0x05 安全策略

5.7版本已经不再使用password来作为密码的字段,而改成了authentication_string。

mysql # 进入mysql
use mysql;
update user set authentication_string='' where user='root'; # 置空
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root'; # 更改
flush privileges; # 刷新

实际环境中需要将密码设置为强口令。

set authentication_string for root@localhost = password('iO@c1ay');
mysql -u root -p # 使用root账号进入mysql
iO@c1ay # root账号的密码
vim /etc/mysql/mysql.conf.d/mysqld.cnf
在[mysqld]下
bind-address=127.0.0.1 # 禁止远程连接,仅监听本地
port=3456 # 更改mysql服务端口
:wq
service mysql restart # 重启mysql服务

在这里插入图片描述
查看并修改用户权限:

show grants for root@localhost;

在这里插入图片描述
授权用户权限:grant 权限 on 权限范围 to 用户;

回收权限:revoke 权限 on 范围 from 用户;

0x06 安全审计

show global variables like "%general%";
set global general_log="on";

在这里插入图片描述

0x07 安全基线

vim /etc/mysql/mysql.conf.d/mysqld.cnf
[mysqld]
local-infile=0 # 禁用local-infile选项
log-error=/ # 确保配置了log-error
# skip_grant_tables # 该选项会跳过mysql的权限验证,故将其注释
:wq
service mysql restart # 重启mysql服务
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值