当前位置: 首页>>技术教程>>正文


ubuntu – 打开redis端口进行远程连接

,

问题描述

我可以在服务器上乒乓Redis

# redis-cli ping
PONG

但是有很多问题:

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

在配置中,我有标准端口:

# 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停止

第五种答案

步骤1:转到位置:/etc/redis.conf

步骤2:发出绑定127.0.0.1

步骤3:重新启动Redis:-sudo systemctl启动redis.service

步骤4:禁用Firewalld systemctl禁用firewalld

步骤5:停止防火墙系统ctl停止防火墙

然后尝试。

redis-cli -h 192.168.0.2(ip)-a redis(用户名)

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/7740.html,未经允许,请勿转载。