打开redis端口进行远程连接

Max*_*mov 101 ubuntu redis

我可以在服务器上ping pong redis

# redis-cli ping
PONG
Run Code Online (Sandbox Code Playgroud)

但远程问题:

$ src/redis-cli -h REMOTE.IP ping
Could not connect to Redis at REMOTE.IP:6379: Connection refused
Run Code Online (Sandbox Code Playgroud)

在配置中我得到了标准端口:

# Accept connections on the specified port, default is 6379.
# If port 0 is specified Redis will not listen on a TCP socket.
port 6379
Run Code Online (Sandbox Code Playgroud)

那么也许我应该在远程ubuntu机器上打开端口6379?怎么做?

Mil*_*ous 189

您是否设置了bind选项以允许在redis服务器上进行远程访问?

之前(文件/etc/redis/redis.conf)

bind 127.0.0.1
Run Code Online (Sandbox Code Playgroud)

bind 0.0.0.0
Run Code Online (Sandbox Code Playgroud)

并运行sudo service redis-server restart以重新启动服务器.如果这不是问题,您可能需要检查可能阻止访问的任何防火墙.

重要提示:如果您不使用防火墙(iptables,ufw ..)来控制连接到正在使用的端口的用户,则任何人都可以连接到此Redis实例.不使用Redis,AUTH这意味着任何人都可以访问/更改/删除您的数据.注意安全!

  • 在配置文件中,我在字符串`bind 127.0.0.1`之后添加了字符串`bind 0.0.0.0`.重启redis.现在可以远程连接. (2认同)

Abd*_*bdo 20

对我来说,我需要做以下事情:

1-评论出来 bind 127.0.0.1

2- protected-mode改为no

3-使用iptables(https://www.digitalocean.com/community/tutorials/how-to-implement-a-basic-firewall-template-with-iptables-on-ubuntu-14-04)保护我的服务器

  • 我必须使用bind 0.0.0.0。“绑定 127.0.0.1”对我不起作用。我不需要将“保护模式”设置为“否”。警告:“绑定”之前不要留空,否则服务器将无法启动。注意:我使用的是Redis的windows端口 (2认同)

Gau*_*agi 19

绑定和保护模式都是必不可少的步骤。但是如果启用了ufw,那么您必须在 ufw 中允许 redis 端口。

  1. 检查ufw状态ufw status是否Status: active允许 redis 端口ufw allow 6379
  2. vi /etc/redis/redis.conf
  3. 更改bind 127.0.0.1bind 0.0.0.0
  4. 更改protected-mode yesprotected-mode no


bac*_*rdm 7

请注意,在不进一步保护Redis服务器的情况下执行此操作并不是一个好主意,因为它可能会让您受到攻击.一定要实现AUTH或以其他方式保护它.有关详细信息,请参见http://redis.io/topics/security.


小智 5

1-注释掉绑定127.0.0.1

2-设置 requirepass 你的密码

然后检查防火墙是否阻止了您的端口

iptables-L-n

服务 iptables 停止


Sta*_*nko 5

另一个可能有用的注释。

Redis 可以绑定到多个 IP - 当您不想将其向全世界开放 ( 0.0.0.0) 而只想使其在本地网络中可访问时,这非常有用。

  1. sudo nano /etc/redis/redis.conf
  2. 将您的本地网络 IP 添加到设置末尾bind

bind 127.0.0.1 10.0.0.1

  1. 重新启动服务:sudo service redis-server restart

现在您可以轻松地从同一网络中的其他计算机访问redis,例如 redis-cli -h 10.0.0.1

  • 嗨,这应该是最受接受的答案。尽管bind 0.0.0.0 可以工作,但即使您有防火墙,它也会使您的服务器面临安全威胁。从技术上讲,您允许连接到您的 LAN 的任何服务器或电脑访问该服务器 (2认同)