Installer SSL sur Amazon Elastic Load Balancer avec le certificat GoDaddy Wildcard

9

Je suis un peu coincé lors de l'installation d'un certificat SSL sur un AWS Elastic Load Balancer. J'ai un certificat générique de GoDaddy et je dois le pointer vers l'ELB.

J'ai exécuté la commande (je l'ai exécutée sur l'un des serveurs derrière l'équilibreur de charge):

openssl req -new -newkey rsa:2048 -nodes -keyout mydomain.key -out mydomain.csr

puis j'ai envoyé le fichier .csr à GoDaddy. À ce stade, ils ont renvoyé un dossier zip contenant deux fichiers: gd_bundle.crtet mydomain.com.crt. Le gd_bundle.crt en le regardant semble avoir deux clés uniques à l'intérieur (deux chaînes codées en base 64).

Amazon ELB demande une clé publique et une clé privée et sur la base de ce que j'ai fait, je ne sais pas exactement quoi. À partir de ce moment, je ne sais pas quoi faire pour que tout cela soit chargé.

Toute aide serait grandement appréciée.

Peter
la source
J'ai trouvé la réponse sur Stack Overflow stackoverflow.com/questions/6753619/…
Peter

Réponses:

9

La clé privée est mydomain.key que vous avez générée avec la CSR.

Ce que GoDaddy vous a envoyé est la clé publique (le fichier de certificat mydomain.com.crt, tel que signé par GoDaddy), ainsi que la chaîne de certificat intermédiaire pour GoDaddy qui complète la chaîne de confiance entre votre certificat et ce que le navigateur d'un utilisateur final connaît (le fichier gd_bundle.crt).

Je ne connais pas spécifiquement ELB, mais en regardant cette page de documentation:

http://docs.amazonwebservices.com/ElasticLoadBalancing/latest/DeveloperGuide/US_UpdatingLoadBalancerSSL.html

Vous fournirez votre fichier mydomain.key pour la clé privée, le fichier mydomain.com.crt pour la clé publique et le fichier gd_bundle.crt pour la chaîne de certificats.

cjc
la source
4

Ajout de Godaddy Cert à EC2 ELB

Configurer l'interface de ligne de commande AWS

Les instructions de configuration se trouvent ici: http://aws.amazon.com/cli/

Définissez vos fichiers et exécutez ces commandes:

# define these
crtdomain="example.com"
crtchain="gd_bundle.crt"

echo "converting to pem format"
openssl rsa -in ${crtdomain}.key -out aws-${crtdomain}.key
openssl x509 -in ${crtdomain}.crt -out aws-${crtdomain}.crt -outform PEM

echo "uploading certificate ${crtdomain} to Amazon"
aws iam upload-server-certificate \
--certificate-body file://aws-${crtdomain}.crt \
--private-key file://aws-${crtdomain}.key \
--certificate-chain file://${crtchain} \
--server-certificate-name ${crtdomain}

source: http://brakertech.com/ec2-elb-godaddy-cert/

brakertech
la source
C'est la seule solution qui a fonctionné pour moi. Les autres sont inutiles. Merci.
Cerin
1

Si vous ouvrez vos fichiers dans un, text editorvous verrez

-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----


-----BEGIN PRIVATE KEY-----
...
-----END PRIVATE KEY-----

la chaîne serait probablement gd_bundle.crt

entrez la description de l'image ici
J'ai donné mon certificate namemême nom que la clé publique mydomain.com.crt

La Private Keyvenue de faire une version texte de la clé:
sudo openssl rsa -in /etc/ssl/certs/mydomain.key -text
(ce serait le chemin de votre fichier sur le serveur) /etc/ssl/certs/

Le Public Keysera probablementmydomain.com.crt

Et le Certificate Chainsera probablementgd_bundle.crt

tq
la source