1、使用nmap来扫描port, 一般MySQL数据库,只开放ssh 20, mysqld的port, nagios监控nrpe, zabbix监控等。
nmap -PN -p 1- 指定的IP
nmap –sS –p 1-
2、MySQL启动使用mysql用户,mysqld_safe进程为root没关系.在my.cnf的[mysqld]里配置上user=mysql
这样用于防止通过mysql来进行一些操作:如load data infile , 或者使用select * xxx outfile来向根目录导出数据。
3、注意my.cnf配置文件的权限, mysql datadir目录的权限分配为mysql.mysql 644
4、注意~/.mysql_history里有mysql user的用户名和密码信息。 可以在其他机器上使用select password() + grant xxx identified by password 'xxxx'
5、注意MySQL用户名和密码: 取消匿名用户(user='');用户密码都不为空
6、注意给MySQL用户的权限:应用程序只给到库上,限制最大连接数;不要给全局权限 : file, super, process, shutdown等关键权限管理。
7、禁用load data local file : 关闭选择项 "local_infile=OFF".
8、登录时,不要命令行写入密码,这样在history命令中能找到。
9、mysql用户的host限定要注意,如有特殊权限的,尽量限制host, root用户host使用127.0.0.1或localhost
10、skip-grant-tables 可以在编译MySQL进行关闭。
【参考】
安全工具集:ftp://coast.cs.purdue.edu/pub/tools/unix/
阅读(2339) | 评论(0) | 转发(0) |