Beveiligd mailen in Thunderbird met Enigmail en GnuPG


thunderbird logo Als je op deze pagina bent gekomen is de kans groot dat je gebruik maakt van Thunderbird en dat je je zorgen maakt over de veiligheid van je mails. En dat is niet geheel onterecht. Mails vliegen onversleuteld de hele wereld over. Iedereen die het wil ze kan lezen. Daarnaast is het ook nog eens kinderlijk eenvoudig je uit te geven voor iemand anders. Officieren van justitie komen in het nauw. Virussen worden geopend door mensen die dachten een mail van een vriend te krijgen. Je mailbox is heel kwetsbaar. En daarmee je privacy ook!
Zoals je in dit verhaal van Phil Zimmermann, een van de ontwikkelaars van PGP (Pretty Good Privacy, de eerste implementatie van de OpenPGP-standaard), kunt lezen heb je online net zoveel recht op je privacy als in de rest van je leven. Met deze gedachte is PGP ontwikkeld, een implementatie van asymmetrische versleuteling waarmee iedere computergebruiker documenten kan versleutelen, ontcijferen en ondertekenen. In deze tutorial lees je hoe je op eenvoudige wijze in Thunderbird hiervan gebruik maakt en zo mails kunt versturen met digitale handtekening en een versleuteling, die door iedereen met de juiste sleutel en een mail client met OpenPGP-plugin gelezen kunnen worden. En daarnaast blijft je mail voor mensen zonder OpenPGP natuurlijk ook gewoon leesbaar… maar alleen als jij dat wilt natuurlijk ;) .

Publieke sleutels, wat zijn dat?


Als je OpenPGP gebruikt doe je aan zogenaamde asymmetrische versleuteling en heb je de beschikking over een paar sleutels. Eén van de twee hou je voor jezelf, je geheime sleutel, de andere, de publieke sleutel, verspreid je overal waar je maar wilt. Het effect hiervan is dit:
  • Iedereen kan documenten versleutelen met je publieke sleutel, alleen jij kunt deze met je geheime sleutel weer ontcijferen;
  • Je kunt documenten met je geheime sleutel ondertekenen, iedereen kan met de publieke sleutel verfiëren dat de ondertekening gedaan is met jouw geheime sleutel;
  • Vertrouwelijke informatie kan dus zonder priemende ogen van derden aan jou verstrekt worden;
  • Het is lastig voor derden om zich voor jou uitgeven: zij kunnen immers geen handtekening maken met je geheime sleutel.
OpenPGP kan gebruikt worden op alles wat je maar zou willen, van emails tot instant messaging en files die je wilt beschermen. Waar wij echter in geïnteresseerd zijn is veiliger mailen, en dat is precies wat we gaan doen.

GnuPG installeren


Allereerst hebben we een programma nodig dat onze sleutels opslaat en de verificatie, ondertekening, versleuteling, etcetera voor ons afhandelt. Enigmail, de extensie voor Thunderbird die we gaan gebruiken, werkt samen met de GNU Privacy Guard (GPG, een woordgrapje op PGP), een open source-implementatie van OpenPGP die oorspronkelijk ontwikkeld is voor Linux. Gebruik je zelf Linux of een andere unix-variant, dan kun je GPG installeren vanuit een pakket dat bij je distributie hoort. De meeste mensen gebruiken echter Windows, en ook hier is een GPG-port voor te krijgen, echter bevat GPG eigenlijk alleen een interface voor de command line, en, verwend dat we zijn, maken we liever gebruik van een grafische interface dan van tekstcommando’s. GPG zelf gebruiken we echter alleen via Enigmail en alles is dus eenvoudig vanuit Thunderbird zelf te regelen.
De installatie van GPG is verder erg eenvoudig. Nullify biedt een Windows installer voor GPG; de installatie is een kwestie van de installer downloaden, starten en op ‘next’ te klikken tot we klaar zijn. C:\GnuPG\ is wel het pad waar Enigmail zal kijken, dus je doet er verstandig aan dit zo te laten (gegeven dat je Windows op C staat). sleutelpad Let even op: standaard wil de installer de sleutels (keyring) ook in C:\GnuPG installeren, op een Windows XP/2000-systeem is het echter verstandiger om een pad te kiezen in je persoonlijke directory, zoals in het voorbeeld op het plaatje. De setup zal ook vragen om het maken van backups van een oude installatie, het kan geen kwaad hier bevestigend op te antwoorden. En dat is gelijk het laatste Engelstalige scherm dat we tegenkomen.

Enigmail installeren en configureren


Na dit kleine stukje voorwerk kunnen we nu in Thunderbird zelf aan de slag. Download Enigmail (zegt ‘enigma’ je iets..?) in een XPI die geschikt is voor jouw versie van Thunderbird en installeer de extensie. Omdat we graag willen dat ook deze extensie Nederlandstalig is hebben we daarnaast een language pack nodig. Als je nog nooit een extensie geïnstalleerd hebt in Thunderbird: Extra, Extensies. De XPI-files kun je vervolgens openen met de installatieknop. Daarna moeten we Enigmail nog vertellen waar GnuPG te vinden is: Enigmail, Voorkeuren. enigmail voorkeuren In dit venster zijn allerlei dingen aan te passen: of je standaard al dan niet wilt ondertekenen/versleutelen, hoe lang je OpenPGP-wachtwoord onthouden moet worden… Het enige wat ons nu interesseert is het uitvoerbare pad voor GPG. Zet dit op hetzelfde pad als waar je GPG geïnstalleerd hebt.

Sleutels genereren en aan accounts koppelen


Nu Enigmail weet waar GnuPG zich bevindt zijn we klaar om sleutels te gaan maken. Open het sleutelbeheervenster uit het Enigmailmenu. Gaandeweg zal dit venster gevuld raken met sleutels die je zelf gemaakt hebt of van andere mensen hebt gekregen. Kies ‘genereer sleutel’ uit het Sleutelmenu. sleutelbeheer sleutelgeneratie Dit venster spreekt voor zich. Je kiest een emailadres uit dat bij de sleutel zal horen en zet een wachtwoord op de sleutel (GOED ONTHOUDEN). Bij het commentaar kun je zelf iets leuks verzinnen, zoals de functie van de sleutel, de naam van je favoriete dier… het doet er niet toe voor het functioneren van je sleutel. Als je tevreden bent druk je op de knop om de sleutel te genereren. Dit kan even duren, en als het genereren voltooid is krijg je het sleutelbeheervenster weer te zien. Het kan zijn dat je sleutel er nog niet in staat: het helpt om het venster te sluiten of opnieuw te openen en ook de menu-optie “herlaad sleutelcache” kan ervoor zorgen dat de lijst geactualiseerd wordt.
Als je meerdere adressen wilt gebruiken op één sleutel wilt gebruiken kan dat: rechts-klik op de sleutel en voeg een identiteit toe. Als je wilt dat Thunderbird een sleutel met een account gebruikt is dat in te stellen bij de accountinstellingen van het betreffende account.

Sleutels exporteren, keyservers en revocatie


Nu we een sleutelpaar hebben is het zaak de publieke sleutel te verspreiden zodat iedereen ons versleutelde mail kan sturen en iedereen onze handtekening kan verifiëren. Een eerste stap is de publieke sleutel exporteren. In het sleutelbeheerscherm is dit een optie als je rechts-klikt op de te exporteren sleutel. Het bestand dat opgeslagen wordt (.asc) is gewone tekst en in een teksteditor te lezen (zoals het kladblok) en de inhoud van deze tekst kun je aan je contacten geven zodat zij de beschikking hebben over je publieke sleutel. Een veel handigere manier is het opsturen van de sleutels naar een keyserver. Als je bijvoorbeeld op www.keyserver.net en pgp.mit.edu kijkt zie je formulieren waar je je geëxporteerde sleutel in tekstformaat in kunt plakken (copy/paste vanuit het kladblok bijvoorbeeld). In principe hoef je je sleutels maar naar één server te sturen; ze mirrorren elkaar zodat de sleutels binnen een paar dagen op elke server beschikbaar zijn. Het kan echter geen kwaad je sleutel naar meerdere te servers te sturen als je het niet vertrouwt en/of te langzaam vindt gaan. Enigmail en andere OpenPGP-programma’s hebben de mogelijkheid deze keyservers te raadplegen als er een publieke sleutel nodig is die nog niet in onze eigen keyring aanwezig is. Behalve exporteren kan Enigmail sinds een tijdje ook zelf sleutels naar keyservers sturen. Dit is natuurlijk helemaal handig omdat dit dezelfde keyservers zijn die geraadpleegd worden door andere Enigmailgebruikers ;) .
Naast het exporteren van de publieke sleutels moeten we ook nog letten op onze privésleutel. OpenPGP-encryptie is krachtig speelgoed. Je doet er dus erg verstandig aan regelmatig een backup te maken van de directory waar je je sleutels bewaart (deze heb je bij installatie van GnuPG aangegeven). Dit is erg belangrijk: je kunt zonder je persoonlijke sleutel NIET bij versleutelde mails tot ze zoiets als kwantumcomputers uitvinden. Het is ook zeer verstandig een revocatiecertificaat te exporteren. Door dit certificaat naar keyservers te sturen geef je aan dat de sleutel niet meer geldig is, wat zeer handig is als iemand je sleutel zou stelen om er namens jou berichten mee te tekenen. Berg dit certificaat goed op: anderen kunnen er misbruik van maken als ze het in handen krijgen.

Versleutelde/getekende mails versturen en ontvangen


mail schrijvenAls we eenmaal onze sleutels hebben en ze voor anderen beschikbaar hebben gemaakt is mail versturen nu kinderspel: rechtsonder in het window staan een pennetje en een slotje. Zet het pennetje aan om te tekenen, het slotje om te versleutelen. Ontvangen is nog eenvoudiger: ondertekeningen en encryptie worden automatisch verwerkt. Voor zaken waar je geheime sleutel voor nodig is (tekenen, ontcijferen) wordt er om je password gevraagd.
Een probleem hebben we echter als we een publieke sleutel van een contactpersoon niet kennen. ontbrekende sleutel Uiteraard heeft Enigmail door dat het emailadres niet in de lijst sleutels staat en vraagt ons met welke sleutels het bericht allemaal versleuteld moet worden. Zie ook het knopje onderaan: ‘Download ontbrekende sleutels’. Zo halen we missende sleutels van de keyserver en kunnen we onze sleutelring met contacten uitbreiden. Merk op dat dit dezelfde keyservers zijn als die waar je vanuit het sleutelbeheerscherm je sleutels heen kan sturen ;) . onbekende sleutel niet vertrouwde sleutel Ook als je berichten ontvangt kun je sleutels tegenkomen die je niet kent. Bij een ontvangen mail staat er ook een pen-icoon rechtsonder: groen bij een goede handtekening, rood bij een handtekening die niet klopt en een vraagteken als we de handtekening niet kennen. Als je eens op zo’n vraagteken klikt als je zo’n bericht krijgt zul je zien dat je de sleutel niet hebt: haal deze van de keyserver door op ‘ja’ te drukken. Dit is echter nog niet voldoende, de pen wordt nog niet groen. We weten namelijk nog niet of de sleutel echt is. zet vertrouwen Per sleutel is in te stellen in hoeverre je deze vertrouwt. Bel je mailcontact op, vraag ‘m of de ID van de sleutel klopt en ga zo na of de sleutel echt is. Ben je voldoende overtuigd, zet dan de vertrouwenswaarde omhoog zodat deze sleutel in het vervolg als betrouwbaar gezien zal worden: bij getekende mails van deze persoon zal nu het groene pennetje verschijnen. Het vertrouwen van de sleutel vind je in het menu dat je krijgt bij een rechts-klik op de betreffende sleutel in het sleutelbeheerscherm.

Tot slot…


Dit was alles wat je nodig hebt om veilig te kunnen mailen met GnuPG en Enigmail. Wees niet bang om je mails te ondertekenen, ondertekende mails zijn gewoon voor iedereen leesbaar, ook voor mensen zonder OpenPGP. Het enige wat ze niet kunnen is je handtekening verifiëren. En verder… wees voorzichtig met je sleutels en… succes :) !

Get Thunderbird!Get Firefox!