it-swarm-eu.dev

Jak mohu ověřit, že používám SSL pro připojení k mysql?

Nakonfiguroval jsem server tak, aby povolil SSL, a upravil jsem svého klienta ~/.my.cnf, takže používám SSL:

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

Když se přihlásím s klientem a podívám se na jeho stav, uvede na řádku SSL šifru:

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

Bez instalace něco jako wireshark pro ověření, že připojení je bezpečné, mohu předpokládat, že se připojuji přes SSL na základě těchto informací?

27
chris

Z klienta stačí spustit status. Pokud toto připojení používá SSL, získáte v řádku SSL něco zajímavého.

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:       [email protected]
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>

Pokud toto připojení nepoužívá SSL, získáte:

SSL:            Not in use

Můžete také použít:

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

mysql>

Ale myslím, že první je přitažlivější a určitě snadnější psát.

35
Jeremy Wadhams

Vynutit SSL na uživatele:

alter user 'my_user'@'%' REQUIRE SSL;
mysql> \s
2
Mary Ciricean

To platí pro mariadb mysql (nezkoušeli jsme čistě mysql):

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

'--ssl' vám ​​řekne, pokud je povoleno ssl, bez, řekne 'nepoužíván'

1
user2677034

SSL: ve stavu příkaz neřekl, že připojení používá SSL. Klienti mohou zakázat používání SSL ze své strany. Pomocí možnosti „zobrazit stav relace“ a najít „Ssl_client_connects“ vyhledejte počet připojení pomocí SSL.

0
Chayne P. S.

MySQL 5.6.4

Nejsem si tím jistý

ZOBRAZIT STATUS JAKO 'Ssl_cipher';

byl změněn v novějších verzích. Pro mě, i když nepoužívám SSL, se zobrazuje SSL: Cipher in use is DHE-RSA-AES256-SHA pro mě.

Pomocí následujícího můžete získat potvrzené použití protokolu SSL.

[email protected]:~$ 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
0
Sadee