Heim > Artikel > Betrieb und Instandhaltung > So passen Sie den Nginx-Server an die OpenSSL-Sicherheitslücke an
1. Übersicht
Derzeit wurden OpenSSL-Schwachstellen aufgedeckt, die zum Verlust privater Informationen führen. Es sind viele Maschinen beteiligt und die Umgebungen sind sehr unterschiedlich, was zu unterschiedlichen Reparaturlösungen führt. Viele Server verwenden Nginx, um OpenSSL statisch zu kompilieren und OpenSSL direkt in NginX zu kompilieren. Dies bedeutet, dass ein einfaches Upgrade von OpenSSL keine Auswirkungen auf die externe OpenSSL-Link-Bibliothek hat.
2. Identifizieren Sie, ob Nginx statisch kompiliert ist
Die folgenden drei Methoden können bestätigen, ob Nginx statisch kompiliert ist.
2.1 Nginx-Kompilierungsparameter anzeigen
Geben Sie den folgenden Befehl ein, um Nginx-Kompilierungsparameter anzuzeigen:
# ./sbin/nginx -v
Wenn die Kompilierungsparameter --with-openssl=... enthalten, bedeutet dies, dass Nginx openSSL statisch kompiliert, wie gezeigt unten:
nginx version: nginx/1.4.1 built by gcc 4.4.7 20120313 (red hat 4.4.7-3) (gcc) tls sni support enabled configure arguments: --prefix=/opt/app/nginx --with-http_ssl_module --with-openssl=/opt/app/openssl-1.0.1e --add-module=/opt/app/ngx_cache_purge-2.1
2.2 Zeigen Sie die abhängigen Bibliotheken von Nginx an
Zur weiteren Bestätigung können Sie die abhängigen Bibliotheken des Programms überprüfen und den folgenden Befehl eingeben:
# ldd `which nginx` | grep ssl
Display
libssl.so.10 => /usr/lib/libssl.so.10 (0xb76c6000)
Hinweis: Wenn die Ausgabe nicht funktioniert Die Datei libssl.so () enthält, was bedeutet, dass es sich um statisch kompiliertes OpenSSL handelt. Geben Sie dann den Befehl ein, um OpenSSL zu ermitteln, um die OpenSSL-Version zu ermitteln, zu der die Bibliothek gehört. Dies sollte jedoch nicht zu detailliert sein 1.0.1e.5.7 sein, aber nur 1.0.1e wird ausgegeben:
# strings /usr/lib/libssl.so.10 | grep "^openssl " openssl 1.0.1e-fips 11 feb 20132.3 Überprüfen Sie die von nginx geöffneten Dateien. Sie können auch überprüfen, ob die von nginx geöffneten Dateien statisch kompiliert sind
# ps aux | grep nginx # lsof -p 111111<这里换成nginx的进程pid> | grep ssl
Wenn die OpenSSL-Bibliotheksdatei nicht geöffnet ist, bedeutet dies, dass OpenSSL statisch kompiliert ist, wie im Bild unten gezeigt:
3. Nginx neu kompilieren
Das obige ist der detaillierte Inhalt vonSo passen Sie den Nginx-Server an die OpenSSL-Sicherheitslücke an. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!