2.5 KiB
2.5 KiB
在 Redis 中,设置认证(AUTH)可以为你的 Redis 服务器增加一层安全性。通过设置密码,只有提供正确密码的客户端才能访问 Redis 服务器。以下是设置和使用 Redis 认证的步骤:
1. 修改 Redis 配置文件
首先,找到你的 Redis 配置文件(通常是 redis.conf
)。
在配置文件中,找到以下行(可能是被注释掉的):
# requirepass foobared
将其取消注释并设置一个强密码,例如:
requirepass YourStrongPasswordHere
保存配置文件并重启 Redis 服务器以使更改生效:
sudo systemctl restart redis-server
或者,如果你是手动启动 Redis 的,可以使用:
redis-server /path/to/your/redis.conf
2. 使用 AUTH 连接 Redis 服务器
当 Redis 设置了密码之后,客户端需要在连接时提供密码。以下是不同客户端的示例:
使用 redis-cli
redis-cli
> AUTH YourStrongPasswordHere
> PING
如果认证成功,PING
命令将返回 PONG
。
使用 Python 的 redis-py
import redis
r = redis.Redis(host='localhost', port=6379, password='YourStrongPasswordHere')
print(r.ping()) # 如果认证成功,将返回 True
使用 Node.js 的 ioredis
const Redis = require('ioredis');
const redis = new Redis({
host: 'localhost',
port: 6379,
password: 'YourStrongPasswordHere'
});
redis.ping().then(result => {
console.log(result); // 如果认证成功,将返回 'PONG'
});
3. 在运行时设置密码
如果你需要在运行时设置或更改密码,可以使用 CONFIG SET
命令:
redis-cli
> CONFIG SET requirepass YourNewStrongPasswordHere
请注意,使用 CONFIG SET
命令设置的密码不会持久化到配置文件中。如果 Redis 服务器重启,设置将丢失。因此,最好在 redis.conf
中设置密码以确保持久性。
4. 移除密码
如果你决定移除密码保护,可以将 requirepass
设置为空字符串:
redis-cli
> CONFIG SET requirepass ""
或者在配置文件中注释掉 requirepass
行并重启 Redis 服务器。
5. 注意事项
- 安全性:确保使用强密码,并限制 Redis 服务器的网络访问权限。
- 持久化:修改
redis.conf
文件确保密码在重启后仍然有效。 - 监控:定期检查 Redis 日志和访问记录,确保未发生未经授权的访问。
通过这些步骤,你可以为 Redis 服务器增加一层安全保护,防止未经授权的访问。