Beispiel für die Konfiguration mehrerer SSL-Zertifikate für eine einzelne Nginx-IP-Adresse

Beispiel für die Konfiguration mehrerer SSL-Zertifikate für eine einzelne Nginx-IP-Adresse

Standardmäßig unterstützt Nginx nur ein SSL-Zertifikat pro IP-Adresse. Zum Konfigurieren mehrerer SSL-Zertifikate sind mehrere IP-Adressen erforderlich. Wenn die Anzahl der öffentlichen IP-Adressen begrenzt ist, können Sie die TLS Server Name Indication-Erweiterung (SNI, RFC 6066) verwenden, die es dem Browser ermöglicht, während des SSL-Handshakes den angeforderten Servernamen, d. h. den Host, zu senden, damit Nginx die SSL-Konfiguration des entsprechenden Servers finden kann.

Die Konfigurationsschritte sind wie folgt:

1. Prüfen Sie, ob Nginx TLS unterstützt

$ nginx -V
...
TLS SNI-Unterstützung aktiviert
...

2. Wenn die TLS-SNI-Unterstützung deaktiviert wird, müssen Sie die OpenSSL-Version aktualisieren und Nginx neu kompilieren.

Die einzelnen Schritte sind wie folgt:

Laden Sie zuerst openssl herunter (Version 1.0.1h wird empfohlen)

#wget http://www.openssl.org/source/openssl-1.0.1h.tar.gz

Laden Sie Nginx herunter

#wget http://nginx.org/download/nginx-1.9.9.tar.gz

Entpacken Sie openssl

#tar -zxvf openssl-1.0.1h.tar.gz

Nginx entpacken und kompilieren

#tar -zxvf nginx-1.9.9.tar.gz
#cd nginx-1.9.9
#./Konfigurieren --user=www --group=www --prefix=/usr/local/nginx --mit-http_stub_status_module --mit-http_ssl_module --mit-http_gzip_static_module --mit-ipv6 --mit-openssl=../openssl-1.0.1h/
#make && make installieren

#Überprüfen Sie die Nginx-Versionsinformationen

#/usr/local/nginx/sbin/nginx -V
Nginx-Version: nginx/1.9.9
erstellt mit gcc 4.1.2 20080704 (Red Hat 4.1.2-55)
erstellt mit OpenSSL 1.0.1h 5. Juni 2014
TLS SNI-Unterstützung aktiviert
Argumente konfigurieren: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6 --with-openssl=../openssl-1.0.1h/

Konfigurieren Sie das Domänennamenzertifikat in Vhost

Server
    {
     #########
        hören Sie 80;
        hören Sie 443 SSL;
        #listen [::]:80;
        Servername we.baohua.me;
        Wurzel /home/wwwroot/we.baohua.me;

        SSL aktiviert;
        SSL-Zertifikatsschlüssel /home/wwwroot/cert/we.baohua.me.key;
        SSL-Zertifikat /home/wwwroot/cert/we.baohua.me.crt;
        SSL-Protokolle SSLv3 TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers HOCH:!aNULL:!MD5;
     ###############
}

Starten Sie dann Nginx neu.

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • So konfigurieren Sie ein SSL-Zertifikat unter Nginx
  • Detaillierte Erläuterung der SSL-Sicherheitskonfiguration im Nginx-Server
  • Detaillierte Erläuterung der SSL-Modulkonfiguration von Nginx zur Unterstützung des HTTPS-Zugriffs
  • So aktivieren Sie SSL im Nginx-Server
  • Nginx konfiguriert das SSL-Zertifikat so, dass es auf Port 443 lauscht
  • So konfigurieren Sie die SSL-Zwei-Wege-Verifizierung in Nginx
  • Detaillierte Erläuterung der Nginx-Konfiguration des SSL-Zertifikats zur Erlangung des HTTPS-Zugriffs
  • SSL-Zertifikatkonfiguration des Nginx-Servers und Reverse-Proxy-Konfiguration für SSL
  • So konfigurieren Sie ein SSL-Zertifikat in Nginx, um den HTTPS-Dienst zu implementieren
  • Beispiel-Tutorial zur lokalen Konfiguration des SSL-Zugriffs bei Nginx

<<:  So implementieren Sie die Navigationsfunktion im WeChat Mini-Programm

>>:  Detaillierte Erläuterung der Installationsmethode von Mysql 5.7.18 und des Prozesses zum Starten des MySQL-Dienstes

Artikel empfehlen

Reagieren Sie auf die Konstruktionsreihenfolge verschachtelter Komponenten

Inhaltsverzeichnis Auf der offiziellen React-Webs...

Erweiterte Closures in JavaScript erklärt

Inhaltsverzeichnis 1. Das Konzept der Schließung ...

vue2.x-Konfiguration von vue.config.js zur Projektoptimierung

Inhaltsverzeichnis Vorwort vue.config.js-Konfigur...

Verwenden Sie JS, um Dateien zu bearbeiten (FileReader liest --node's fs)

Inhaltsverzeichnis JS liest Datei FileReader doku...

So ändern Sie das Kennwort von mysql5.7.20 unter Linux CentOS 7.4

Nach dem Upgrade von MySQL auf Version 5.7 wurde ...

Über gutes Design

<br />Auf zehntausend Personen, die die Frag...

Mehrere CSS3-Tag-Abkürzungen (empfohlen)

border-radius: CSS3 abgerundete Ecken Syntax: bor...

Probleme und Lösungen für MYSQL5.7.17-Verbindungsfehler unter MAC

Das Problem, dass MYSQL5.7.17 unter MAC keine Ver...

nginx+tomcat-Beispiel für den Zugriff auf das Projekt über den Domänennamen

Ich wollte wissen, wie ich mit einem Domänennamen...