« MySQL » : différence entre les versions
(→SSL) |
|||
Ligne 19 : | Ligne 19 : | ||
* On lance la création de certificat auto-signé : | * On lance la création de certificat auto-signé : | ||
{{ Box Console | objet=openssl req -new -x509 -nodes -days 365 -key ca.key -out ca.crt<br /> | {{ Box Console | objet=<span style="font-family:sans-serif;color:blue">openssl req -new -x509 -nodes -days 365 -key ca.key -out ca.crt</span><br /> | ||
<font color=grey>You are about to be asked to enter information that will be incorporated<br /> | <font color=grey>You are about to be asked to enter information that will be incorporated<br /> | ||
into your certificate request.<br /> | into your certificate request.<br /> |
Version du 5 février 2014 à 13:03
SSL
Autorité de certification
Création de la clé privée
- On se place dans le dossier /etc/ssl/private qui contient les clés et certificats privées :
|
|
- On génère la clé privée :
|
|
Cette clé va nous permettre de signer nos propres certificats.
Création du certificat auto-signé
- On lance la création de certificat auto-signé :
|
|
Certificat serveur
- On génère la clé privée :
|
|
- On génère un fichier de demande de signature de certificat :
|
|
- On signe notre certificat à l'aide du certificat auto-signé de notre autorité de certification (précédemment créée) :
|
|
COnfiguration du serveur MySQL
- On déplace les certificats crées dans /etc/ssl/private vers /etc/mysql/ssl
|
|
- On applique les permissions et droits mysql sur les certificats :
|
|
- On édite le fichier /etc/apparmor.d/usr.sbin.mysqld et on y insère les éléments suivants :
- On édite le fichier de configuration /etc/mysql/my.cf et on y insère dans la section [] :
- Dans le même fichier, on insère les éléments suivants dans la section [] :
Validation
mysql> show variables like "%ssl%"; +---------------+--------------------------+ | Variable_name | Value | +---------------+--------------------------+ | have_openssl | YES | | have_ssl | YES | | ssl_ca | /etc/mysq/ssl/ca.crt | | ssl_capath | | | ssl_cert | /etc/mysql/ssl/mysql.crt | | ssl_cipher | | | ssl_key | /etc/mysql/ssl/mysql.key | +---------------+--------------------------+ 7 rows in set (0.02 sec)
mysql> show status like 'Ssl_cipher'; +---------------+--------------------+ | Variable_name | Value | +---------------+--------------------+ | Ssl_cipher | DHE-RSA-AES256-SHA | +---------------+--------------------+ 1 row in set (0.01 sec)