首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何知道mysql连接是使用SSL还是TLS连接?

如何知道mysql连接是使用SSL还是TLS连接?
EN

Security用户
提问于 2021-02-12 21:51:08
回答 2查看 1K关注 0票数 0

我想验证mysql远程连接是否出于安全目的使用tls/ssl连接。

首先,我运行status命令来检查:

代码语言:javascript
运行
复制
mysql> status
--------------
mysql  Ver 8.0.19 for osx10.15 on x86_64 (Homebrew)

Connection id:      47
Current database:   
Current user:       user@127.219.252.250
SSL:            Cipher in use is DHE-RSA-AES256-SHA
Current pager:      stdout
Using outfile:      ''
Using delimiter:    ;
Server version:     5.5.5-10.3.27-MariaDB-0+deb10u1 Debian 10
Protocol version:   10
Connection:     31.224.603.2 via TCP/IP
Server characterset:    utf8mb4
Db     characterset:    utf8mb4
Client characterset:    utf8mb4
Conn.  characterset:    utf8mb4
TCP port:       3306
Binary data as:     Hexadecimal
Uptime:         35 min 15 sec

Threads: 9  Questions: 222  Slow queries: 0  Opens: 33  Flush tables: 1  Open tables: 27  Queries per second avg: 0.104
--------------

这里,ssl行提到了一个密码,但据一些人说,这并不保证连接实际上是ssl加密的。

我刚开始捕获,目标设置为db服务器的ip。

这能用来确保连接是ssl/tls加密的吗?任何帮助都是非常感谢的。

EN

回答 2

Security用户

发布于 2022-03-07 10:45:46

如果您有足够的权限在服务器上运行以下查询,它将告诉您如何建立连接:

代码语言:javascript
运行
复制
select t.THREAD_ID,
    t.PROCESSLIST_USER,
    t.PROCESSLIST_HOST,
    t.CONNECTION_TYPE,
    sbt.VARIABLE_VALUE AS cipher
FROM performance_schema.threads t
LEFT JOIN performance_schema.status_by_thread sbt
    ON (t.THREAD_ID = sbt.THREAD_ID AND sbt.VARIABLE_NAME = 'Ssl_cipher')
WHERE t.PROCESSLIST_USER IS NOT NULL;

如果您在最后两列中看到类似于SSL/TLS TLS_AES_256_GCM_SHA384的内容,那么您就可以了。

票数 1
EN

Security用户

发布于 2021-02-12 22:39:20

看到"SSL:使用中的密码.“将是非常非常奇怪的。然后让连接不被加密。(如果您知道发生这种情况的任何情况,请包括一个链接。)然而,由于某些原因,例如使用(和信任)一个自签名或其他可能不值得信任的证书,或者使用匿名密码套件,或者使用非常弱的加密,或者类似的,这是不完全安全的。不幸的是,这很难从给定的信息中验证(除了加密的强度,这是非常强的AES256密码)。

正如Wireshark截图所示,您使用的是TLS v1.1。这不是最新的,甚至是第二次最新的版本--现在一切都应该使用TLS 1.2或1.3 --但至少(据我所知)它并没有完全打破一些旧的协议。您可以查看服务器通过查看Wireshark中的相关行发送的证书,但这并不一定能清楚地告诉您证书是否值得信任。

最简单的选择可能只是查看客户端命令行(和选项文件)标志。如果您使用了ssl-mode=REQUIRED标志(或者,对于旧版本,使用了-ssl=1--enable-ssl标志),那么就强制使用SSL/TLS。其他各种标志控制哪些CA证书是可信的,尽管默认情况下它应该使用合理的列表。

票数 0
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/244742

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档