mysql 5.7等保2.0安全配置

一、安装密码校验插件validate_password

在使用服务器插件之前,必须将它们加载到服务器中。MySQL支持在服务器启动和运行时加载插件。还可以在启动时控制加载插件的激活状态,并在运行时卸载它们。在加载插件时,可以从INFORMATION_SCHEMA获得关于插件的信息。

#查看当前mysql安装的插件信息
mysql> show plugins;
+----------------------------+----------+--------------------+---------+---------+
| Name                       | Status   | Type               | Library | License |
+----------------------------+----------+--------------------+---------+---------+
| binlog                     | ACTIVE   | STORAGE ENGINE     | NULL    | GPL     |
| mysql_native_password      | ACTIVE   | AUTHENTICATION     | NULL    | GPL     |
| sha256_password            | ACTIVE   | AUTHENTICATION     | NULL    | GPL     |
| MRG_MYISAM                 | ACTIVE   | STORAGE ENGINE     | NULL    | GPL     |
#要使服务器可用,插件库文件必须位于MySQL插件目录中(由plugin_dir系统变量命名的目录)。如果需要,通过在服务器启动时设置plugin_dir的值来配置插件目录位置。
mysql> show variables like 'plugin_dir';
+---------------+--------------------------+
| Variable_name | Value                    |
+---------------+--------------------------+
| plugin_dir    | /usr/lib64/mysql/plugin/ |
+---------------+--------------------------+
#插件库的文件名是validate_password.文件名后缀根据平台的不同而不同(例如,对于Unix和类Unix系统,.dll对于Windows)。要在服务器启动时加载插件,可以使用--plugin-load-add选项来命名包含它的库文件。使用这种插件加载方法,必须在每次服务器启动时提供该选项。例如,将这些行放到服务器my.cnf文件中(根据需要调整平台的.so后缀):
[mysqld]
plugin-load-add=validate_password.so
#服务器在启动时加载插件,并防止在服务器运行时删除插件。
validate-password=FORCE_PLUS_PERMANENT
#修改my.cnf之后,重启服务器以使新设置生效。或者,要在运行时注册插件,可以使用以下语句(根据需要调整.so后缀):
mysql> INSTALL PLUGIN validate_password SONAME 'validate_password.dll';
#查看所有插件
mysql> show plugins;
mysql> show variables like 'validate_password%';
+--------------------------------------+--------+
| Variable_name                        | Value  |
+--------------------------------------+--------+
| validate_password_check_user_name    | OFF    |
| validate_password_dictionary_file    |        |
| validate_password_length             | 8      |
| validate_password_mixed_case_count   | 1      |
| validate_password_number_count       | 1      |
| validate_password_policy             | MEDIUM |
| validate_password_special_char_count | 1      |
+--------------------------------------+--------+

在这里插入图片描述

在这里插入图片描述

二、设置跟换周期

 SET GLOBAL default_password_lifetime = 90;
mysql> show variables like  "%password%";
+----------------------------------------+-----------------+
| Variable_name                          | Value           |
+----------------------------------------+-----------------+
| default_password_lifetime              | 90              |
| disconnect_on_expired_password         | ON              |
| log_builtin_as_identified_by_password  | OFF             |
| mysql_native_password_proxy_users      | OFF             |
| old_passwords                          | 0               |
| report_password                        |                 |
| sha256_password_auto_generate_rsa_keys | ON              |
| sha256_password_private_key_path       | private_key.pem |
| sha256_password_proxy_users            | OFF             |
| sha256_password_public_key_path        | public_key.pem  |
| validate_password_check_user_name      | OFF             |
| validate_password_dictionary_file      |                 |
| validate_password_length               | 8               |
| validate_password_mixed_case_count     | 1               |
| validate_password_number_count         | 1               |
| validate_password_policy               | MEDIUM          |
| validate_password_special_char_count   | 1               |
+----------------------------------------+-----------------+

三、开启log_bin

1、 默认情况下是不开启的。
2、开启binlog:修改mysql的配置文件my.ini。添加如下配置:

server_id=2 #mysql5.7版本开启binlog强制需要添加该参数
log_bin = mysql-bin #表示开启binlog并指定binglog文件名
binlog_format = ROW #默认
expire_logs_days = 7 #binlog保留天数


重启mysql
查看日志开启状态

mysql> show variables like  "%log%";

在这里插入图片描述

select user,host from mysql.user;

在这里插入图片描述

 show variables like  "%ssl%";

在这里插入图片描述

posted @ 2022-11-21 21:20  那酒不要留  阅读(361)  评论(0编辑  收藏  举报
/* 雪花特效 */