我正在使用Amazon ElastiCache单节点分片Redis 4.0更高版本。
我启用了传输中加密并提供了Redis身份验证令牌。
我使用此链接使用通道创建了一个堡垒主机
https://aws.amazon.com/premiumsupport/knowledge-center/elasticache-connect-redis-node/
我可以使用以下方式连接到ElastiCache redis节点
redis-cli -h主机名-p 6379 -a mypassword
而且我也可以进行telnet。BUT当我在连接后在redis-cli上ping(预期响应“ PONG”)时,它给出的是
“错误:对等”重置连接“
我检查了双方的安全小组。任何想法?堡垒主机ubuntu 16.04机器
正如我所提到的,我正在像这样运行命令:
redis-cli -h主机名-p 6379 -a mypassword
通过stunnel连接到ElastiCache群集的正确方法应该使用“ localhost”作为主机地址,如下所示:
redis-cli -h localhost -p 6379 -a mypassword
有使用本地主机地址的说明:
当您通过堡垒在堡垒服务器与ElastiCache主机之间创建隧道时,程序将启动一个服务,以监听本地TCP端口(6379),使用SSL协议封装通信并在本地服务器之间传输数据和远程主机。
您需要启动通道,检查服务是否正在侦听本地主机地址(127.0.0.1),然后使用“本地主机”作为目标地址进行连接:“]]
开始通道。
$ sudo stunnel /etc/stunnel/redis-cli.conf
使用netstat命令确认隧道已启动:
$ netstat -tulnp | grep -i stunnel
您现在可以使用redis-cli通过隧道的本地端点连接到加密的Redis节点:
$ redis-cli -h localhost -p 6379 -a MySecretPassword
localhost:6379>设置foo“栏”
确定
localhost:6379>获取foo
“ bar”
“错误:对等方重置连接”表示Redis在不发送任何响应的情况下终止了您的连接。
[ElastiCache Redis实例很可能正在使用加密传输时和静态加密,并且设计使Redis CLI与加密不兼容。