SSLを使用してmysqlに接続していることを確認するにはどうすればよいですか?


23

SSLを許可するようにサーバーを構成し、クライアント〜/ .my.cnfを変更してSSLを使用しています。

[client]
ssl
ssl-cipher=DHE-RSA-AES256-SHA
ssl-ca=~/certs/ca-cert.pem

クライアントでログインしてステータスを表示すると、SSL行に暗号がリストされます。

mysql> \s
--------------
SSL:            Cipher in use is DHE-RSA-AES256-SHA

接続が安全であることを検証するためにwiresharkのようなものをインストールせずに、この情報に基づいてSSL経由で接続していると想定できますか?

回答:


32

クライアントから、単に実行しstatusます。この接続がSSLを使用している場合は、SSL行に何か面白いものが表示されます。

mysql> status
--------------
mysql  Ver 14.14 Distrib 5.5.30, for Linux (x86_64) using readline 5.1

Connection id:      12
Current database:
Current user:       replicator@domU-12-31-39-10-54-BD.compute-1.internal
SSL:            Cipher in use is DHE-RSA-AES256-SHA
Current pager:      stdout
Using outfile:      ''
Using delimiter:    ;
Server version:     5.5.30-log MySQL Community Server (GPL)
Protocol version:   10
Connection:     boston.hugskeep.wstudent.com via TCP/IP
Server characterset:    latin1
Db     characterset:    latin1
Client characterset:    utf8
Conn.  characterset:    utf8
TCP port:       3306
Uptime:         44 min 49 sec

Threads: 2  Questions: 16  Slow queries: 0  Opens: 34  Flush tables: 1  Open tables: 27  Queries per second avg: 0.005
--------------

mysql>

この接続がSSLを使用していない場合、次の情報が得られます。

SSL:            Not in use

以下も使用できます。

mysql> SHOW STATUS LIKE 'Ssl_cipher';
+---------------+--------------------+
| Variable_name | Value              |
+---------------+--------------------+
| Ssl_cipher    | DHE-RSA-AES256-SHA |
+---------------+--------------------+
1 row in set (0.00 sec)

mysql>

しかし、私は最初の方がより魅力的で、間違いなく入力しやすいと思います。


show status like 'Ssl_version'使用されているSSL / TLSプロトコルのバージョンを判別するのにも役立ちます。
ジョアンコスタ

特定のユーザーに対してこれを行う方法があるかどうか知っていますか。現在のユーザーだけではありませんか?- stackoverflow.com/questions/56203365/...
committedandroider

これが今変更されたかどうかはわかりません。私にとっても、私はSSLを使用していない、それはSSL: Cipher in use is DHE-RSA-AES256-SHA私のために示しています。
サディー

1

これはmariadb mysqlに適用されます(純粋なmysqlでは試していません):

mysql -h xxx.xxx.xxx.xxx -u testuser --ssl

「--ssl」は、sslが有効になっているかどうかを通知します。


WARNING: --ssl is deprecated and will be removed in a future version. Use --ssl-mode instead.MySQL 5.6.4
サディー


0

MySQL 5.6.4

これはわかりません

「Ssl_cipher」のようなステータスを表示します。

以降のバージョンで変更されました。SSLを使用していない場合でも、私にとってはそれが表示さSSL: Cipher in use is DHE-RSA-AES256-SHAれます。

以下を使用して、SSLが使用されているかどうかを確認できます。

ubuntu@ip-111-22-3-444:~$ mysql -h 111.22.3.444 -u dbuser --ssl-mode=VERIFY_IDENTITY -p
ERROR 2026 (HY000): SSL connection error: CA certificate is required if ssl-mode is VERIFY_CA or VERIFY_IDENTITY
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.