Suivez les étapes ci-dessous.
Je vous serais reconnaissant si vous pouviez me faire savoir s'il y a des erreurs de termes ou de reconnaissance.
Tout d'abord, réécrivez subjectAltName sur la ligne 253 de openssl.cnf à l'adresse privée de l'instance.
[ec2-user@ip-xxx-xxx-xxx-xxx ~]$ sudoedit /etc/pki/tls/openssl.cnf
Voici ce qui a été affiché avec `` chat '' après la réécriture.
[ec2-user@ip-xxx-xxx-xxx-xxx ~]$ cat -n /etc/pki/tls/openssl.cnf | head -n 255 | tail -n 5
251
252 # Include email address in subject alt name: another PKIX recommendation
253 subjectAltName=IP:xxx.xxx.xxx.xxx
254 # Copy issuer details
255 # issuerAltName=issuer:copy
Après cela, créez le répertoire suivant.
[ec2-user@ip-xxx-xxx-xxx-xxx ~]$ mkdir certs
Créez le certificat ci-dessus (domain.crt) et la clé privée (domain.key) dans le répertoire ci-dessus.
Vous serez invité à entrer votre mot de passe.
#### **`Vous serez invité une deuxième fois. Entrez la même valeur.`**
```verifying - enter pem pass phrase
Cette phrase de passe ne sera plus utilisée.
[ec2-user@ip-xxx-xxx-xxx-xxx ~]$ openssl req -newkey rsa:2048 -keyout certs/domain.key -x509 -days 365 -out certs/domain.crt Generating a 2048 bit RSA private key ........................................................................................+++ ........+++ writing new private key to 'certs/domain.key' Enter PEM pass phrase: Verifying - Enter PEM pass phrase:
Les éléments suivants sont tous vides et appuyez sur Entrée.
Country Name (2 letter code) [XX]: State or Province Name (full name) []: Locality Name (eg, city) [Default City]: Organization Name (eg, company) [Default Company Ltd]: Organizational Unit Name (eg, section) []: Common Name (eg, your name or your server's hostname) []: Email Address []:
Dans ce qui suit, accédez au répertoire certs et supprimez la phrase de passe.
Si vous ne le faites pas, docker ne démarrera pas avec l'erreur suivante: `` `` msg = "tls: échec de l'analyse de la clé privée" `` ``
#### **`Entrez maintenant la phrase secrète.`**
```enter pass phrase for domain.key
[ec2-user@ip-xxx-xxx-xxx-xxx certs]$ openssl rsa -in domain.key -out new.key Enter pass phrase for domain.key: writing RSA key
Copiez le certificat.
[ec2-user@ip-xxx-xxx-xxx-xxx certs]$ sudo cp certs/domain.crt /etc/pki/ca-trust/source/anchors/xxx.xxx.xxx.xxx.crt
Redémarrez.
[ec2-user@ip-xxx-xxx-xxx-xxx ~]$ sudo update-ca-trust enable [ec2-user@ip-xxx-xxx-xxx-xxx ~]$ sudo update-ca-trust [ec2-user@ip-xxx-xxx-xxx-xxx ~]$ sudo service docker restart
Créer un mot de passe.
Entrez respectivement le nom d'utilisateur et le mot de passe dans le nom d'utilisateur et le mot de passe.
[ec2-user@ip-xxx-xxx-xxx-xxx ~]$ docker run --entrypoint htpasswd registry:2.6.2 -Bbn username password > auth/htpasswd
Démarrez le conteneur pour le registre privé.
[ec2-user@ip-xxx-xxx-xxx-xxx ~]$ docker run -d -p 5000:5000
--restart=always
--name registry
-v pwd
/auth:/auth
-v pwd
/certs:/certs
-e "REGISTRY_AUTH=htpasswd"
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm"
-e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd"
-e "REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt"
-e "REGISTRY_HTTP_TLS_KEY=/certs/new.key"
registry:2.6.2
Assurez-vous de pouvoir vous connecter.
[ec2-user@ip-xxx-xxx-xxx-xxx certs]$ docker login https://xxx.xxx.xxx.xxx:5000 Username: testuser Password: WARNING! Your password will be stored unencrypted in /home/ec2-user/.docker/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded
## Étape 2 Démarrez ALB
Connectez-vous en utilisant aws-cli.
Les pièces avec la clé d'accès XXX et la clé d'accès secrète YYY suivantes sont
Vous pouvez vérifier en cliquant sur IAM → Cliquez sur Utilisateur → Cliquez sur Informations d'identification.
[ec2-user@ip-xxx-xxx-xxx-xxx certs]$ aws configure AWS Access Key ID [None]: XXX AWS Secret Access Key [None]: YYY Default region name [None]: ap-northeast-1 Default output format [None]: json
Accédez au répertoire certs et téléchargez le certificat dans IAM.
my-secret-sert sera le nom du certificat.
[ec2-user@ip-xxx-xxx-xxx-xxx certs]$ aws iam upload-server-certificate --server-certificate-name my-server-cert
--certificate-body file://domain.crt --private-key file://new.key
ALB nécessite deux sous-réseaux dans le VPC. Après les avoir créés, accédez à l'écran de la console EC2 et cliquez sur l'équilibreur de charge.
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621414/0ecc2fad-f91b-a8a4-4463-14b90014a3ee.png)
Sélectionnez ALB.
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621414/4d578306-bafd-76d8-81ea-83d005aab6cc.png)
Sélectionnez HTTPS.
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621414/f462129a-f025-1031-4330-7babe5fea958.png)
Dans la sélection VPC, sélectionnez le VPC et le sous-réseau créés précédemment.
Dans la sélection de certificat par défaut, sélectionnez le certificat téléchargé.
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621414/82a610d1-98a1-42df-7514-b064cb9dd117.png)
Définissez le routage comme suit.
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621414/9b1064ad-1855-2d9d-3680-a6d2ce824106.png)
L'enregistrement d'une cible vous permet d'enregistrer EC2 dans le sous-réseau sélectionné avec le groupe cible.
Vérifiez s'il a été créé normalement par le message suivant.
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621414/7a6c6b97-51ba-7aef-f17d-6ef5b9dbdb6b.png)
## Article de référence
--Création d'un certificat de serveur avec OpenSSL
https://rfs.jp/server/setting/ssl-openssl.html
- L'histoire du téléchargement d'un certificat SSL vers ELB en luttant
https://www.simpline.co.jp/tech/%E5%9B%9B%E8%8B%A6%E5%85%AB%E8%8B%A6%E3%81%97%E3%81%AA%E3%81%8C%E3%82%89elb%E3%81%ABssl%E8%A8%BC%E6%98%8E%E6%9B%B8%E3%82%92%E3%82%A2%E3%83%83%E3%83%97%E3%83%AD%E3%83%BC%E3%83%89%E3%81%97%E3%81%9F/