Ausführen von nginx mit SSL auf AWS

Ausführen von nginx mit SSL auf AWS

Ich habe nginx auf AWS mit diesem Konfigurationsskript installiert

--prefix=/usr/local/nginx-1.16.1 --with-http_ssl_module --with-openssl=~/Downloads/openssl-1.1.1i --without-http_rewrite_module

und ich habe ein Zertifikat für meine URL (es sei mydom.com) mit dem AWS Certificate Manager (ACM) ausgestellt und sein Status wird wie folgt angezeigt:AusgegebenDann habe ich den entsprechenden Abschnitt imnginx.conf

server {
listen 443 ssl;
server_name localhost mydom.com;
ssl_certificate  /etc/ssl/certs/ca-bundle.crt;
ssl_certificate_key  /etc/trusted-key.key;
<truncated>
}

Ich habe die Dateien ausgewählt: /etc/ssl/certs/ca-bundle.crtund /etc/trusted-key.keyzwar nur, weil sie im Linux-Dateisystem vorhanden waren und nur, um zu sehen, ob nginx mit ihnen laufen würde, aber es lief nicht. Es kam:

[emerg] cannot load certificate key "/etc/trusted-key.key": PEM_read_bio_PrivateKey() failes (SSL: error:0909006C:PEM routines:get_name: no start line:Expecting: ANY PRIVATE KEY)

Das war natürlich nur ein Versuch. Ansonsten denke ich, ich sollte wahrscheinlich die .crtvom ACM ausgegebene Datei verwenden (falls es welche gibt) und dann irgendwie eine .keyDatei erstellen und sie irgendwo im Linux-Dateisystem ablegen, beispielsweise unter dem /etc/nginx/ssl? Ich bin nicht sicher. Wie soll ich vorgehen?

Hinweis: Ich habe einige Erfahrung mit dem Ausführen von Webanwendungen auf meinem eigenen Webserver, verwende jedoch nur diehttpIch habe nicht viel Erfahrung mithttps

Antwort1

ACM-Zertifikate können nur von AWS-verwalteten Diensten verwendet werden, hauptsächlich von Lastenausgleichsmodulen. Sie haben keinen Zugriff auf den privaten Schlüssel und können daher kein ACM-Zertifikat mit Nginx vorlegen, das auf Ihrer EC2-Instanz installiert ist.

Ihre besten Optionen sind:

  • Beenden Sie https an einem ALB und leiten Sie den Verkehr über http an den Webserver weiter.
  • Verwenden Sie ein Let’s Encrypt-Zertifikat. Es gibt eine große Auswahl an Software, die diesen Vorgang automatisiert.

verwandte Informationen