如果Redis启用了保护模式,就会出现这个错误

当连接到Redis服务器时

(错误)Redis正在受保护模式下运行,因为启用了保护模式,未指定绑定地址,未要求客户端进行身份验证密码。在这种模式下,只能接受来自回环接口的连接。如果您想从外部计算机连接到Redis,您可以采取以下解决方案之一:1)仅需禁用保护模式,通过从与服务器运行的同一主机连接到Redis的回环接口发送命令’CONFIG SET protected-mode no’,但是请确保在这样做时Redis不能通过互联网公开访问。使用CONFIG REWRITE将此更改永久化。2)或者,您可以通过编辑Redis配置文件,将保护模式选项设置为’no’,然后重新启动服务器来禁用保护模式。3)如果您仅为测试手动启动了服务器,请使用’–protected-mode no’选项重新启动它。4)设置一个绑定地址或身份验证密码。注意:您只需要执行上述其中一项操作,即可使服务器开始接受外部连接。

如果出现错误,就按照错误信息上所说的处理。

    1. 从本地主机连接,执行 CONFIG SET protected-mode no 命令

 

    1. 向配置文件中添加 protected-mode no

 

    1. 在命令行选项中指定 –protected-mode no

 

    设置绑定地址(使用配置文件中的 bind 设置?)或进行密码验证

如果不执行其中之一,就无法进行操作。

据说Redis 3.2实现了安全功能,因此Redis基本上是无防备的,除非使用密码认证,否则需要通过包过滤设置访问限制。这意味着有一些改进。

在保护模式下,很不幸许多用户未能对Redis实例进行保护,使其免受外部网络的访问。许多实例只是暴露在互联网上,拥有公共IP。因此,从版本3.2.0开始,当以默认配置(绑定所有接口)且没有密码来访问Redis时,它会进入一种特殊模式称为保护模式。在这种模式下,Redis只会回复来自回环接口的请求,并对从其他地址连接的客户端回复一个错误,解释正在发生的情况以及如何正确配置Redis。
我们希望保护模式能严重减少由于未经适当管理的未受保护的Redis实例引起的安全问题,然而系统管理员仍可以忽略Redis给出的错误并只是禁用保护模式或手动绑定所有接口。

广告
将在 10 秒后关闭
bannerAds