MySQL 加固方法

转载请标明出处: http://blog.csdn.net/qq9099890_moodpobuy  本文来自 CSDN 博客。x

特别是 Web 应用上, MySQL 已经成为当前网络中使用最多的数据库之一。占据了中小型应用的绝对优势。这一切都源于它小巧易用、平安有效、开放式许可、多平台,更主要的与三大 Web 语言之 — PHP 完美结合。

使得装置 MySQL 服务器成为被经常攻击的对象。更严重的被攻击之后数据库往往遭破坏,但不幸的一个缺省安全的 MySQL 会因为 root 密码为空及顺序漏洞导致被溢出。造成灾难性的后果。下面将进入为了维护数据而进行的捍卫战中。

环境要求

1 .系统环境

系统装置了 GCC 及一些其它要求的软件包,一台 Red Hat 9.0 自定义安装的服务器。比方 Apach PHP 等。装置完系统后的第一件事就是升级系统的软件包。作为 Web 服务器,系统接受 PHP 脚本的请求, PHP 则使用下面将要装置的 MySQL 数据库作为动态发布的接触。

惟一不同之处在于后面建立的 /chroot 与 /tmp 要求在同一个分区上。 分区情况的要求和一般系统差不多。

2 .安全要求

1 MySQL 运行在一个独立的 Chroot 环境下;

2 mysqld 进程运行于一个独立的用户 / 用户组下。

没有 shell 也不能用于其它顺序; 此用户和用户组没有根目录。

并使用一个复杂的密码; 3 修改 MySQL root 帐号。

4 只允许外地连接 MySQL 启动 MySQL 时网络连接被禁止掉;

5 保证连接 MySQL nobodi 帐号登陆被禁止;

6 删除 test 数据库。

装置 MySQL

1 .安装准备

依照上述平安要求需要创建一个用于启动 MySQL 用户和组。 装置 MySQL 之前。

#groupadd mysql

#useradd mysql -c "start mysqld' account" -d /dev/nul -g mysql -s /sbin/nologin

2 .编译和安装

下载 MySQL 源代码包 :

#wget http://mysql.he.net/Downloads/MySQL...l-4.0.16.tar.gz

解压缩 :

#tar -zxvf mysql-4.0.16.tar.gz

如果有特殊要求,一般把 MySQL 装置在 /usr/local/mysql 下。也可自行调整。不过这样做意义不大,因为后面将 Chroot 时只是使用这里的客户工具而已,比方 mysql mysqladmin mysqldump 等。下面就开始编译装置吧。

#./configur --prefix=/usr/local/mysql

--with-mysqld-user=mysql

--with-unix-socket-path=/tmp/mysql.sock

--with-mysqld-ldflags=-all-static

#mak && make install

#strip /usr/local/mysql/libexec/mysqld

#scripts/mysql_install_db

#chown -R root /usr/local/mysql

#chown -R mysql /usr/local/mysql/var

#chgrp -R mysql /usr/local/mysql

惟一需要解释、和一般方法不同的地方在于 --with-mysqld-ldflags=-all-stat 因为需要用到 Chroot 环境,上面各步骤的具体作用在 MySQL 手册里已有介绍。而 MySQL 自身连接成静态后就无需再创建一些库环境了

3 .配置与启动

这几个模板文件位于源文件的 support-fil 目录, MySQL 配置文件需要手工选择、拷贝几个模板文件中的一个到 /etc 下。一共 4 个: small medium larg huge

#cp support-files/my-medium.cnf /etc/my.cnf

#chown root:si /etc/my.cnf

#chmod 644 /etc/my.cnf

启动 MySQL 注意使用用户为 mysql

#/usr/local/mysq/bin/mysqld_saf --user=mysql &

4 .测试

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值