你好,游客 登录
背景:
阅读新闻

如何保护线上数据库、白名单与访问方便性

[日期:2017-05-25] 来源: bower——qiongbupa  作者: [字体: ]

  CTO的焦虑,线上数据通常是敏感的,但是mysql的数据库密码通常是明文,有代码权限的开发或是实习生都是可以看到线上数据库的密码的,尤其是中小型的程序。人多手杂,不论说有没有人恶意破坏,就是一个不小心,那也是灾难级的。

大数据

  那该如何是好呢?

  首先RDS 数据库实例的控制权必须在一个人手中,

  2重要的,例如线上数据库一定要加白名单,这样有数据库密码也没有用了,我从来不在意泄漏主库的密码,因为不在白名单中是无法访问的,网络就不通。

  3,在白名单的ip, 有控制权的人要少,主要人员可以有。面且此服务器中不要安装mysql客户端,只能代码级访问,要看数据库必须写代码。mysql_dump这种严格杜绝。

  4,那么如何查看线上数据呢?

  5,在非生产服务器上,安装一个mysql的客户端如phpmyadmin 此服务器ip端口要保密 端口也不要80吧 最好是一四位的端口一般人猜不到, 将此服务器加入白名单。

  6,这样一来,只要知道这个IP 所有有数据库密码的人不就都可以访问了么?当然不能,要在nginx层加一道htpasswd的限制

  这样要动线上数据 必须知道phpmyadmin的IP ,还要知道端口,还要知道htpasswd 当然还要知道线上数据库的地址,用户名 和密码了。

  我的经验,测试服务器一定不要有生产数据库的访问权 从白名单中干掉





收藏 推荐 打印 | 录入:elainebo | 阅读:
本文评论    (0)
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款