Mysql加固--Centos(基础中的基础吧)

Posted hangoverqing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql加固--Centos(基础中的基础吧)相关的知识,希望对你有一定的参考价值。

其实摸了这么久加固真觉得就mysql和iptables难点其他没什么。呜呜呜呜呜……但我这个渣渣学攻击快学崩掉辽(emo),因为讲真网络安全是很多东西组合在一块得看你怎么学了

 一.安装Mysql

yum -y install mysql mysql-server

  

二.开启mysql服务

service mysqld start

 

三.查看mysql服务的状态

service mysqld status

 

(正常来说应该是3306我也不知道怎么变成3106了

☆☆☆☆☆

 刚装好的mysql一般无密码可直接进入

mysql -u root -p

 设置密码并进入

mysqladmin -u root password '设置你的密码'

mysql -u root -p

☆☆☆☆☆ 

 四.Mysql基础命令!!!(在mysql里面执行命令“;”很重要!)

1.查看数据库

show databases;

  

2.使用某个数据库

use +数据库名;

 

3.查看表(前提是要先进入数据库)

show tables;

4.查看表结构

describe +表名;

 

5. 删除某个数据库

drop database +数据库名;

6.新建用户

create user '用户名'@'localhost' identified by '密码';

 

7.查看用户表

select user,host from mysql.user;

 

8.删除用户

drop user '用户名'@'localhost';

 

9.刷新权限(例如你改了某个用户密码或者给予了某些权限可以刷新)

flush privileges;

 10.显示表中的所有记录(表在库中)

select * from +表名;

五.例题

1.对忘记mysql数据库root管理员密码进行重置操作

vim /etc/my.cnf

#在[mysqld]下面加入

skip-grant-tables(跳过权限检查启动)

#然后

service mysqld restart

mysql –u root –p

use mysql;

update user set password=password(“新密码”) where user=”root”;

flush privileges;  #(刷新权限)

 

 

 

2.赋予user1用户对数据库所有表只有select,insert,delete,update权限

mysql –u root -p

grant select,insert,delete,update on 数据库名.* to user1@’locaolhost’;

show grants for ‘user1’@’localhost’;

3.禁用LOCAL INFILE命令防止非授权用户访问本地文件

vi /etc/my.cnf

#在[mysqld]下面加入

set-variable=local-infile=0

 

4.为防止数据库操作信息泄露,请禁止使用mysql命令行历史记录

rm –f $HOME/.mysql_history

ln –s /dev/null $HOME/.mysql_history

 

5.为分析数据库运行过程中的一些异常活动,请开启mysql二进制日志

vi /etc/my.cnf

#在[mysqld]下面加入

log-bin=mysql-bin

#然后

service mysqld restart

mysql -u root -p

show variables like ‘log_bin’;

 

 

 

6.使用mysql内置MD5加密函数加密用户user1的密码为(P@ssw0rd1!),并查看用户user1密码

vim /etc/my.cnf

#在[mysqld]下面添加

skip-grant-tables

#然后

service mysqld restart

mysql –u root –p

use mysql;

update user set password=md5(password) where user=”user1”;

select password from user where user=’uesr1’;

 

 

7.以普通账户mysql安全运行mysql,禁止mysql以管理员账号权限运行

vi /etc/my.cnf

#在[mysqld]下面加入

user=mysql

8.改变默认mysql管理员用户为:SuperRoot

mysql –u root –p

use mysql; 

update user set user=”SuperRoot” where user=”root”;

9.删除默认数据库test,然后使用show databases;命令查看当前的数据库信息

mysql –u root –p

show databases;

drop database test;

select database();

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

vim /etc/my.cnf

#在[mysqld]下面添加

skip-show-database

11.创建一个新的mysql数据库用户(grant语句)

mysql -u root -p

use mysql; 

grant all on *.* to '用户名'@'localhost' identified by '密码';

以上是关于Mysql加固--Centos(基础中的基础吧)的主要内容,如果未能解决你的问题,请参考以下文章

MYSQL基础加固——SQL 的约束

MYSQL基础加固——SQL的介绍及MySQL的安装

CentOS7一键安全加固及系统优化脚本

Mysql的基础使用之MariaDB安装

javascript基础加固2—-语法1

javascript基础加固3—-语法2