Redis教程
第五章 Redis 安全策略
## 命令配置密码 ```shell CONFIG get requirepass CONFIG set requirepass "xxxxxxxxx" ``` ## 手动配置密码 您要在 Redis 的安装目录中找到配置文件,然后打开该文件,并使用搜索 requirepass 关键字,找到配置项并配置密码。然后使用更改后的配置文件重启服务器。 手动配置无须验证密码,只需要重新启动 Redis 服务器。这种配置方式,密码永远有效。如果想取消密码设置,您需要将配置文件更改回原来的状态,然后再次重启服务器,即可取消。 ## 指令安全 Redis 有一些非常危险的命令,这些命令会对 Redis 的稳定以及数据安全造成非常严重的影响。比如 keys 指令会导致 Redis 卡顿,而 flushdb 和 flushall 会让 Redis 的所有数据全部清空。如何避免这些操作失误带来的灾难性后果呢? Redis 在配置文件中提供了 rename-command 指令用于将某些危险的指令修改成特别的名称,用来避免人为误操作。比如在配置文件的 security 模块增加以下内容: ```shell rename-command keys 123keys123 ``` 如果您还想执行 keys 命令,那就需要在命令行输入123keys123。 当然也可以将指令 rename 成空字符串,这样就无法通过字符串来执行 keys 命令了。 ```shell rename-command flushall "" ``` ## 端口安全 Redis 默认监听*:6379,如果当前的服务器主机有外网地址,那么 Redis 的服务将会直接暴露在公网上,别有用心的人使用适当的探测工具就可以对 IP 地址进行端口扫描,从而威胁您的系统安全。 如果 Redis 的服务地址一旦可以被外网直接访问,其内部数据就彻底丧失了安全性。黑客们可以通过 Redis 执行 Lua 脚本拿到服务器权限,然后清空您的 Redis 数据库。因此务必在 Redis 的配置文件中绑定要监听的 IP 地址,避免类似的情况发生。如下所示: ```shell bind 193.168.1.1 #绑定外网ip地址 ``` 不仅如此,还可以增加 Redis 的密码访问限制,客户端必须使用 auth 命令传入正确的密码才可以访问 Redis。 ```shell requirepass yourspassword ``` 这样即使地址暴露出去了,普通黑客也无法对 Redis 服务器进行任何指令操作。 密码配置也会影响到主从复制。要求从机必须配置与主服务相同的密码才可以进行主从复制。 ```shell masterauth yourspassword ```
顶部
收展
底部
[TOC]
目录
第一章 Redis 简介
第二章 Redis 安装
第三章 Redis 配置
第四章 Redis 数据类型
第五章 Redis 安全策略
第六章 Redis 性能测试
第七章 Redis 数据备份和还原
相关推荐
Redis命令
Redis进阶
Redis面试题总结
PHP 操作Redis