博文参考了老男孩老师的一些建议。
个人整理的MySQL安全方面,如下几点:
1、iptables不允许外部的访问3306端口,必须拨VPN后才允许访问
# iptables-A INPUT -s 公司的IP -p tcp -m state --state NEW -m tcp --dport3306 -j ACCEPT
2、grant授权时候不要放太大的权限,也不要给with grant option
3、每天备份数据,本地、rsync异地备份
数据量大,可以使用xtrabackup,小的话直接mysqldump即可。
可以将备份rsync同步到多个节点,存放多个副本做冗余。
4、设置管理员密码,禁止空密码登录
5、执行mysql_secure_installation
6、禁用.mysql_history文件
# 默认情况下,对MySQL操作历史都记录在这里,防止泄露
# echo‘export MYSQL_HISTFILE=/dev/null‘ >> /etc/profile
#source /etc/profile
7、及时打补丁
关注MySQL,Percona、MariaDB的博客,及时了解行业安全动向。
8、启用操作审计日志
可以使用MariDB提供的插件实现(插件下载地址https://mariadb.com/products/connectors-plugins)
本人写的相关博文(MariaDB演示的)http://lee90.blog.51cto.com/10414478/1790582
9、配置别名,禁止不加限制条件的update和delete
echo‘alias mysql="mysql -U"‘ >> /etc/profile
source/etc/profile
时间: 2024-10-07 19:28:31