Wie aktiviere ich TLS 1.1 und 1.2 für SSL-Verbindungen auf meinem Ubuntu 12.04-Server? Ich benutze die folgende Version von Nginx und OpenSSL-Bibliothek.
$ ./nginx -v
nginx version: nginx/1.2.3
$ openssl version -a
OpenSSL 1.0.1 14 Mar 2012
built on: Tue Jun 4 07:26:06 UTC 2013
platform: debian-amd64
options: bn(64,64) rc4(16x,int) des(idx,cisc,16,int) blowfish(idx)
compiler: cc -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -DTERMIO -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -D_FORTIFY_SOURCE=2 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall -DOPENSSL_NO_TLS1_2_CLIENT -DOPENSSL_MAX_TLS1_2_CIPHER_LENGTH=50 -DMD32_REG_T=int -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM
OPENSSLDIR: "/usr/lib/ssl"
Antworten:
Zuerst müssen Sie SSL / TLS aktivieren in
nginx.conf
:Die beiden
listen
Leitungen aktivieren SSL bei Ihrer IPv4- und IPv6-Verbindung. Wenn Sie kein IPv6 haben, können Sie die zweitelisten
Zeile weglassen.Ich gehe davon aus, dass Ihr Serverzertifikat in ist
/etc/ssl
. Wenn Sie einen anderen Pfad verwenden, ändern Sie die letzten beiden Zeilen.Dies ermöglicht verschiedene TLS-Versionen. Alle aktuellen Browser können TLS1.2 verwenden. Für ältere Browser habe ich ein kleines Howto geschrieben, um sichere Einstellungen zu aktivieren .
In der ersten Zeile werden die Chiffren festgelegt, die Ihr Nignx verwenden soll. Die zweite Zeile bevorzugt die Cipher Suites auf der Serverseite (und nicht auf der Clientseite). Sie können also starke (er) Chiffren verwenden.
Wenn Sie fertig sind, sollte Ihr Nginx TLS1.2 verwenden. Wenn Sie möchten , können Sie Ihre Website einer TLS1.2-Ruhmeshalle hinzufügen und stolz sein. ;)
Es gibt jedoch mehrere Methoden, um die Einstellungen zu verbessern. Ich folge dieser Anleitung für die sichere Konfiguration von Nginx .
quelle
Es gibt zahlreiche Sicherheitshinweise, die in nachfolgenden Versionen von nginx behandelt wurden. Wenn Sie sich in dieser Situation immer noch (6 Monate veraltet?) Befinden, sollten Sie ernsthaft ein Upgrade in Erwägung ziehen. TLS-Einstellungen spielen keine Rolle, wenn der Webserver selbst unsicher ist. Weitere Informationen finden Sie unter http://nginx.org/en/security_advisories.html .
Wenn Sie diese Version von nginx aus irgendeinem Grund ausführen MÜSSEN, helfen die hier verfügbaren Informationen zum Aktivieren starker Cipher Suites mit nginx (oder Apache) wahrscheinlich weiter: https://community.qualys.com/blogs/securitylabs/2013/08/ 05 / apache-nginx-und-openssl-für-vorwärts-geheimhaltung konfigurieren
quelle
Ich glaube, es gibt drei Möglichkeiten.
Tun Sie zunächst nichts und verwenden Sie die Ubuntu 12-Version von OpenSSL. Ich glaube, TLS 1.1 wird jetzt unterstützt, aber Sie werden TLS 1.2 immer noch nicht haben.
Zweitens: Erstellen und pflegen Sie Ihre eigene PPA . Gibt es einige Anweisungen dazu unter " Distro-Paket mit benutzerdefiniertem Paket überschreiben"? Der Vollständigkeit halber gibt es für Ubuntu und OpenSSL keine Personal Package Archives , die die vollständigen Protokolle anbieten.
Das dritte ist ein Upgrade auf eine spätere Version von Ubuntu, wie Ubuntu 14. Ich versuche festzustellen, ob Ubuntu 14 sie alle im Moment aktiviert. Siehe Ubuntu 14, OpenSSL und TLS-Protokolle? .
quelle