打开redis端口进行远程连接

我可以在服务器上ping乒乓redis

# redis-cli ping PONG 

但远程有问题:

 $ src/redis-cli -h REMOTE.IP ping Could not connect to Redis at REMOTE.IP:6379: Connection refused 

在configuration我得到了标准端口:

 # Accept connections on the specified port, default is 6379. # If port 0 is specified Redis will not listen on a TCP socket. port 6379 

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

你有没有设置绑定选项,以允许在Redis服务器上的远程访问?

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

 bind 127.0.0.1 

 bind 0.0.0.0 

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

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

对我而言,我需要做以下工作:

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

一个简单的说明,这样做,而不进一步保护您的Redis服务器不是一个好主意,因为它可以让你打开攻击。 一定要实现AUTH或以其他方式保证这一点。 有关详细信息,请参阅http://redis.io/topics/security

1-注释掉绑定127.0.0.1

2-设置requirepass密码

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

iptables -L -n

服务iptables停止