Redis没有实现访问控制这个功能,但是它提供了一个轻量级的认证方式(密码),可以通过编辑【redis.conf】配置文件来启用认证,这里简单介绍一下Redis中如何设置、查看和校验密码(登录验证和操作时验证)。

通过配置文件修改Redis的密码

在【redis.conf】配置文件中有一个【requirepass】配置项,这个配置项就是配置Redis访问密码的参数:

requirepass yanggb

注意事项

1.修改访问密码之后要重启Redis。

2.设置的访问密码要尽可能复杂,尽可能长(正式上线)。因为Reids的查询速度是非常快的,如果一个不怀好意的外部用户想要破解密码的话,一秒钟可以尝试150K个密码,这时候只要设置的密码足够复杂足够长,就可以在一定程度上防止密码被轻易破解。

通过命令修改Redis的密码

修改Redis密码的命令是:

config set requirepass yanggb

注意事项

1.通过命令修改访问密码不需要重启Redis(即时生效)。

2.如果【redis.conf】配置文件中的【requirepass】配置项已经被配置,通过命令修改的访问密码会被记录到该参数中,这种情况下修改之后是一直有效的。

3.如果【redis.conf】配置文件中的【requirepass】配置项没有被配置,通过命令修改的访问密码不会被记录到该参数中,这种情况下重启Redis之后密码就会失效。

查询Redis的密码与权限认证

查询Redis密码的命令是:

config get requirepass

不出意外的话,会报无操纵权限的错误:(error) ERR operation not permitted。

这时候需要先进行权限认证(检验密码):

auth yanggb

再次执行前面的命令就能获取到密码了(??我知道密码还要查密码干嘛,神一样的操作)。

登录有密码校验的Redis

有密码校验的Redis需要在登录Redis的时候输入密码:

redis-cli -p 6379 -a yanggb

也可以先登录之后再进行权限认证:

redis-cli -p 6379
auth yanggb

注意事项

1.auth命令和其他Redis提供的命令一样都是没有加密的,阻止不了攻击者在网络上窃取你的密码。

总结

密码认证层的目的是提供多一层简单的保护,当防火墙或者其他用来保护Redis的系统防御外部攻击失败的时候,这层密码校验层就能有效防止无密码用户对Redis的数据访问。

"有些伤,是永远不会愈合了。"

最新文章

  1. Favorites of top 10 rules for success
  2. wamp下多域名配置问题
  3. 【jQuery基础学习】02 jQuery的DOM操作
  4. kindEditort图片自动上传
  5. zookeeper中client命令实践
  6. 安装qt5.3.2后,qtcreator在ubuntu 11.04无法启动的问题
  7. 纯真IP根据IP地址获得地址
  8. MFC特定函数的应用20160720(SystemParametersInfo,GetWindowRect,WriteProfileString,GetSystemMetrics)
  9. windows程序员进阶系列:《软件调试》之堆 (一)
  10. 3dmax使用K帧工具创建一个行走动作
  11. html doctype 作用
  12. linux 配置 sphinx 全文搜索引擎
  13. eclipse中Java代码导入包,出现main.java前缀
  14. React.js再探(三)
  15. 前端动态菜单-bootstrap-treeview
  16. J - 哈密顿绕行世界问题
  17. 高斯—若尔当(约当)消元法解异或方程组+bitset优化模板
  18. 点在多边形内算法,C#判断一个点是否在一个复杂多边形的内部
  19. POJ 3628 Bookshelf2(0-1背包)
  20. VMware安装CentOS7教程

热门文章

  1. 第十六届浙江大学宁波理工学院程序设计大赛 E 雷顿女士与平衡树(并查集)
  2. 06-Node.js学习笔记-创建web服务器
  3. Sql 中常用时间处理函数
  4. Java描述设计模式(06):建造者模式
  5. RandomAccessFile()实现用户注册功能, 新增,查询,更新
  6. 前端Vue准备工作
  7. Sql注入之limit注入的学习
  8. 微信两种签名算法MD5和HMAC-SHA256
  9. git找回丢失的代码
  10. MyBtis之关于#{}和${}