Maison  >  Article  >  base de données  >  Comment configurer les chemins de ssl_key, ssl-cert et ssl-ca dans mysql et exemples d'établissement de connexions SSL

Comment configurer les chemins de ssl_key, ssl-cert et ssl-ca dans mysql et exemples d'établissement de connexions SSL

黄舟
黄舟original
2017-09-08 11:57:192181parcourir

1. Créez une clé privée CA et un certificat CA

(1) Téléchargez et installez openssl, configurez le répertoire bin avec les variables d'environnement

(2) Définissez le chemin openssl.cfg ( if S'il n'est pas défini, une erreur sera signalée et le fichier de configuration openssl est introuvable)


set OPENSSL_CONF=G:\Program Files\openssl\openssl-1.0.2d-fips-2.0.10\bin\openssl.cnf

(3) Générer une clé privée CA (fichier supplémentaire : ca -key.pem)


openssl genrsa 2048 > ca-key.pem

(4) Générer un certificat numérique via la clé privée de l'AC (lors de l'exécution de cette commande, vous aurez besoin pour répondre à certaines questions, remplissez-les simplement avec désinvolture, comme : CN, KunMing, KunMing, KunMing, kmddkj, kmddkj, kmddkj, 786479786@qq.com deux fichiers supplémentaires : ca-cert.pem)


openssl req -sha1 -new -x509 -nodes -days 3650 -key ca-key.pem > ca-cert.pem
 

2. Créez une clé privée RSA et un certificat numérique côté serveur

(1) Créez une clé privée côté serveur et un fichier de demande de certificat (vous devez répondre à quelques questions, remplissez-le simplement) Oui, il convient de noter qu'un mot de passe de test et un nom de société facultatif doivent être vides : server-key.pem server- ; req.pem)


openssl req -sha1 -newkey rsa:2048 -days 3650 -nodes -keyout server-key.pem > server-req.pem
(2) Convertir la clé privée générée au format de fichier de clé privée RSA


openssl rsa -in server-key.pem -out server-key.pem
(3) Utilisez le certificat CA généré à l'origine pour générer un certificat numérique côté serveur (fichier supplémentaire : server-cert.pem)


openssl x509 -sha1 -req -in server-req.pem -days 3650 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem

3. Créez la clé privée RSA et le numéro de certificat du client

(1) Générez un fichier de demande de clé privée et de certificat pour le client (fichiers supplémentaires : client-key.pem client-req.pem )


openssl req -sha1 -newkey rsa:2048 -days 3650 -nodes -keyout client-key.pem > client-req.pem
(2) Convertir la clé privée générée au format de fichier de clé privée RSA


openssl rsa -in client-key.pem -out client-key.pem
(3) Créer un certificat numérique pour le client (plus de fichier Out : client-cert.pem)


openssl x509 -sha1 -req -in client-req.pem -days 3650 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem

SSL instructions de configuration et de génération du fichier : dans les étapes précédentes, nous avons généré 8 fichiers, à savoir :

ca-cert.pem : certificat CA, utilisé pour générer les certificats numériques serveur/client.

ca-key.pem : Clé privée CA, utilisée pour générer des certificats numériques serveur/client.

server-key.pem : Clé privée RSA côté serveur

server-req.pem : Fichier de demande de certificat côté serveur, utilisé pour générer des certificats numériques côté serveur.

server-cert.pem : Certificats numériques côté serveur.

client-key.pem : RSA privé du client key

client -req.pem : Le fichier de demande de certificat du client, utilisé pour générer le certificat numérique du client.

client-cert.pem : Le certificat numérique du client.

4. Configuration côté serveur

Le côté serveur doit utiliser trois fichiers, à savoir : le certificat CA, la clé privée RSA côté serveur, le certificat numérique côté serveur que nous devons ajouter. le contenu suivant sous le champ de configuration [mysqld] :


  #[mysqld]下加入如下代码:

  ssl-ca=G:/ProgramData/MySQL/MySQL Server 5.6/mykey/ca-cert.pem

  ssl-cert=G:/ProgramData/MySQL/MySQL Server 5.6/mykey/server-cert.pem

  ssl-key=G:/ProgramData/MySQL/MySQL Server 5.6/mykey/server-key.pem

5. la configuration prend effet.

6. Une fois configuré. Après cela, utilisez root pour vous connecter à MySQL et exécutez show variables comme '%ssl%' ;


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn