web-dev-qa-db-fra.com

Comment configurer nginx + ssl avec une clé cryptée au format .pem

Je voudrais configurer ssl pour un serveur nginx existant. On m'a remis à la fois un certificat et la clé privée correspondante (cryptée). Les deux sont au format .pem (chacun dans son propre fichier).

À propos de tous les tutoriels (par exemple 1 ), j'ai trouvé supposer une clé au format .key.

Lorsque je configure + démarre nginx, le certificat semble être accepté jusqu'à présent. Cependant, on me demande une phrase de passe PEM pour le fichier de clé privée.

Ai-je raison de supposer que mes seules options consistent à configurer un nginx "ssl_password_file" avec la phrase de passe ou à utiliser openssl/libressl pour convertir le fichier .pem contenant la clé chiffrée en un fichier .key non chiffré comme cela ?

Sinon, comment dois-je gérer une clé privée chiffrée au format .pem?

9
Zappl

Vous avez à peu près répondu à votre propre question.

Ne soyez pas dérouté par les extensions de fichier. La clé privée, protégée par mot de passe ou non, est généralement au format PEM. Souvent .pem est utilisé pour le fichier de certificat, donc .key est choisi pour la clé privée correspondante. Mais l'extension de fichier n'est pas pertinente.

Vous avez donc trois options:

  • Démarrez manuellement le serveur et fournissez le mot de passe sur la console. Il s'agit probablement de l'option la plus sûre, mais elle est également peu pratique dans de nombreuses situations.
  • Fournissez un fichier de mots de passe à l'aide de ssl_password_file
  • Supprimez définitivement la protection par mot de passe à l'aide de openssl

Par exemple, pour supprimer le mot de passe d'une clé privée:

openssl rsa -in original.key -out plain.key
12
Richard Smith