MySQL クライアントとTLS接続の確認

MySQLとクライアントでTLS接続の確認を行うサンプルです。
(確認環境:MySQL 5.7,Windows 10)

目次

サンプル そのままログインした場合
  ログイン時にSSL接続を使用しない指定を行う
  設定ファイル(my.ini)でtlsのバージョンを指定した場合

そのままログインした場合

1.Windowsのコマンドプロンプトで以下のコマンドを指定してMySQLに接続します。

mysql -u root -p -h localhost --port 3310

 

2.現在のSSLのバージョンを確認します。TLSv1.2になっています。

mysql> show session status like 'ssl_version';
+---------------+---------+
| Variable_name | Value   |
+---------------+---------+
| Ssl_version   | TLSv1.2 |
+---------------+---------+
1 row in set (0.00 sec)

mysql>

 

2.コマンド\sでステータスを確認するとSSLは、Cipher in use is ECDHE-RSA-AES128-GCM-SHA256になっています。

mysql> \s
--------------
mysql  Ver 14.14 Distrib 5.7.41, for Win64 (x86_64)

Connection id:          2
Current database:
Current user:           root@localhost
SSL:                    Cipher in use is ECDHE-RSA-AES128-GCM-SHA256
Using delimiter:        ;
Server version:         5.7.41-log MySQL Community Server (GPL)
Protocol version:       10
Connection:             localhost via TCP/IP
Server characterset:    latin1
Db     characterset:    latin1
Client characterset:    cp932
Conn.  characterset:    cp932
TCP port:               3310
Uptime:                 12 min 58 sec

Threads: 3  Questions: 32  Slow queries: 0  Opens: 114  Flush tables: 1  Open tables: 107  Queries per second avg: 0.041
--------------

mysql>

 

ログイン時にSSL接続を使用しない指定を行う

1.末尾に--ssl-mode=DISABLEDを追記してsslを使用しない指定でMySQLに接続します。

mysql -u root -p -h localhost --port 3310 --ssl-mode=DISABLED

 

2.現在のSSLのバージョンを確認します。空白になっています。

mysql> show session status like 'ssl_version';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| Ssl_version   |       |
+---------------+-------+
1 row in set (0.00 sec)

mysql>

 

3.コマンド\sでステータスを確認するとSSLは、Not in useになっています。

mysql> \s
--------------
mysql  Ver 14.14 Distrib 5.7.41, for Win64 (x86_64)

Connection id:          5
Current database:
Current user:           root@localhost
SSL:                    Not in use
Using delimiter:        ;
Server version:         5.7.41-log MySQL Community Server (GPL)
Protocol version:       10
Connection:             localhost via TCP/IP
Server characterset:    latin1
Db     characterset:    latin1
Client characterset:    cp932
Conn.  characterset:    cp932
TCP port:               3310
Uptime:                 22 min 7 sec

Threads: 3  Questions: 40  Slow queries: 0  Opens: 115  Flush tables: 1  Open tables: 108  Queries per second avg: 0.030
--------------

 

設定ファイル(my.ini)でtlsのバージョンを指定した場合

1.以下に配置されているmy.iniを修正しMySQLを再起動します。

C:\ProgramData\MySQL\MySQL Server 5.7

 

2.mysqldの下にTLSv1.1の指定を記述します。

[mysqld]
(中略)
tls_version=TLSv1.1

 

3.ログインして確認するとTLSv1.1で表示されます。

mysql -u root -p -h localhost --port 3310

mysql> show session status like 'ssl_version';
+---------------+---------+
| Variable_name | Value   |
+---------------+---------+
| Ssl_version   | TLSv1.1 |
+---------------+---------+
1 row in set (0.00 sec)

mysql>

 

4.コマンド\sでステータスを確認するとSSLは、Cipher in use is ECDHE-RSA-AES128-SHAになっています。

mysql> \s
--------------
mysql  Ver 14.14 Distrib 5.7.41, for Win64 (x86_64)

Connection id:          2
Current database:
Current user:           root@localhost
SSL:                    Cipher in use is ECDHE-RSA-AES128-SHA
Using delimiter:        ;
Server version:         5.7.41-log MySQL Community Server (GPL)
Protocol version:       10
Connection:             localhost via TCP/IP
Server characterset:    latin1
Db     characterset:    latin1
Client characterset:    cp932
Conn.  characterset:    cp932
TCP port:               3310
Uptime:                 49 min 44 sec

Threads: 1  Questions: 11  Slow queries: 0  Opens: 111  Flush tables: 1  Open tables: 104  Queries per second avg: 0.003
--------------

mysql>

関連の記事

MySQL コマンドの一覧

△上に戻る