Redis 密码设置

现象:

原因:

一、通俗解释报错原因

Redis 为了安全,默认情况下:

  1. 只允许本机(服务器自己)连接,拒绝外部连接。
  2. 如果你没有给 Redis 设置密码,它会强制开启保护模式
  3. 你的 Go 代码(运行在服务器上)虽然是本地访问,但因为时间问题修复后,Redis 的连接策略变了,导致代码连接被拒绝,服务启动失败。

二、怎么解决?(两种方案)

方案一:临时关闭保护模式(最快,推荐先试)

登录服务器终端,执行两条命令,马上修复:

bash 复制代码
# 1. 临时关闭保护模式(重启 Redis 后失效,用于快速恢复服务)
redis-cli CONFIG SET protected-mode no

# 2. 重启你的 CoinClient 服务
sudo supervisorctl restart ExchangeApi-CoinClient
方案二:永久设置密码(安全,推荐生产环境用)

如果你对外暴露了 Redis 端口,必须设置密码,否则很容易被攻击。

bash 复制代码
# 1. 登录 Redis
redis-cli

# 2. 设置密码(临时生效,重启失效)
127.0.0.1:6379> CONFIG SET requirepass "你的新密码"

# 3. 或者直接修改配置文件(永久生效)
# 打开配置文件
sudo vi /etc/redis/redis.conf
# 找到 # requirepass foobared,去掉注释改成 requirepass 123456(密码自己定)
# 重启 Redis
sudo systemctl restart redis

你想永久关闭 Redis 的保护模式(或永久解除连接限制),核心是修改 Redis 配置文件并重启,这样即使服务器 / Redis 重启,设置也不会失效。我给你两种永久解决方案(选一种即可),兼顾「便捷性」和「安全性」:

方案三:永久关闭保护模式(最简单,适合内网服务器)
操作步骤:
1.编辑 Redis 配置文件
bash 复制代码
# Ubuntu/Debian 系统
sudo vi /etc/redis/redis.conf

# CentOS/RHEL 系统(如果是这个系统,路径不同)
sudo vi /etc/redis/6379.conf
2.找到并修改保护模式配置

在配置文件中搜索 protected-mode(按 /protected-mode 快速搜索),找到这一行:

bash 复制代码
protected-mode yes  # 默认是 yes(开启)

改成:

bash 复制代码
protected-mode no  # 永久关闭保护模式
3.重启 Redis 使配置生效
bash 复制代码
# Ubuntu/Debian
sudo systemctl restart redis

# CentOS/RHEL
sudo systemctl restart redis-server
4.验证是否生效
bash 复制代码
redis-cli CONFIG GET protected-mode
相关推荐
草莓熊Lotso4 分钟前
手搓工业级 C++ 线程安全日志系统:基于策略模式解耦,兼容 glog 使用风格
linux·运维·服务器·数据库·c++·安全·策略模式
2402_854808374 分钟前
c++ RAII机制详解 c++如何利用RAII管理资源
jvm·数据库·python
吕源林5 分钟前
CSS如何使用Less的Merge功能合并多个属性值_通过逗号或空格组织css参数
jvm·数据库·python
qq_330037996 分钟前
Go语言如何写负载均衡器_Go语言负载均衡器实战教程【完整】
jvm·数据库·python
2501_914245937 分钟前
如何验证SQL删除操作的影响行数_通过ROW_COUNT获取反馈
jvm·数据库·python
2301_816660217 分钟前
如何处理DG Broker的ORA-16664错误_主备库网络通信与TNS配置排查
jvm·数据库·python
2401_835956819 分钟前
mysql如何配置用户只读权限_授予SELECT权限与限制操作
jvm·数据库·python
weixin_4087177710 分钟前
HTML怎么标注成就连续打卡中断_HTML“断连,重新开始”提示【方法】
jvm·数据库·python
m0_7436239210 分钟前
怎么通过Navicat快速实现离线模式下使用云端资源_企业协同实战指南
jvm·数据库·python
tjc1990100512 分钟前
MySQL数据插入报错数据截断_检查字段长度与数据类型
jvm·数据库·python