dbeaver普通用户返回connect reset问题

首页    知识库    常见问题    dbeaver普通用户返回connect reset问题

问题现象

单子:dbeaver连接sys用户是成功的,但连接其他用户显示失败

如下图,sys账户可以连接到数据库,其它账户报错connect reset。

image2024-7-16_15-15-44

image2024-7-16_15-15-51

 

问题的风险及影响

影响:用jdbc连接服务端,只能用sys超级账户连接,不是3字节的用户,连接服务端都会报错。

风险:普通用户连接失败,用sys用户做普通用户的操作,权限过大,可能导致不可预知的问题。

 

问题影响的版本

所有版本

 

问题发生的原因

yashan客户端数据包,到服务端的中间过程中,被拦截。

 

解决方法及规避方式

1、解决方案,客户那边单独放开这个迅雷p2p拦截规则

2、规避方案:用sys账户暂时做规避。

 

问题分析和处理过程

1、排除权限问题:

sys用户能连接上,怀疑是权限问题。查看权限,该用户已有dba权限。

2、排除dbeaver工具问题:

怀疑dbeaver工具问题,换最新的dbeaver版本,连接还是有问题

换开源dbeaver版本,连接也有问题。

3、排查网络通路问题

用yasql普通用户连接,连接正常;sys用户正常连接。

4、排除防火墙规则:

怀疑防火墙入站出站规则导致的问题,把服务器和客户端防火墙关闭,问题一样。

5、确认和jdbc连接用户、用户长度有关

dbeaver用的是jdbc连接,普通用户连接报connect reset。

用java编写了jdbc连接程序connjava测试,发现普通用户连接报connect reset。

用户长度是3字节和1字节时,连接通路是通的,不会报connect reset。

6、查看listen.log,发现报错中的user和连接的user不一样。

image2024-7-16_15-20-2

7、抓数据包,客户端发送用户名的包后,客户端和服务端连接断开,如下图:

代表客户端和服务端之间数据包被拦截。如此情况,需要客户那边来排查原因。

image2024-7-16_15-24-47

image2024-7-16_15-24-56

客户最终找到原因:

客户排查后,表示数据包被拦截是因为拦截迅雷p2p的规则,至于为何会拦截到yashandb的数据包,这个需要和定义该规则的公司沟通(深信服),暂未确认,原因未知。

image2024-7-16_15-25-48

 

经验总结

1、找不到问题突破口时,可以换条思路,证明问题是否在自己这里

 

 

浏览量:0