您的当前位置:网络安全首页/

您的位置:网络安全首页 / 安全管理 / MySQL安全的二十三条军规(2)

MySQL安全的二十三条军规(2)

ZDNet 网络安全频道 更新时间:2007-10-22 作者:51CTO.COM 来源:

本文关键词:MySQL 漏洞攻击 拒绝服务 数据库

  14.学会使用tcpdump和strings工具来查看传输数据的安全性,例如tcpdump -l -i eth0 -w -src or dst port 3306 | strings。以普通用户来启动mysql数据库服务;

  15.不使用到表的联结符号,选用的参数 --skip-symbolic-links;

  16.确信在mysql目录中只有启动数据库服务的用户才可以对文件有读和写的权限;

  17.不许将process或super权限付给非管理用户,该mysqladmin processlist可以列举出当前执行的查询文本;super权限可用于切断客户端连接、改变服务器运行参数状态、控制拷贝复制数据库的服务器;

  18.file权限不付给管理员以外的用户,防止出现load data '/etc/passwd'到表中再用select 显示出来的问题;

  19.如果不相信DNS服务公司的服务,可以在主机名称允许表中只设置IP数字地址;

  20.使用max_user_connections变量来使mysqld服务进程,对一个指定帐户限定连接数;

  21.grant语句也支持资源控制选项;

  22.启动mysqld服务进程的安全选项开关,--local-infile=0或1 若是0则客户端程序就无法使用local load data了,赋权的一个例子grant insert(user) on mysql.user to 'user_name'@'host_name'若使用--skip-grant-tables系统将对任何用户的访问不做任何访问控制,但可以用mysqladmin flush-privileges或mysqladmin reload来开启访问控制;默认情况是show databases语句对所有用户开放,可以用--skip-show-databases来关闭掉。

  23.碰到Error 1045(28000) Access Denied for user 'root'@'localhost'(Using password:NO)错误时,你需要重新设置密码,具体方法是:先用--skip-grant-tables参数启动mysqld,然后执行mysql -u root mysql,mysql>update user set password=password('newpassword') where user='root';mysql>Flush privileges;,最后重新启动mysql就可以了。

用户评论

  • 用户名
  • 评论内容
技术关注
当前技术类目:
其他系统本类技术关注比例:
17安全关注排行:171
48企业级技术关注度:48--

其他系统技术相关文章:

文章类型收录数量
1 其他系统的解决方案:

网络安全频道 漏洞攻击 最新报道

网络安全频道 拒绝服务 最新报道

网络安全频道 数据库 最新报道

爱卡汽车网 | CNET科技资讯网 | CWEEK | 蜂鸟网 | GameSpot China | 个人电脑 | 开发者在线 | PChome | Solidot | SPN |
投影顾问网 | 万维家电网 | 网友世界 | 西域IT | ZDNet China | 中关村在线 | 中小企业成长网
CNET Networks
Copyright © 1997-2007 CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号