将Redis设置为局域网/公网访问模式的配置(必须设密码)

社区话题 Linux/macOS 与自动化运维 将Redis设置为局域网/公网访问模式的配置(必须设密码)

正在查看 2 条回复
  • 作者
    帖子
    • #1114

      追光
      管理员

      在宝塔面板中将 Redis 设置为局域网或公网访问模式,需要修改两个关键配置:Redis 本身的绑定地址 和 宝塔防火墙/安全组规则。以下是详细步骤:

      1. 宝塔 → Redis 设置 → 配置修改

      修改 bind 127.0.0.1 →
      局域网:bind 127.0.0.1 192.168.x.x(填内网IP)
      公网:bind 0.0.0.0(⚠️仅限必要场景)
      改 protected-mode yes → protected-mode no

      2. 必须添加密码(核心!无密码无法启动远程访问)

      添加一行:requirepass 你的强密码(如 MyRedisPass123!)

      3. 保存 → 重启 Redis

      4. 开放端口
      宝塔防火墙 → 放行 6379
      云服务器安全组 → 开放 6379(公网需限制源IP)

      5. 测试连接
      bash
      redis-cli -h IP -p 6379 -a 你的密码 ping

      → 返回 PONG 即成功

    • #1116

      追光
      管理员

      ✅ 精简补充:maxmemory-policy 必须设置

      conf

      maxmemory-policy allkeys-lru

      ? 必要性:
      Redis 内存用满时,默认行为是拒绝写入(OOM),可能导致服务崩溃或应用报错。

      ? allkeys-lru 含义:
      自动删除最久未使用的键(Least Recently Used),释放内存,保障服务持续运行。

      ? 建议场景:
      用于缓存、会话存储等可丢失数据
      生产环境必须设置,避免因内存耗尽导致 Redis 宕机

      ? 一句话总结:
      没设 maxmemory-policy = 等着宕机!生产环境必配 allkeys-lru 或 volatile-lru。

    • #1117

      追光
      管理员

      ✅ 精简版:仅作缓存使用,关闭持久化

      conf

      save ""
      appendonly no

      ? 作用:

      save ""  禁用 RDB 快照
      appendonly no  禁用 AOF 日志

      ? 为什么?
      你只当 Redis 是纯内存缓存(如会话、临时数据),无需持久化,关闭后:
      性能提升 20%+
      减少磁盘 I/O 和 SSD 磨损
      避免重启时加载大文件拖慢启动

      ? 前提:
      ✔ 数据可丢失 ✅
      ✔ 有应用层容错机制 ✅
      ✔ 仅用于高速缓存 ✅

      ? 终极配置组合(当作公共缓存服务器专用):
      conf

      bind 0.0.0.0
      protected-mode no
      requirepass 你的强密码
      maxmemory-policy allkeys-lru
      save ""
      appendonly no

      → 重启生效,安全、高效、无磨损。

正在查看 2 条回复
  • 在下方一键注册,登录后就可以回复啦。