inaktivera TLS 1.0 och 1.1 i Apache och Nginx

Alla versioner av SSL /TLS protokollet före TLS 1.2 är nu avskrivna och anses vara osäkra. Många webbserverplattformar har fortfarande TLS 1.0 och TLS 1.1 aktiverad som standard. Men alla moderna webbläsare är kompatibla med TLS 1.2. Av denna anledning är det en bra idé för webbplatsägare att kontrollera deras serverkonfiguration för att se till att endast aktuella, säkra versioner av SSL /TLS är aktiverade och alla andra (inklusive TLS 1.0 TLS 1.1 och SSL 3.0) är inaktiverade.

Den här guiden innehåller instruktioner för att kontrollera vilka versioner av SSL /TLS är aktiverade på en webbplats och inaktiverar föråldrade versioner av SSL /TLS i Apache och Nginx, och visar exempel på webbläsarfel som härrör från servrar som kör enbart föråldrade, osäkra versioner av SSL /TLS.

Markera Aktiverad SSL /TLS versioner

Online-verktyg

Du kan snabbt kontrollera versionerna av SSL /TLS din webbplats stöder genom att besöka CDN77 TLS checker och ange det domännamn du vill kontrollera. Som kan ses nedan, https://example.com inaktiverar för närvarande SSL-version 2 och 3, men aktiverar alla versioner av TLS (inklusive föråldrad TLS 1.1 och 1.0):

SSL /TLS versioner som stöds av exempel.com

Nmap

Du kan också söka efter SSL /TLS versioner och chiffer som stöds av en webbplats med öppen källkod nmap kommandoradsverktyg:

nmap --script ssl-enum-ciphers -p

Standardporten för SSL /TLS is 443. Kommandot nedan genererar en rapport för example.com:

$ nmap --script ssl-enum-ciphers -p 443 example.com Från och med Nmap 7.80 (https://nmap.org) vid 2020-08-25 13:10 EDT Nmap scan-rapport till exempel.com (93.184.216.34) Värd är uppe (0.031s latens). Andra adresser till exempel.com (ej skannade): 2606: 2800: 220: 1: 248: 1893: 25c8: 1946 PORT STATE SERVICE 443 / tcp öppen https | ssl-enum-chiffer: |   TLSv1.0: | chiffer: |       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp256r1) - A |       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1) - A |       TLS_DHE_RSA_WITH_AES_128_CBC_SHA (dh 2048) - A |       TLS_DHE_RSA_WITH_AES_256_CBC_SHA (dh 2048) - A |       TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA (dh 2048) - A |       TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA (dh 2048) - A |       TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A |       TLS_RSA_WITH_CAMELLIA_256_CBC_SHA (rsa 2048) - A |       TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A |       TLS_RSA_WITH_CAMELLIA_128_CBC_SHA (rsa 2048) - A |       TLS_DHE_RSA_WITH_SEED_CBC_SHA (dh 2048) - A |       TLS_RSA_WITH_SEED_CBC_SHA (rsa 2048) - A | kompressorer: | NULL | chifferinställning: server |   TLSv1.1: | chiffer: |       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp256r1) - A |       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1) - A |       TLS_DHE_RSA_WITH_AES_128_CBC_SHA (dh 2048) - A |       TLS_DHE_RSA_WITH_AES_256_CBC_SHA (dh 2048) - A |       TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA (dh 2048) - A |       TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA (dh 2048) - A |       TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A |       TLS_RSA_WITH_CAMELLIA_256_CBC_SHA (rsa 2048) - A |       TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A |       TLS_RSA_WITH_CAMELLIA_128_CBC_SHA (rsa 2048) - A |       TLS_DHE_RSA_WITH_SEED_CBC_SHA (dh 2048) - A |       TLS_RSA_WITH_SEED_CBC_SHA (rsa 2048) - A | kompressorer: | NULL | chifferinställning: server |   TLSv1.2: | chiffer: |       TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (secp256r1) - A |       TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (secp256r1) - A |       TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 (dh 2048) - A |       TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 (dh 2048) - A |       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (secp256r1) - A |       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp256r1) - A |       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (secp256r1) - A |       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1) - A |       TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 (dh 2048) - A |       TLS_DHE_RSA_WITH_AES_128_CBC_SHA (dh 2048) - A |       TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 (dh 2048) - A |       TLS_DHE_RSA_WITH_AES_256_CBC_SHA (dh 2048) - A |       TLS_RSA_WITH_AES_128_GCM_SHA256 (rsa 2048) - A |       TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA (dh 2048) - A |       TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA (dh 2048) - A |       TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A |       TLS_RSA_WITH_CAMELLIA_256_CBC_SHA (rsa 2048) - A |       TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A |       TLS_RSA_WITH_CAMELLIA_128_CBC_SHA (rsa 2048) - A |       TLS_DHE_RSA_WITH_SEED_CBC_SHA (dh 2048) - A |       TLS_RSA_WITH_SEED_CBC_SHA (rsa 2048) - A | kompressorer: | NULL | chifferinställning: server | _ minsta styrka: En Nmap gjort: 1 IP-adress (1 värd upp) skannad på 3.88 sekunder

Server Configuration

Apache

Att inaktivera TLS 1.0 och 1.1 i Apache, måste du redigera konfigurationsfilen som innehåller SSLProtocol direktiv för din webbplats. Den här filen kan finnas på olika platser beroende på din plattform, version eller annan installationsinformation. Några möjliga platser är:

  • /usr/local/apache2/conf/extra/httpd-ssl.conf (standard Apache-installation)
  • /etc/apache2/mods-enabled/ssl.conf (Ubuntu / Debian)
  • /private/etc/apache2/extra/httpd-ssl.conf (Mac OS)

När du har hittat rätt konfigurationsfil letar du efter en rad som börjar med SSLProtocol. Detta exempel, från en standardinstallation av macOS Apache, inaktiverar SSLv3 med - operatör men möjliggör TLS 1.0 och 1.1:

SSLProtocol all -SSLv3

Du kan inaktivera alla föråldrade versioner av SSL /TLS stöds av Apache genom att specificera dem enligt följande:

SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1

Konfigurationen ovan möjliggör TLS 1.2, liksom TLS 1.3 om den är tillgänglig i din miljö.

Apache och virtuella värdar

Apache kan köra mer än en webbplats på en enda server. Dessa virtuella värdar kan baseras på IP-nummer, port eller domännamn och kan innehålla inställningar som åsidosätter baskonfigurationen för Apache. Av den anledningen bör du kontrollera inställningarna för varje virtuell värd i dina konfigurationsfiler, särskilt om dina ändringar av bas SSL /TLS konfigurationen verkar inte fungera.

För versioner av Apache före 2.4.42 (byggd / länkad mot OpenSSL före 1.1.1) var det inte möjligt att ange olika SSL /TLS protokoll för namnbaserade virtuella värdar som delar samma bas IP-nummer och port - SSLProtocol av den första virtuella värden tillämpades på alla andra. Från och med Apache 2.4.42 / OpenSSL 1.1.1, den SSLProtocol av varje namnbaserad virtuell värd hedras när Servernamnindikering (SNI) tillhandahålls av klienten under SSL /TLS handskakning.

När du har gjort dina konfigurationsändringar, ladda om Apache för att sätta dem i kraft. För mer information om SSLProtocol direktiv, se Apache's dokumentation.

nginx

SSL /TLS protokollinställningar kan anges i den primära Nginx-konfigurationsfilen (vanligtvis på /etc/nginx/nginx.conf), eller i konfigurationsfilerna för din webbplats. Leta efter en rad som börjar med ssl_protocols. Till exempel är följande från standard nginx.conf fil från en ny Nginx-installation på Ubuntu:

ssl_protokoll TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # Tappar SSLv3, ref: POODLE

Du kan redigera den här raden så att endast nuvarande, säkra versioner av SSL /TLS ingår:

ssl_protokoll TLSv1.2 TLSv1.3;

Observera att eventuella inställningar i din standard SSL-konfiguration kan åsidosättas av serverblock som konfigurerar enskilda domännamn, så se till att kontrollera om det finns ändringar i dina protokollinställningar på din webbplats.

När du har gjort dina konfigurationsändringar laddar du om Nginx för att sätta dem i kraft. Mer information finns i Nginx dokumentation på konfigurera HTTPS-servrar.

TLS 1.0 och 1.1 Webbläsarfel

Därför att TLS version 1.0 och 1.1 betraktas för närvarande som osäkra, de flesta moderna webbläsare ger ett felmeddelande om de stöter på en webbplats där dessa är föråldrade TLS versioner är aktiverade men TLS 1.2 eller 1.3 är inte. Exempel på dessa fel visas nedan:

Google Chrome

Chrome-testning gjordes med Chrome 84 på Windows 10. Skärmbilder är från Chrome. Observera att den aktuella versionen av Microsoft Edge (baserad på Chromium) visar samma felkod som Chrome, åtföljd av en något annorlunda text.

Google Chrome visar följande felmeddelande när den ansluter till en webbplats som körs TLS 1.0 eller 1.1:

Din anslutning är inte helt säker
Denna webbplats använder en föråldrad säkerhetskonfiguration, som kan avslöja din information (till exempel lösenord, meddelanden eller kreditkort) när den skickas till den här webbplatsen.
NET::ERR_SSL_OBSOLETE_VERSION

TLS 1.0 felmeddelande i ChromeGenom att klicka på Advanced Open water -knappen visar följande meddelande, plus en länk för att gå vidare till webbplatsen, märkt osäker:

Den anslutning som används för att ladda den här webbplatsen används TLS 1.0 eller TLS 1.1, som är utfasade och kommer att inaktiveras i framtiden. När inaktiverat kommer användarna att hindras från att ladda den här webbplatsen. Servern bör aktiveras TLS 1.2 eller senare.

Avancerad information om TLS 1.0 och 1.1 i Chrome

Mozilla Firefox

Firefox-testning gjordes med Firefox 79.0 på Windows 10.

Mozilla Firefox ger följande felmeddelande när den ansluter till en webbplats som körs TLS 1.0 eller 1.1:

Säker anslutning misslyckades
Ett fel inträffade under en anslutning till [URL]. Peer med hjälp av version som inte stöds av säkerhetsprotokollet.
Felkod: SSL_ERROR_UNSUPPORTED_VERSION
.
Denna webbplats stöder kanske inte TLS 1.2-protokollet, vilket är den minsta version som stöds av Firefox. Möjliggör TLS 1.0 och 1.1 kan tillåta att denna anslutning lyckas.
TLS 1.0 och TLS 1.1 kommer att inaktiveras permanent i en framtida version.

firefox TLS 1.0 och 1.1 felmeddelande

Genom att klicka på aktivera TLS 1.0 och 1.1 -knappen kan hjälpa till att ladda webbplatsen, men det är inte ett engångsundantag. För att återaktivera TLS 1.0 och 1.1, gå till about:config i Firefox och ställa in security.tls.version.enable-deprecated till false.

ställa in säkerhet.tls.version.enable-fasad till false

Apple Safari

Safari-testning gjordes med Safari version 13.1.2 på macOS 10.15.6 (Catalina)

Apples Safari-webbläsare laddar HTTPS-webbplatser med TLS 1.0 och 1.1, men kommer att visa ett meddelande "Inte säker" i webbläsarens adressfält.

TLS 1.0-webbplats i Apple Safari

För mer information

För att läsa om säkerhetsproblemen i samband med tidigare versioner av TLS, läs vår artikel, Avskrivning tidigt TLS för ett säkrare internet. För mer information om de viktiga skillnaderna mellan TLS 1.2 och TLS 1.3, kolla in TLS 1.3 är här för att stanna.

Och som alltid, om du har några frågor, vänligen kontakta oss via e-post på Support@SSL.com, ring upp 1-877-SSL-SECUREeller klicka bara på chattlänken längst ned till höger på den här sidan. Du kan också hitta svar på många vanliga supportfrågor i vår kunskapsbas. Tack för att du besöker SSL.com!

Twitter
Facebook
LinkedIn
reddit
E-postadress

Håll dig informerad och säker

SSL.com är en global ledare inom cybersäkerhet, PKI och digitala certifikat. Registrera dig för att få de senaste branschnyheterna, tipsen och produktmeddelanden från SSL.com.

Vi vill gärna ha din feedback

Följ vår undersökning och låt oss veta vad du tycker om ditt senaste köp.