CUSTOMIZE Gebruikt u TLS ouder dan 1.2? Het is oké, onderhoudsvertragingen komen bij iedereen voor. We begrijpen het. Het is echter tijd om verder te gaan.
Business in a box.
Ontdek onze oplossingen.
Praat met ons verkoopteam
Gebruik je TLS ouder dan 1.2? Het is oké, onderhoudsupdatevertragingen gebeuren bij iedereen. We begrijpen het. Maar het is tijd om verder te gaan.
Weet je nog, in juni 2018, toen we het gebruik van TLS 1.0 afschaften? Als je dat niet meer weet, is dat oké, je kunt er alles over lezen in dit bericht. Nu, twee jaar later, staat de volgende versie op het punt om opzij gezet te worden, dus we willen dat je goed voorbereid bent en enige onderbreking in de dienstverlening vermijdt. Dit bericht gaat erover om jou klaar te maken voor het draaien zonder het gebruik van TLS1.1 zodat we de toegang tot alleen TLS1.2 kunnen beperken. We begeleiden je door hoe je je huidige versie kunt controleren en hoe je kunt upgraden naar de nieuwste versie. Gewoon voor de lol zouden we echt graag jouw feedback horen en jou toevoegen aan een 'wall of awesomeness' met alle veiligheidsbewuste bedrijven die vroegtijdig de verandering doorvoeren.
Heeft dit invloed op mij?
In 2018 vroegen we onze klanten om te upgraden, en TLS 1.2 is al enige tijd de aanbeveling, dus het is zeer waarschijnlijk dat u NIET getroffen bent. Als u echter enige methode gebruikt om berichten in te voeren (SMTP of REST API) of gegevens te verzamelen (metrics of webhooks, enz.), dan moet u nu echt controleren of uw systeem TLS 1.2 kan ondersteunen. Zorg ervoor dat u de volgende tests uitvoert op de servers die daadwerkelijk verbinding maken met SparkPost.
Waarom het belangrijk is
SparkPost accepteert geen verbindingen op TLS 1.1 na september 2020
Oudere versies zijn niet veilig
TLS 1.2 is al meer dan een decennium het aanbevolen protocol
Alle coole kinderen doen het
Waarom nu?
Eigenlijk zou de vraag moeten zijn "waarom ondersteun je het nog steeds?" TLS 1.2 is al meer dan tien jaar de aanbevolen veilige standaard en we zijn zover dat werkelijk niemand nog ondersteuning biedt voor iets minder dan TLS1.2. Het is tijd om zwakke HTTPS-ondersteuning voorgoed te laten verdwijnen. Als je TLS 1.1 nog steeds gebruikt na maart 2020, zul je moeite hebben om verbinding te maken met de meeste diensten. SparkPost heeft voldoende tijd gegeven om dit bij te werken en nu sturen we de laatste waarschuwingen om dit te upgraden vóór september, wanneer we het voorgoed beëindigen.
Maar hoe, bid vertel, kun je het oplossen?
Het is heel goed mogelijk dat uw IT SysAdmin of WebAdmin dit al voor u heeft gedaan als onderdeel van hun normale onderhoud. Als dat zo is, moet u hen een biertje kopen en bedanken. Zo niet, dan kunt u enkele van de onderstaande stappen volgen om het gedaan te krijgen in Linux, Windows en Mac.
Let op dat we in dit document testen met het Amerikaanse SparkPost-eindpunt
Als u normaal gesproken de Europese implementatie gebruikt, moet u in plaats daarvan het EU-eindpunt gebruiken.
Hoe kunt u dit controleren? (Linux-versie)
Ten eerste, laten we controleren of je vriendelijke buurt SysAdmin dit al voor je heeft geregeld. Dit is eigenlijk onderdeel van de SSL-configuratie, dus het kan worden beheerd in je systeemconfiguratie. Aangezien je Linux gebruikt, is de meest beschrijvende methode nmap, maar je kunt ook openssl gebruiken. Je kunt nmap gebruiken met Linux, Windows en Mac, maar we zullen ook andere methoden voor Windows en Macs verkennen als je geen nieuwe software wilt installeren.
Om dit met nmap te doen, test de ciphers tegen een bekende HTTPS-host. Aangezien het doel is om zeker te zijn dat we veilig verbinding maken met SparkPost, laten we dat eindpunt testen. Zorg ervoor dat je de volgende tests uitvoert op de servers die daadwerkelijk verbinding maken met SparkPost.
nmap --script ssl-enum-ciphers -p 443 api.sparkpost.com
Dit deed ik op mijn eigen ontwikkelserver en je kunt gemakkelijk zien dat mijn configuratie TLS 1.1 en 1.2 ondersteunt, maar niet 1.3. Het is op dit moment belangrijk op te merken dat AWS ALBs, en dus SparkPost-verbindingen, TLS1.3 nog niet ondersteunen, maar het staat op de AWS-roadmap.
Starting Nmap 6.40 ( http://nmap.org ) op 2020-05-06 22:41 UTC Nmap scanrapport voor api.sparkpost.com (52.13.246.255) Host is up (0.00059s latency). Andere adressen voor api.sparkpost.com (niet gescand): 34.211.102.211 52.43.22.201 54.213.185.174 100.20.154.199 52.43.110.79 52.40.215.39 52.40.175.169 rDNS record voor 52.13.246.255: ec2-52-13-246-255.us-west-2.compute.amazonaws.com POORT STATUS SERVICE 443/tcp open https | ssl-enum-ciphers: | TLSv1.1: | ciphers: | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA - sterk | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA - sterk | TLS_RSA_WITH_AES_128_CBC_SHA - sterk | TLS_RSA_WITH_AES_256_CBC_SHA - sterk | compressors: | NULL | TLSv1.2: | ciphers: | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA - sterk | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 - sterk | TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 - sterk | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA - sterk | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 - sterk | TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 - sterk | TLS_RSA_WITH_AES_128_CBC_SHA - sterk | TLS_RSA_WITH_AES_128_CBC_SHA256 - sterk | TLS_RSA_WITH_AES_128_GCM_SHA256 - sterk | TLS_RSA_WITH_AES_256_CBC_SHA - sterk | TLS_RSA_WITH_AES_256_CBC_SHA256 - sterk | TLS_RSA_WITH_AES_256_GCM_SHA384 - sterk | compressors: | NULL |_ minste sterkte: sterk Nmap voltooid: 1 IP-adres (1 host up) gescand in 0.11 seconden
Op dit punt kun je eigenlijk stoppen als je wilt, want het doel is om zeker te zijn dat je verbinding kunt maken met SparkPost met TLS 1.2. Als je verbinding TLS 1.2 ondersteunt, is dat wat we op dit moment nodig hebben, dus we zijn hier helemaal goed. Koop die SysAdmin een biertje en zeg bedankt.
Stuur ons een e-mail en laat ons weten dat je succesvol was.
Controleer de ondersteuning op je Mac
De meest voorkomende reden waarom je misschien ondersteuning nodig hebt voor je Mac is dat je deze gebruikt voor lokale ontwikkeling, dus laten we dat aannemen en je ondersteuning controleren.
De minst invasieve methode is het gebruik van curl, dat in elke Mac ingebouwd zou moeten zijn. Start de Terminal-applicatie en gebruik de protocolvlag om specifiek te testen op TLS1.2.
curl https://api.sparkpost.com/ --tlsv1.2 --verbose * Trying 54.213.185.174... * TCP_NODELAY set * Connected to api.sparkpost.com (54.213.185.174) port 443 (#0) * ALPN, offering h2 * ALPN, offering http/1.1 * Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH * successfully set certificate verify locations: * CAfile: /etc/ssl/cert.pem CApath: none * TLSv1.2 (OUT), TLS handshake, Client hello (1): * TLSv1.2 (IN), TLS handshake, Server hello (2): * TLSv1.2 (IN), TLS handshake, Certificate (11): * TLSv1.2 (IN), TLS handshake, Server key exchange (12): * TLSv1.2 (IN), TLS handshake, Server finished (14): * TLSv1.2 (OUT), TLS handshake, Client key exchange (16): * TLSv1.2 (OUT), TLS change cipher, Client hello (1): * TLSv1.2 (OUT), TLS handshake, Finished (20): * TLSv1.2 (IN), TLS change cipher, Client hello (1): * TLSv1.2 (IN), TLS handshake, Finished (20): * SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256 * ALPN, server accepted to use h2 * Server certificate: * subject: CN=*.sparkpost.com * start date: Jan 30 00:00:00 2020 GMT * expire date: Feb 28 12:00:00 2021 GMT * subjectAltName: host "api.sparkpost.com" matched cert's "*.sparkpost.com" * issuer: C=US; O=Amazon; OU=Server CA 1B; CN=Amazon * SSL certificate verify ok. * Using HTTP2, server supports multi-use * Connection state changed (HTTP/2 confirmed) * Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0 * Using Stream ID: 1 (easy handle 0x7fbd69805200) > GET / HTTP/2 > Host: api.sparkpost.com > User-Agent: curl/7.54.0 > Accept: */* > * Connection state changed (MAX_CONCURRENT_STREAMS updated)! < HTTP/2 200 < date: Thu, 07 May 2020 15:14:30 GMT < content-type: text/plain < content-length: 95 < server: msys-http < * Connection #0 to host api.sparkpost.com left intact Oh hey! Je zou met ons mee moeten werken en geweldige dingen bouwen!
Als je wilt testen met de SMTP-verbinding, kun je dat ook doen met dit commando:
openssl s_client -crlf -starttls smtp -tls1_2 -connect smtp.sparkpostmail.com:587
Geeft een grote hoeveelheid gegevens terug, inclusief:
SSL-Session: Protocol : TLSv1.2 Cipher : ECDHE-RSA-AES256-GCM-SHA384
Controleren op ondersteuning in Windows
Net zoals het gebruiksgeval voor Mac, is de meest voorkomende reden dat je ondersteuning moet controleren op je Windows dat je het gebruikt voor lokale ontwikkeling, dus laten we dat veronderstellen en je ondersteuning controleren.
Windows 7 en Windows 10 gebruiken in wezen hetzelfde proces. Als je iets eerder gebruikt, upgrade dan alsjeblieft, want eerdere versies ondersteunen TLS 1.2 niet.
Begin door op START te klikken in de linkerbenedenhoek (meestal).
Typ "Internetopties" en selecteer de overeenkomst uit de resulterende lijst.
Klik op het tabblad Geavanceerd en scrol daaruit helemaal naar beneden. Als TLS 1.2 is aangevinkt, ben je al helemaal klaar. Als dat niet het geval is, vink het vakje naast Gebruik TLS 1.2 aan en klik vervolgens op Toepassen.
Wacht, wat? Geen 1.2?
Bummer kerel. Uw werk is nog niet klaar.
Als u alleen TLS1.1 heeft, dan dient u uw Cipher-instellingen bij te werken.
Als we aannemen dat u Linux en Apache gebruikt voor het beheer van TLS-verbindingen, kunt u de SSL-configuratie bijwerken door deze regel aan te passen en “+TLSv1.2” toe te voegen:
SSLProtocol -all +TLSv1 +TLSv1.1 +TLSv1.2
(Terzijde: Aangezien ze nergens meer echt worden ondersteund, is het logisch om de 1.0- en 1.1-instellingen te verwijderen terwijl u hier bent.)
Die configuratie bevindt zich meestal in /etc/httpd/conf.d/ssl.conf
Herstart Apache en u bent klaar om te gaan.
service httpd restart
Als u Nginx gebruikt, wilt u deze regel op een vergelijkbare manier wijzigen:
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
Die configuratie bevindt zich meestal in /etc/nginx/conf.d/
Herstart Nginx en u bent klaar om te gaan.
service nginx restart
Als u foutmeldingen krijgt bij het herstarten, beschikt u mogelijk over een verouderde SSL-bibliotheek. Zorg ervoor dat u ten minste openssl v1.0.1g gebruikt.
Als u Windows gebruikt, staan de instructies voor het instellen van TLS1.2 in de sectie “Ondersteuning controleren in Windows” hierboven.
Alles klaar nu? Stuur ons een e-mail en laat het ons weten of u succesvol was.
Een stap verder gaan
Waarom stoppen bij TLS 1.2 als je weet – je gewoon weet – dat we allemaal zullen moeten upgraden naar TLS 1.3 in het komende jaar of zo. Waarom niet gewoon upgraden naar TLSv1.3 terwijl we bezig zijn?
Helaas ondersteunen AWS ALBs TLS1.3 nog niet, dus als je je configuratie upgrade, zal je verbinding met SparkPost en elke andere AWS-service die de ALB-laag gebruikt, nog steeds beperkt zijn tot TLS1.2. Persoonlijk denk ik nog steeds dat het een goed idee is om voorop te lopen en te upgraden naar 1.3 terwijl je toch wijzigingen aanbrengt.
Als je TLS 1.3-ondersteuning wilt toevoegen, moet je waarschijnlijk eerst je OpenSSL-bibliotheek updaten naar V1.1.1 of later en vervolgens +TLSv1.3 toevoegen aan de hierboven genoemde protocollijn. Vergelijkbare instructies zijn hier te vinden voor Nginx en Cloudflare.
Blijf veilig daarbuiten
Uiteindelijk zou het geweldig zijn als u ons een snel e-mailtje kunt sturen om ons te laten weten dat u in staat bent om TLS 1.2 te gebruiken. We willen echt niemand afsluiten en de uiterste datum is september 2020. Als we weten dat u zich in de veilige zone bevindt, zullen we ons veel beter voelen over het uitschakelen van de oude ondersteuning.