« MySQL » : différence entre les versions
Ligne 85 : | Ligne 85 : | ||
* On édite le fichier '''/etc/apparmor.d/usr.sbin.mysqld''' et on y insère les éléments suivants : | * On édite le fichier '''/etc/apparmor.d/usr.sbin.mysqld''' et on y insère les éléments suivants : | ||
/etc/mysql/ssl/*.pem r, | |||
/etc/mysql/ssl/*.crt r, | |||
/etc/mysql/ssl/*.key r, | |||
* On édite le fichier de configuration '''/etc/mysql/my. | * On édite le fichier de configuration '''/etc/mysql/my.cnf''' et on y insère dans la section '''[mysqld]''' : | ||
ssl-ca=/etc/mysq/ssl/ca.crt | |||
ssl-cert=/etc/mysql/ssl/mysql.crt | |||
ssl-key=/etc/mysql/ssl/mysql.key | |||
=== Validation === | === Validation === |
Version du 5 février 2014 à 13:46
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 :
/etc/mysql/ssl/*.pem r, /etc/mysql/ssl/*.crt r, /etc/mysql/ssl/*.key r,
- On édite le fichier de configuration /etc/mysql/my.cnf et on y insère dans la section [mysqld] :
ssl-ca=/etc/mysq/ssl/ca.crt ssl-cert=/etc/mysql/ssl/mysql.crt ssl-key=/etc/mysql/ssl/mysql.key
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)