Hoe kan ik via telnet POP3 of IMAP e-mail lezen? Via telnet POP3 en IMAP e-mail lezen kan soms handig zijn, bijvoorbeeld om te testen of een e-mailaccount werkt, inloggegevens correct zijn, er verbindingsproblemen zijn, enz. In het artikel hoe kan ik e-mail versturen via telnet? heb je geleerd hoe je e-mail kan versturen via telnet. Het lezen van e-mail via telnet is niet veel anders.

Zoals gezegd, e-mail lezen via telnet kan soms handig zijn om te verifiëren dat inloggegevens juist zijn. Soms zit er een e-mail vast op de mailserver, waarover Outlook valt (Outlook foutmelding 0x800ccc0f), en moet je die handmatig verwijderen. Even geen webmail omgeving bij de hand? Log in met telnet! Maar let op: telnet is onversleuteld, jouw inloggegevens kunnen afgeluisterd worden.

Voor we hier op verder gaan moet je weten dat er twee typen inkomende e-mail protocollen zijn, te weten: POP3 en IMAP. POP3 staat voor Post Office Protocol version 3, en IMAP staat voor Internet Message Access Protocol. Versie 4 laten we bij IMAP vaak achterwege, eigenlijk is het dan ook IMAP4.

Lees hier meer over het zelf instellen van Outlook 2013.

Verschillen POP3 en IMAP

Het lezen van e-mail gaat via POP3 en het verkeer gaat over TCP/IP poort 110. Als er gebruik wordt gemaakt van IMAP (Internet Message Access Protocol versie 4), dan gaat het internetverkeer over TCP/IP poort 143.

Over het algemeen kan je IMAP4 aanduiden als een e-mailbox op afstand, en POP3 als een lokale e-mailbox. Door gebruik te maken van IMAP4 blijft de e-mail op de IMAP4 server staan zodat je deze overal ter wereld kan lezen. Haal je e-mail op – in Outlook – via POP3 dan wordt de e-mail van de server verwijderd.

Hierom, en met alle synchronisatie smartphones en devices van tegenwoordig, wordt vrijwel alleen nog maar IMAP4 gebruikt. Immers: als e-mail van de server verwijderd wordt kan je ook geen Mail Xchange e-mail meer synchroniseren met je smartphone en andere devices.

Goed, nu weet je wat over POP3 en IMAP(4). Ook heb je in het voorgaande artikel geleerd:

  1. hoe je telnet beschikbaar maakt in Windows 10/8.1
  2. dat je geen typefouten mag maken

Wist je dit nog niet? Lees dan dit artikel dan nog even door.

Benodigdheden: POP3- of IMAP-serveradres, e-mailaccount inloggegevens (gebruikersnaam en wachtwoord). In dit voorbeeld maak ik gebruik van de serveradressen van Vevida. Informeer bij jouw eigen provider naar de juiste gegevens.

POP3 e-mail lezen via telnet

Via telnet POP3 e-mail lezen (en ook e-mail verwijderen) is vrij eenvoudig. Er is een basis set commando’s dat gebruikt kan worden. Ik zal hieronder eerst een standaard telnetsessie laten zien en later de commando’s verklaren.

c:\Users\Jan>telnet pop.vevida.com 110
Trying 2a00:f60::168...
Connected to pop.vevida.com (2a00:f60::168).
Escape character is '^]'.
+OK Dovecot ready.
user emailadres@example.com
+OK
pass wachtwoord
+OK Logged in.
stat
+OK 82 10746114
list
+OK 82 messages:
1 1595909
2 47166
3 39857
[...]
.
retr 82
+OK 40874 octets
[...]
.
dele 82
+OK Marked to be deleted.
quit
+OK Logging out, messages deleted.
Connection closed by foreign host.

De POP3-commando’s die hier gebruikt zijn, zijn: user, pass, stat, list, retr, dele en quit. Ze worden gebruikt om:

  • in te loggen
  • het totaal aantal berichten en grootte in bytes weer te geven
  • een genummerde lijst van e-mailberichten (met grootte in bytes) te tonen
  • een e-mailbericht te lezen
  • het verwijderen van een bericht
  • het sluiten van de verbinding.

Let op: heb je per ongeluk een e-mail verwijderd, wat niet had gemoeten? Geen nood. Wijzigingen worden pas doorgevoerd tijdens het quit commando. Wil je dat voorkomen, dan beëindig je de telnetsessie eenvoudig met ^] (CTRL+]).

IMAP e-mail lezen via telnet

Het lezen van IMAP e-mail via telnet gaat net iets anders dan via POP3, en is wat meer werk. Door de vele mogelijkheden dat IMAP ondersteunt, en daardoor het aantal beschikbare commando’s, laat ik het lezen van een e-mail hier niet zien. Wel hoe je met telnet een IMAP verbinding maakt, en dat is handig om te controleren of inloggegevens juist zijn en of de IMAP-server reageert.

Ook het weergeven en selecteren van een IMAP-folder wordt even behandeld.

Het voordeel van IMAP ten opzichte van POP3 is dat e-mail op de server bewaard blijft. Het grote verschil van IMAP met POP3 is dat IMAP een teken vóór het commando verwacht. Welk teken maakt bijna niet uit, of dat nou een . of ? is. Maar omdat je het iedere keer weer moet typen: houd het simpel.

Een ander verschil is dat je met één commando inlogt: gebruikersnaam en wachtwoord staan op één regel.

c:\Users\Jan>telnet imap.vevida.com 143
Trying 77.94.248.168...
Connected to imap.vevida.com.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE STARTTLS AUTH=PLAIN AUTH=LOGIN] Dovecot ready.
. LOGIN emailadres@example.com wachtwoord
. OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS SPECIAL-USE BINARY MOVE QUOTA] Logged in
. getquotaroot "INBOX"
* QUOTAROOT INBOX ""
* QUOTA "" (STORAGE 628406 13016064)
. OK Getquotaroot completed.
. LOGOUT
* BYE Logging out
. OK Logout completed.
Connection closed by foreign host.

Onze commando’s beginnen hier met een ., de server begint met een *. In bovenstaand stuk hebben we met telnet ingelogd op de IMAP server, het quotum opgevraagd en uitgelogd. Alles werkt!

Een kleine opsomming:

  • . LOGIN emailadres@example.com wachtwoord: we geven het LOGIN-commando, met het e-mailadres en wachtwoord als waarde
  • . OK [CAPABILITY IMAP4rev1 ...] Logged in: de IMAP-server accepteert de inloggegevens en we zijn ingelogd
  • met het commando . getquotaroot "INBOX" vragen we het quotum (hoeveelheid beschikbare schijfruimte) op
  • de IMAP-server antwoordt met * QUOTAROOT INBOX "" en * QUOTA "" (STORAGE 628406 13016064), waarin staat hoeveel ruimte we beschikbaar hebben (in kB’s)
  • Uitloggen doen we met . LOGOUT

E-mail quotum

Het e-mail quotum is de hoeveelheid schijfruimte dat jouw account tot zijn beschikking heeft. Dit dit geval is dat zo’n 12 GiB, het wordt namelijk weergegeven in kilobytes (kB).

IMAP folders weergeven en selecteren

Als je graag folders wilt weergeven via telnet, dan gebruik je daarvoor de opdracht . LIST "" "*". Met de opdracht . SELECT INBOX selecteer je de inbox.

c:\Users\Jan>telnet imap.vevida.com 143
[...]
. LIST "" "*"
* LIST (HasChildren) "." Test
* LIST (HasNoChildren) "." "Test.map1"
* LIST (HasNoChildren) "." "Test.map2"
* LIST (HasNoChildren) "." "Test.map3"
* LIST (HasNoChildren) "." "Test.map4"
* LIST (HasNoChildren) "." Junk
* LIST (HasNoChildren) "." INBOX.Drafts
* LIST (HasNoChildren) "." "INBOX.Sent Items"
* LIST (HasNoChildren) "." INBOX.Trash
* LIST (HasNoChildren) "." INBOX.Spam
* LIST (HasNoChildren) "." HostingUpdates
* LIST (HasNoChildren) "." Spam
* LIST (HasChildren) "." Archives
* LIST (HasNoChildren) "." Archives.2009
* LIST (HasNoChildren) "." Archives.2012
* LIST (HasNoChildren) "." Archives.2011
* LIST (HasNoChildren) "." Archives.2010
* LIST (HasNoChildren) "." Archives.2013
* LIST (HasNoChildren) "." "Verwijderde items"
* LIST (HasNoChildren) "." "Sent Items"
* LIST (HasNoChildren) "." Drafts
* LIST (HasNoChildren) "." Trash
* LIST (HasNoChildren) "." Sent
* LIST (HasChildren) "." INBOX
. OK List completed.

Hier zie je dat de mappen Test en Archives extra IMAP-folders (submappen) hebben.

c:\Users\Jan>telnet imap.vevida.com 143
[...]
. SELECT INBOX
* FLAGS (Answered Flagged Deleted Seen Draft NonJunk $Forwarded Junk $label5 $label1 $label2 $label3 $label4 $Labellater)
* OK [PERMANENTFLAGS (Answered Flagged Deleted Seen Draft NonJunk $Forwarded Junk $label5 $label1 $label2 $label3 $label4 $Labellater *)] Flags permitted.
* 1139 EXISTS
* 0 RECENT
* OK [UNSEEN 1128] First unseen.
* OK [UIDVALIDITY 1259613823] UIDs valid
* OK [UIDNEXT 14824] Predicted next UID
* OK [HIGHESTMODSEQ 40029] Highest
. OK [READ-WRITE] Select completed (0.000 secs).

De inbox, die we hebben geselecteerd met . SELECT INBOX, heeft 1128 ongelezen berichten van de 1139 e-mailberichten in totaal.

SSL- of TLS-ondersteuning voor IMAP beschikbaar?

Je wilt uiteraard dat jouw inloggegevens veilig over internet verzonden worden, geëncrypteerd of versleuteld in andere bewoordingen. Via de Windows opdrachtprompt is het relatief eenvoudig om de mogelijke TLS ondersteuning te verifiëren. Wel heb je hiervoor OpenSSL (installeer OpenSSL in Windows) en Perl (installeer Perl in Windows) nodig.

POP3- of IMAP mailserveradressen

Je vindt de POP3- of IMAP- mailserveradressen van Ziggo, KPN, Xs4all, Gmail of Hotmail/Outlook in het artikel e-mail instellen in Outlook 2013.

Conclusie via telnet POP3 of IMAP e-mail lezen

Soms moet je snel kunnen controleren of een e-mailaccount functioneert, of je de juiste inloggegevens hebt en of de POP3- of IMAP-server reageert. In dat geval is telnet vaak handiger dan het hele account instellen in Outlook (of Thunderbird). Gebruik je telnet wat vaker, en heb je het “in de vingers”, dan wordt het vrij eenvoudig en makkelijk.

Let wel op dat telnet een “plain text” protocol is. Al jouw gegevens worden onversleuteld – leesbaar – over internet gestuurd, eenvoudig door derden te onderscheppen. Daarom is het verstandig de verbinding te versleutelen met TLS. Zodra de TLS-verbinding is gemaakt met de IMAP-server kun je gewoon dezelfde commando’s blijven gebruiken.

Show 1 Comment

1 Comment

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *