网络安全完成mysql加固

一、数据库相关

1、 MySQL
版本的选择

在正式生产环境中,建议使用5.6或以上系列的版本(5.7不建议,曾经用过这个版本,问题有点多)。

2、 运行用户与端口的配置

2.1、确保MySQL运行用户为一般用户

确保mysql用户登录shell为nologin

[root@localhost ~]# usermod -s /sbin/nologin mysql

    对MySQL运行用户降权,以普通用户身份运行MySQL

    [root@localhost ~]# vim /usr/local/mysql/my.cnf
    user = mysql
    [root@localhost ~]# /etc/init.d/mysqld restart
    Shutting down MySQL.. SUCCESS! 
    Starting MySQL. SUCCESS! 
    [root@localhost ~]#

      如果是用命令启动的,则在参数后面加上--user=mysql即可。

      注意存放目录权限:

      [root@localhost ~]# chown -R mysql.mysql /data/mysql/

        按照以上操作后,mysql就会以用户mysql身份来启动mysqld,并且会以该用户身份来接受连接。以上mysql用户也可以改为其它用户。(不改变safe_mysqld是必要的。)

        2.2、修改默认端口

        建议修改默认端口3306,改为其他的一些端口。

        [root@localhost ~]# vim /usr/local/mysql/my.cnf
        [mysqld]
         port = 3389
        [root@localhost ~]# /etc/init.d/mysqld restart
        Shutting down MySQL.. SUCCESS! 
        Starting MySQL. SUCCESS! 
        [root@localhost ~]#

          3、 开启binlog

          开启mysql二进制日志,在误删除数据的情况下,可以通过二进制日志恢复到某个时间点

          3.1、登录MySQL查看bin-log状态

          登录MySQL后,输入show variables like '%log_bin%';查看到binlog日志为OFF关闭状态;

          网络安全完成mysql加固_网络安全完成mysql加固

          3.2、开启binlog

          先quit退出MySQL

          网络安全完成mysql加固_网络_02

          修改MySQL配置文件my.cnf,加入如下两行

          [root@localhost ~]# vim /usr/local/mysql/my.cnf
           server-id = 1
           log_bin = /data/mysql/mysql-bin

            网络安全完成mysql加固_数据库_03

            server-id标识着单个节点的id。在主从或者集群中会使用到,不能与其他节点相同。这里只有一台机,随机设置一个数字就好了。

            第二行指定bin-log的名字与存储路径。

            3.3、重启让配置生效
            [root@localhost ~]# /etc/init.d/mysqld restart
            Shutting down MySQL.. SUCCESS! 
            Starting MySQL. SUCCESS! 
            [root@localhost ~]#

              查看数据库日志目录:

              注意:每次服务器(数据库)重启,服务器会调用flush logs;,新创建一个binlog日志

              由于我之前重启过数据库,因此这里有mysql-bin.000001到mysql-bin.000003这三个文件。这里你们看到的应该只有mysql-bin.000001和mysql-bin.index两个文件

              网络安全完成mysql加固_json_04

              此时再次进入MySQL,查看binlog日志的状态。显示binlog日志为ON开启状态

              网络安全完成mysql加固_mysql_05

              到这里,binlog日志开启成功。

              4、 用户认证和授权

              4.1、删除匿名账号和空口令账号

              登录MySQL,查看现在的账号情况

              网络安全完成mysql加固_数据库_06

              一般我们在数据库安装之后就会删除匿名账户如下:

              mysql> dele
              评论
              添加红包

              请填写红包祝福语或标题

              红包个数最小为10个

              红包金额最低5元

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

              抵扣说明:

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

              余额充值