Я хочу добавить TLS в мое приложение AWS Elastic Beanstalk. Это приложение node.js, работающее за прокси-сервером nginx.
Вот шаги, которые я выполнил
- Получите групповой сертификат в Amazon Certificate Manager.
- Добавьте сертификат в раздел конфигурации балансировщика нагрузки моего экземпляра EB.
Моя соответствующая часть моей конфигурации nginx -
files:
/etc/nginx/conf.d/proxy.conf:
mode: "000644"
content: |
upstream nodejs {
server 127.0.0.1:8081;
keepalive 256;
}
server {
listen 8080;
proxy_set_header X-Forwarded-Proto $scheme;
if ( $http_x_forwarded_proto != 'https' ) {
return 301 https://$host$request_uri;
}
location / {
proxy_pass http://nodejs;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Когда я пытаюсь получить доступ к своему приложению с помощью https, я получаю 408: Request Timed Out
.
Насколько я понимаю, чтобы включить ssl в nginx, нам нужно добавить сертификат вместе с файлом pem и прослушивать порт 443. Но поскольку я использую сертификат ACM, у меня нет файлов cert и pem.
Чего мне не хватает, чтобы добавить в свой nginx.conf, чтобы это работало?
Спасибо