我已将 redis-server 配置为使用带requirepass选项的密码。
运行时,redis-cli我有两个选项来访问数据库。
redis-cli -a mypassword命令。这将密码存储在 bash 历史记录中。每次运行它时,我都需要删除历史记录条目。AUTH mypassword在 redis-cli 内部使用。遗憾的是,此选项会将您的密码保存在 redis-cli 中,即使您在没有任何身份验证的情况下登录 redis-cli,也可以通过按向上箭头查看它。它确实可以在没有任何保护的情况下访问。验证 redis-cli 的正确方法是什么?
Viv*_*k.N 10
REDISCLI_AUTH您可以在调用之前在环境变量中设置密码redis-cli。设置变量后,redis-cli无需使用开关指定密码即可访问-a。将使用连接到 Redis 服务器时redis-cli设置的密码。REDISCLI_AUTH
export REDISCLI_AUTH=your_secret_password
redis-cli -h hostname -p portnumber
Run Code Online (Sandbox Code Playgroud)
您可以在 redis-cli 上输入。
redis-cli -h 1.1.1.1
1.1.1.1:6379> auth mypassword
OK
Run Code Online (Sandbox Code Playgroud)
或者您可以使用 shell 脚本。
#!/bin/bash
echo -n Password:
read -s password
redis-cli -h 1.1.1.1 -a $
Run Code Online (Sandbox Code Playgroud)
好问题!我也被这个问题搞糊涂了...
默认情况下,历史记录保存在以下文件中:$HOME/.rediscli_history. 但是,您可以通过将历史路径设置到环境变量中来更改历史文件的位置:REDISCLI_HISTFILE。特别是,如果您设置REDISCLI_HISTFILE为/dev/null,redis-cli将不会保存任何历史记录。
export REDISCLI_HISTFILE=/dev/null
| 归档时间: |
|
| 查看次数: |
15415 次 |
| 最近记录: |