今天进行redis服务器的远程连接时,几乎连接不上,折腾了一天了,
注意,服务器使用的是腾讯云服务器,搭建的redis
问题排查:
1. 确保 redis.conf 的配置正确,在这个地方主要有两个地方需要注意:
a. bind 配置,其中配置为:bind 0.0.0.0
b. 配置 protected-mode yes 为:protected-mode no
c. 配置远程连接密码,打开requirepass的注释。配置为: requirepass 你的密码
2. 配置了以上信息之后,确保腾讯云的安全规则将6379端口开放,这样本地才能进行访问。
3. 防火墙的问题(这里我之前是直接将防火墙关闭了,巨坑)
以上配置信息完成之后,用本地开发环境连接,始终连接不上,也不知道什么原因,换过不同版本尝试,仍然无解。后面注意到防火墙的问题,被关闭了。尝试开启之后,连接成功!!!!
防火墙启动方式:
systemctl start firewalld # 开启防火墙
systemctl status firewalld # 查看防火墙的状态
firewall-cmd --zone=public --add-port=6379/tcp --permanent # 开放端口 6379
firewall-cmd --reload # 重新加载对应的防火墙策略
问题分析:
这里可能就是云服务器的路由策略的问题,因为在腾讯云自己的服务器配置了端口规则,仍然连接不上,服务器的防火墙又关了,部分服务就不起作用,不能进行端口的转发,
自己猜想阿里云的端口路由规则可能是根据服务器的防火墙程序进行了路由过滤。导致不能进行连接。辛酸史啊!!!
注意,开启了防火墙之后,需要把其他的自己使用到的端口进行开启,比如开启6379端口:
firewall-cmd --zone=public --add-port=6379/tcp --permanent # 开放端口 6379