Er is vaak nogal wat verwarring over de verschillende termen: SSL, TLS, STARTTLS en STLS.
SSL en TLS
SSL en TLS zijn cryptografische protocollen, beide bieden een manier om communicatiekanaal tussen twee machines via het Internet te versleutelen (bijvoorbeeld clientcomputer en een server). SSL staat voor Secure Sockets Layer en de huidige versie is 3.0. TLS staat voor Transport Layer Security en de huidige versie is 1.2. TLS is de opvolger van SSL., De termen SSL en TLS kunnen door elkaar worden gebruikt, tenzij u naar een specifieke protocolversie verwijst.
versienummering is inconsistent tussen SSL en TLSs. Toen TLS SSL als voorkeursprotocol nam, begon het met een nieuw versienummer. De volgorde van protocollen in termen van oudste aan Nieuwste is: SSLv2, SSLv3, TLSv1.0, TLSv1.1, TLSv1.2.
STARTTLS en STLS
STARTTLS is een protocolcommando, dat wordt uitgegeven door een e-mailclient. Het geeft aan, dat de client wil bestaande, onveilige verbinding te upgraden naar een veilige verbinding met behulp van SSL/TLS cryptografisch protocol., STARTTLS-opdrachtnaam wordt gebruikt door SMTP-en IMAP-protocollen, terwijl het POP3-protocol STLS als opdrachtnaam gebruikt.
Clear text / Plain text
Er wordt helemaal geen beveiligingsprotocol gebruikt. Alle commando ‘ s, antwoorden en gegevens worden overgebracht in platte tekst.
client.Connect("mail.example.com");
Implict SSL mode
Implict SSL mode betekent, dat u verbinding maakt met SSL/TLS versleutelde poort.,
client.ConnectSSL("mail.example.com");
expliciete SSL-modus
expliciete SSL-modus betekent dat u verbinding maakt met de plaint-tekstpoort en de verbinding beveiligt door het commando STARTTLS (of STLS) achteraf uit te voeren (u beveiligt de verbinding expliciet).
client.Connect("mail.example.com");client.StartTLS();
het beveiligen van de verbinding
ongeacht of u implicpt (verbinding maken met een SSL/TLS versleutelde poort) of explicit (STARTTLS gebruiken om een bestaande verbinding te upgraden) modus gebruikt, beide zijden zullen onderhandelen welk protocol en welke versie te gebruiken., Deze onderhandeling is gebaseerd op hoe client en server zijn geconfigureerd en wat elke kant ondersteunt.
SSL / TLS-ondersteuning
Ondersteuning voor SSL / TLS is vrijwel universeel, maar welke versies worden ondersteund is variabel. Vrijwel alles ondersteunt SSLv3. De meeste machines ondersteunen TLSv1. 0.
TLS vs STARTTLS naamgevingsprobleem
een belangrijke complicerende factor is dat sommige e-mailsoftware de term TLS onjuist gebruikt terwijl ze “STARTTLS” of “expliciete SSL/TLS”hadden moeten gebruiken., Oudere versies van Thunderbird gebruikt ” TLS “betekenen” afdwingen gebruik van STARTTLS om de verbinding te upgraden, en mislukken als STARTTLS niet wordt ondersteund “en” TLS, indien beschikbaar “betekenen” gebruik STARTTLS om de verbinding te upgraden, als de server adverteert ondersteuning voor het, anders gewoon gebruik maken van een onveilige verbinding ” (zeer problematisch, zoals we hieronder zullen zien).
poortnummers
om beveiliging toe te voegen aan sommige bestaande protocollen (IMAP, POP3, SMTP), werd besloten om SSL / TLS-versleuteling toe te voegen als een laag onder het bestaande protocol., Maar om onderscheid te maken dat de software moeten praten de SSL/TLS-gecodeerde versie van het protocol plaats van de tekst, een ander poort nummer werd gebruikt voor elk protocol:
Protocol | Gewone tekst | SSL |
---|---|---|
IMAP | 143 | 993 |
POP3 | 110 | 995 |
SMTP | 587 of 25 | 465 |
Te veel poorten?, Oplossing: platte tekst + STARTTLS
op een gegeven moment werd besloten dat het hebben van 2 poorten voor elk protocol verspillend was, en in plaats daarvan is het beter om 1 poort te hebben, die begint als platte tekst, maar clients kunnen de verbinding upgraden naar een SSL/TLS versleutelde met behulp van STARTTLS (of STLS voor POP3 protocol) commando.
STARTTLS problemen
Er waren een paar problemen met dit. Er bestaat veel software, die de alternatieve poortnummers gebruikt met pure SSL / TLS verbindingen., Client software kan een zeer lange levensduur hebben, dus je kunt niet alleen de versleutelde poorten uitschakelen totdat alle software is geüpgraded.
elk protocol ontving mechanismen om clients te vertellen dat de server een upgrade naar SSL/TLS ondersteunde (bijvoorbeeld STARTTLS in IMAP ’s CAPABILITY response), en dat ze niet zouden moeten proberen in te loggen zonder de STARTTLS-upgrade uit te voeren (LOGINDISABLED in IMAP’ s CAPABILITY response)., Dit leidde tot twee ongelukkige situaties:
- sommige software negeerde gewoon de” login disabled until upgraded ” aankondiging (LOGINDISABLED, STARTTLS) en probeerde gewoon in te loggen, waarbij de gebruikersnaam en het wachtwoord via clear text kanaal werden verzonden. De server verwierp de login en het wachtwoord, maar de gegevens waren al verzonden via het Internet in platte tekst.
- andere software zag de” login disabled until upgraded ” aankondiging, maar dan zou de verbinding niet automatisch upgraden, en dus gemeld login fouten terug naar de gebruiker, die verwarring veroorzaakt over wat er mis was.,
beide problemen resulteerden in belangrijke compatibiliteitsproblemen met bestaande clients, en dus bleven de meeste systeembeheerders gewoon platte tekstverbindingen gebruiken op één poort, en versleutelde verbindingen op een apart poortnummer.
platte tekst uitschakelen voor IMAP en POP3
veel bedrijven (bijvoorbeeld Gmail, Outlook.com) uitgeschakeld plain IMAP (poort 143) en plain POP3 (poort 110), dus mensen moeten gebruik maken van een SSL/TLS versleutelde verbinding – Dit verwijdert de noodzaak voor het hebben van STARTTLS Commando volledig.
SMTP STARTTLS stays
de enige echte uitzondering op het bovenstaande is SMTP., De meeste e-mailsoftware gebruikte SMTP op poort 25 om berichten naar de e-mailserver te verzenden voor verdere transmissie naar de bestemming. SMTP was echter oorspronkelijk ontworpen voor overdracht, niet voor indiening. Dus nog een andere poort (587) werd gedefinieerd voor het indienen van berichten.
poort 587 verplicht niet om STARTTLS te vereisen, maar het gebruik van poort 587 werd populair rond dezelfde tijd als het besef dat SSL/TLS-versleuteling van communicatie tussen clients en servers een belangrijk probleem was., Het resultaat is dat de meeste systemen, die berichtenverzending via poort 587 bieden, vereisen dat clients STARTLS gebruiken om de verbinding te upgraden. Login en wachtwoord om te authenticeren is ook vereist.
deze benadering heeft ook een bijkomend voordeel opgeleverd. Door gebruikers weg te halen van het gebruik van poort 25 voor het indienen van e-mail, kunnen ISP’ s uitgaande poort 25-Verbindingen blokkeren van computers van gebruikers, die een belangrijke bron van spam waren, als gevolg van gebruikerscomputers besmet met spam verzenden virussen.,
verdere metingen
SSL/TLS gebruiken met IMAP
SSL/TLS gebruiken met SMTP
SSL/TLS gebruiken met POP3
Tags: IMAP, POP3, SMTP, SSL, TLS