web-dev-qa-db-fra.com

Comment installer le certificat ssl de godaddy sur aws elb?

J'ai acheté un certificat SSL auprès de GoDaddy. J'ai créé un fichier de clés, généré un fichier csr, envoyé à godaddy et reçu ces fichiers:

  • mydomain.crt
  • Gd_intermediate.crt
  • Gd_bundle.crt

J'essaie maintenant de créer un équilibreur de charge Elastic dans la console AWS. Lorsqu'on leur demande les détails d'un certificat, ils demandent:

  • Clé privée (codée pem)
  • Certificat de clé publique (codé pem)
  • Chaîne de certificats (codée pem, facultatif)

Comment convertir les fichiers que j'ai sous ces paramètres?

24
reformy

Pour AWS ELB, vous avez besoin de trois choses comme vous l'avez dit

Clé privée

La clé RSA que vous avez générée sur Linux avec

#openssl genrsa -des3 -out Host.key 2048 

il vous demandera un mot de passe, donnez-le pour l'instant, nous le retirerons plus tard.

Clé publique

à partir de votre clé privée, vous générez tout d’abord le fichier csr qui est une demande de signature de certificat (celui que vous soumettez à l’autorité de votre dossier qui obtient une clé publique). vous pouvez générer un fichier csr en utilisant

#openssl req -new -key Host.key -out Host.csr 

maintenant, vous soumettez votre fichier csr à godaddy et en retour, ils vous fournissent deux fichiers (mydomain.crt, Gd_bundle.crt). mydomain.crt est votre clé publique.

Chaîne de certificats

Gd_bundle.crt est un fichier de chaîne de certification que godaddy vous fournit avec votre clé publique. Votre fichier de clé publique et de chaîne de certification ne nécessite aucune conversion. Pour le fichier de clé privée, vous devez supprimer son mot de passe et le convertir en pem avec

#openssl rsa -in Host.key -out private.pem 

et il est bon d'aller chercher le contenu du fichier AWS.put private key.pem dans la section aws private key et de placer le contenu du fichier mydomain.crt dans la clé publique, puis le contenu Gd_bundle.crt dans la section chaîne de certification. La conversion dépend de l'endroit où vous obtenez votre certificat. Si vous obtenez un certificat d'une autre société, je vous recommanderai de suivre AWS Docs.

http://docs.aws.Amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/ssl-server-cert.html
21
Adeel Ahmad

J'ai récemment dû suivre ce processus et aucune des réponses ne fonctionnait pour moi. Voici les étapes qui m'ont permis de télécharger un nouveau certificat SSL sur AWS (pour une utilisation ultérieure dans ElasticBeanstalk). 

Obtention de la clé privée

J'ai dû utiliser deux commandes pour ce processus:

openssl genrsa -des3 -out server.pass.key 2048
openssl rsa -in server.pass.key -out server.key

Le fichier server.key est votre clé privée.

De plus, vous pouvez générer la CSR (Certificate Signing Request) en procédant comme suit:

openssl req -nodes -new -key server.key -out server.csr

Ceci est le fichier que nous utiliserons pour demander à GoDaddy d’émettre notre nouveau certificat.

Obtention de la clé publique

Une fois que le certificat a été émis dans GoDaddy, téléchargez-le. Cela vous donnera deux fichiers qui doivent être regroupés en un en faisant:

cat yourdomain.crt Gd_bundle-g2-g1.crt > combined.crt

Le combined.crt serait votre clé publique. 

Téléchargement du certificat de serveur vers AWS

Avec les fichiers server.key et combined.crt, vous pouvez maintenant télécharger le certificat sur AWS à l'aide de AWS CLI . Vous devez juste utiliser la commande suivante:

aws iam upload-server-certificate --server-certificate-name your_certificate_name --certificate-body file://combined.crt --private-key file://server.key

Si tout s'est bien passé, vous recevrez une réponse du serveur:

{
    "ServerCertificateMetadata": {
        "ServerCertificateId": "ABCDEFG12345678", 
        "ServerCertificateName": "certificate-name", 
        "Expiration": "2018-08-26T11:59:38Z", 
        "Path": "/", 
        "Arn": "arn:aws:iam::1234123412:server-certificate/certificate-name", 
        "UploadDate": "2017-08-26T19:53:46.989Z"
    }
}

Et c’est tout, vous devez disposer d’un nouveau certificat SSL dans AWS. 

4
Alejandro Escobar

Il y a presque deux ans exactement, mais j'ai traversé cela et cela m'a laissé perplexe une seconde. 

Le Le corps du certificat * est la clé principale du fichier Zip. Le mien ressemble à ceci f7dsdfsdf2f4e942d.crt et n'a qu'une entrée.

Le champ intermédiaire Clé privée de certificat * est la clé privée ssh qui a signé votre csr. Il réside sur le serveur que vous utilisez pour créer votre demande csr. J'ai trouvé l'emplacement de la mienne en consultant le fichier de configuration nginx et en le copiant sur mon disque local.

Le dernier champ Chaîne de certificats est le fichier avec 3 entrées, le mien ressemble à Gd_bundle-g2-g1.crt.

3
whoacowboy

Voici un guide sur la procédure d'obtention d'un certificat Godaddy ssl sur Amazon Elastic Load Balancer (ELB) http://cloudarch.co.uk/2011/10/elastic-load-balancer-ssl-setup-guide-pem -encoded-csr/#. UKFla2nGU_8

2
jimmyboyb

Si vous utilisez un serveur Windows IIS:

Clé privée

  • Suivez les instructions ici pour obtenir votre clé privée. Essentiellement (sans les captures d'écran):
    • Exécutez mmc.exe
    • Dans le menu Fichier, choisissez Ajouter/Supprimer un composant logiciel enfichable.
    • Dans la nouvelle fenêtre qui apparaît, cliquez sur Ajouter.
    • Sélectionnez Certificats, puis cliquez sur Ajouter
    • Choisissez l'option Compte d'ordinateur et cliquez sur Suivant.
    • Sélectionnez Ordinateur local, puis cliquez sur Terminer.
    • Cliquez sur Fermer, puis sur OK. Le composant logiciel enfichable pour les certificats (ordinateur local) apparaît dans la console.
    • Développez l’arborescence Certificates (Local Computer) dans le panneau d’aperçu de gauche.
    • Cliquez avec le bouton droit sur Personnel et sélectionnez Toutes les tâches> Importer. L'importation de certificat Wizard apparaît. Cliquez sur Suivant.
    • Naviguez jusqu'à l'emplacement de votre fichier de certificat de serveur et cliquez sur Suivant.
    • Sélectionnez Placez tous les certificats dans le magasin suivant et cliquez sur Suivant.
    • Cliquez sur Terminer pour terminer l’assistant d’importation de certificat.
    • Une boîte de dialogue apparaît indiquant que l'importation a réussi. Cliquez sur OK.
  • Dans l'arborescence, développez Personnel et cliquez Certificats. Double-cliquez sur votre certificat.
  • Cliquez sur copier dans le fichier sous l'onglet Détails de la fenêtre de certificat et créez un fichier .pfx.
  • Allez à ici pour le convertir au format PEM.
  • Coller dans les parties de -----BEGIN PRIVATE KEY----- à -----END PRIVATE KEY----- uniquement.
    • Pas les lignes ci-dessus -----BEGIN PRIVATE KEY----- et pas les lignes ci-dessous -----END PRIVATE KEY-----

Clé publique

  • Utilisez le fichier .crt fourni par GoDaddy dans le fichier Zip téléchargé.

Chaîne de certificats

  • Utilisez le fichier Gd_bundle-g2-g1.crt fourni par GoDaddy dans le fichier Zip téléchargé.
0
Danny Schoemann

Vous voulez convertir mydomain.crt en mydomain.pem (les deux autres fichiers sont des fichiers de chaîne de confiance). Vous pouvez utiliser openssl sur n’importe quel système unix ou linux pour générer un fichier pem à partir d’un fichier CRT.

Étant donné que l'émetteur du certificat possède la clé privée, la seule raison pour laquelle il devrait vous en demander une, c'est s'il tente de générer un certificat. Si vous avez déjà un certificat, utilisez-le. Vérifiez la documentation

0
stark