SSL-сертификаты - это набор небольших данных, которые связывают криптографический ключ с данными организации. Это обеспечивает безопасное соединение между веб-сервером и браузером.
Чаще всего в AWS веб-серверы связаны с Loadbalancer, а веб-браузер связывается с веб-серверами через Loadbalancer.
Многие могут задаться вопросом, как я могу создать свой собственный самозаверяющий сертификат и использовать его для своих балансировщиков нагрузки.
Итак, чтобы создать свой собственный SSL-сертификат, нам понадобится следующее.
- Открытый ключ
- Закрытый ключ
- Запрос на подпись сертификата
Используйте следующие команды для создания собственного сертификата SSL.
Создать закрытый ключ как private.pem
> openssl genrsa -out private.pem 2048 Generating RSA private key, 2048 bit long modulus ...................................................................................+++ ......................................................................................+++ e is 65537 (0x010001)
Создать открытый ключ как public.pem
> openssl rsa -in private.pem -outform PEM -pubout -out public.pem writing RSA key
Создайте CSR (запрос на подпись сертификата) как certificate.csr
> openssl req -new -key private.pem -out certificate.csr You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]: State or Province Name (full name) [Some-State]: Locality Name (eg, city) []: Organization Name (eg, company) [Internet Widgits Pty Ltd]: Organizational Unit Name (eg, section) []: Common Name (e.g. server FQDN or YOUR name) []:*us-east-1.elb.amazonaws.com Email Address []: Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []:
Создайте самозаверяющий сертификат как certificate.crt
> openssl x509 -req -days 365 -in certificate.csr -signkey private.pem -out certificate.crt Signature ok subject=C = AU, ST = Some-State, O = Internet Widgits Pty Ltd, CN = *us-east-1.elb.amazonaws.com Getting Private key
Теперь вы создали сертификат SSL и пора загрузить его в свою учетную запись AWS.
Мы будем использовать AWS CLI для загрузки сертификата. Поэтому на вашем компьютере должен быть настроен интерфейс командной строки AWS.
Используйте следующую команду, чтобы загрузить сертификат в свою учетную запись.
> aws iam upload-server-certificate --server-certificate-name my-server-test --certificate-body file://certificate.crt --private-key file://private.pem { "ServerCertificateMetadata": { "Path": "/", "ServerCertificateName": "my-server-test", "ServerCertificateId": "ASCAJK2CRLXCSMEBVV3O6", "Arn": "arn:aws:iam::xxxxxxxxxxxx:server-certificate/my-server-test", "UploadDate": "2019-03-20T05:17:07Z", "Expiration": "2020-03-19T05:16:17Z" } }
Теперь, когда вы загрузили свой сертификат в свою учетную запись AWS, вы можете использовать его при настройке балансировщика нагрузки для HTTPS.
Ура 👏👏👏👏👏
Подпишитесь на нас в Twitter 🐦 и Facebook 👥 и присоединитесь к нашей группе Facebook 💬 .
Чтобы присоединиться к нашему сообществу Slack 🗣️ и читать наши еженедельные темы о Фавнах 🗞️, нажмите здесь⬇