DSGVO, Freelancer, E-Mails und ein Umzug KVM-virtualisierter Linux-E-Mail-Server auf verschlüsselte Platten/Partitionen – I

Als Freelancer hat man seine liebe Not mit der deutschen Last-Minute-DSGVO-Panik. Das Problem ist nicht der Datenschutz an sich; da sind die allgemeinen Anstrengungen eher lobenswert. Das Problem sind vielmehr pauschale Verträge oder Vereinbarungen zur Auftragsverarbeitung, die viele Datenschutzbeauftragte (in ihrer Hilflosigkeit?) uns Freelancern aufdrängen möchten. Dabei spiegeln solche pauschalen Verträge nach meiner Auffassung gerade nicht den Geist der DSGVO wider:

Verkannt wird dabei, dass Datenschutz und Datensicherheit gemeinsame Festlegungen erfordert (s. etwa Art.32 DSGVO). Der Auftraggeber muss nämlich die technischen und organisatorischen Maßnahmen kennen und damit in gewisser Weise auch gutheißen, die Bestandteil eines Vertrages werden sollen. Viele Datenschützer übersehen auch, dass die zu erwartenden personenbezogenen Daten und deren Schutzniveau erstmal definiert werden müssen. Entsprechend inhaltsleer fällt denn auch die Antwort auf die Rückfrage aus, welche personenbezogenen Daten denn in der Zusammenarbeit auftauchen werden.

Man ist als Freelancer also gut beraten, die Schutzbedingungen selbst mit zu definieren - gerade im Geiste der DSGVO, Art. 32, Pkt.1. Das gilt dann u.a. auch für den Austausch von Mails zwischen Auftraggeber und Auftragnehmer.

E-Mail-Verkehr als DSGVO-Problemzone

Das Thema E-Mail ist im Kontext des Datenschutzes für Freelancer durchaus ein kritisches. E-Mails sind von Haus aus mit personenbezogenen Daten behaftet und können weitere schützenswerte Inhalte beinhalten. Hier muss man das zu erreichende Schutzniveau von beiden Seiten also sorgfältig definieren. Dabei muss man einen zwischengeschalteten Provider berücksichtigen - aber natürlich auch die hauseigene E-Mail-Installation. Letztere wird bei Linux-Lovern und -Profis durchaus komplex ausfallen, da der Linux-Anwender/Admin aus vielen vernünftigen Gründen heraus ggf. einen eigenen Mail-Server mit oder ohne Zusammenspiel mit einem Mail-Server bei einem Providern betreiben wird.

Ende-zu-Ende-Verschlüsselung?
Sinnvolle Schutzwege führen bei E-Mail aus meiner Sicht eigentlich immer über Ende-zu-Ende-Verschlüsselung. Kann man die DSGVO also als eine Gelegenheit begreifen, Verschlüsselungspflichten endlich auch für den Auftraggeber zu fixieren? Am besten auf der Basis von OpenPGP? Ich bezweifle aus Jahren eigener schlechter Erfahrung leider, dass alle eure Auftraggeber zu diesem Schritt der Vernunft bereit sein dürften.
Alternative? DE-Mail mit OpenPGP? Ehrlich gesagt: Ich weiß nicht, warum das technisch einfacher sein soll, als gleich selber die Schlüsselverwaltung zu übernehmen - und dabei ganz ohne Browser- oder Client-Plugins auszukommen. DE-Mail ist zudem kostenpflichtig - und man handelt sich ein paar unangenehme Verbindlichkeiten bzgl. der Nutzung ein.
Dennoch ist Mail-Verschlüsselung (ob mit oder ohne DE-Mail) der zu wählende Königsweg.

Nur Verschlüsselung des Übertragungsweges?
Leider fühlen sich viele AGer mit OpenPGP überfordert. Was dann? Nun, meistens haben die Auftraggeber selber E-Mail-Provider - und zumindest erfolgt der Zugang zu den E-Mail-Servern selbiger Provider verschlüsselt. Dito natürlich beim Freelancer. An dieser Stelle erscheint es geboten, als Freelancer einen Auftragsverarbeitungs-Vertrag mit dem Provider abzuschließen, den die meisten Hosting-Provider in Deutschland in pauschaler, aber ggf. hinreichender Weise anbieten.

Schutz unverschlüsselter Mails?
Leider ist man mit der Verschlüsselung des Übertragungsweges als Freelancer nicht aus dem Schneider.

Das erste Thema sind E-Mail-Clients (PCs, Notebooks, ..), die E-Mails in einer unverschlüsselten Umgebung puffern, öffnen oder gar mit Servern synchronisieren (unter Linux etwa über KDE's Akonadi oder z.B. über Evolutions und Thunderbirds eigene Tools). Auf den Clients bleibt dann halt viel auf deren meist unverschlüsselten Platten liegen.

Das zweite Thema, das vermutlich gerade Linux-Lover trifft, sind eigene E-Mail-Server im (Home-) Office-LAN. Jeder Freelancer oder auch der Admin eines KMU, der bei seiner Infrastruktur auf Linux setzt, wird aus einer Vielzahl von Gründen früher oder später einen eigenen Mail-Server aufgesetzt und den ggf. an einen Mail-Server bei einem Provider angeschlossen haben. Das gilt im Besonderen dann, wenn noch weitere Mitarbeiter oder Unterauftragnehmer im Spiel sind: Unter Upgrade-, Migrations- und Backup-Gesichtspunkten stellen eigene Mail-Server (trotz der Mühen beim Setup) für den Freelancer letztlich eine Arbeitserleichterung dar. Auf einem solchen Server lagert nun womöglich eine Masse an unverschlüsselten Mails auf unverschlüsselten Festplattenpartitionen. Steht etwa im eigenen (Home-)Office-LAN ein eigener Linux-Mail-Server, stellt sich die Frage wo und wie man die dort auflaufenden E-Mails bei Abwesenheiten/Urlaub von der Wohnung oder seines Office schützt.

Physikalischer Zugangsschutz? Nun, Freelancer werden kaum die Möglichkeit haben, ihre Wohnungen voll zu verriegeln, ohne sich Ärger mit Vermietern einzuhandeln. Wie sichert man sich dann gegen Diebstahl zu schützender Mails im Falle eines Einbruchs während eines Urlaubs ab? Tja - genau mit diesem Problem muss man sich nun ggf. wegen relativ strikter (pauschaler) Auftragsverarbeitungsvereinbarungen mal wieder auseinandersetzen. Das halte ich persönlich für durchaus sinnvoll ...

Gefordert ist natürlich erneut Verschlüsselung - diesmal aber von Platten oder Partitionen.

Verschlüsselung von Platten und Partitionen - auf Mail-Servern wie Mail-Clients?

Während Notebooks sowieso durchgehend kryptierte HHDs/SSDs erfordern, ist eine Vollverschlüsselung von Festplatten/ Partitionen bei Servern und umfänglichen Workstations ein viel komplexeres und problematischeres Thema, das auch mit Risiken verbunden ist. Ich nenne nur mal beschädigte Krypto-Header als eines der potentiellen Probleme.

Nehmen wir mal an, man traut sich zu, die Risiken, die mit Kryptographie verbunden sind, zu beherrschen. Wie kann dann für den Linux-Lover ein praktikables Modell für den Schutz unverschlüsselter Mails aussehen? Ich meine, dass drei strategische Elemente zum Ziel führen:

  1. Abseparation von bestimmten E-Mail-Accounts für Kunden
  2. Virtualisierung der E-Mail-Server - wie einer E-Mail-Client-Umgebung unter KVM/QEMU
  3. Verschlüsselung der (Raw-) Partitionen/Volumes, auf denen E-Mail-Server oder aber die Client-Umgebung operieren.

Auf mobilen Laptops/Notebooks ist eine Kryptierung der benutzten Partitionen sowieso Pflicht. Für SSDs ist dabei zu beachten, dass die Verschlüsselung schon im jungfräulichen Zustand erfolgen muss.

Nun wollen wir die Verschlüsselung aber auch auf Workstation-Clients und Server anwenden. Der E-Mail-Datenverkehr läuft dann meiner Ansicht etwa wie folgt aus:

Ein Router mit Perimeter-Firewall übernimmt die Kommunikation mit dem Internet. Er trennt ggf. ein Gastnetz [GNS} von einem Frontend-Segment [FNS]ab. Ein System mit einer Paket-Filter-Firewall und/oder WAF-Firewall trennt weitere nachgelagerte Segmente ab. Ein zweites System GWS2 realisiert einen E-Mail-Server in einer Art sekundärer DMZ. Dieser Server wird entweder direkt von normalen Clients in weiteren Zonen angesprochen (Lösung für "Arme") oder synchronisiert Mails ggf. mit einem weiteren Groupware-Server in internen Segmenten (Lösung für "Reiche").

Kennt man sich gut mit Paketfiltern im Kontext virtualisierter Netze gut aus, kann das angedeutete System "GWS1" ggf. entfallen. Auch der Groupware-Server ist für einen reinen Mail-Betrieb nicht erforderlich.

Die Verschlüsselung der Volumes, die von den unter KVM/QEMU virtualisierten Servern/Clients genutzt werden, kann dabei auf dem Host bereits auf der Ebene einer Linux-"Raw"-Partition oder eines "Raw"-LVM-Volumes genutzt werden. Ich halte in einem solchen Szenario allein aus Performance-Gründen Einiges davon, die Verschlüsselung dem Virtualisierungshost zu überlassen. Sollte jemand dagegen gute Einwände haben, bitte ich um Kontakt per E-Mail ....

Zusammenfassung und Ausblick auf den folgenden Artikel

Der regelmäßige Austausch von E-Mails, die personenbezogene und andere vertrauliche Daten beinhalten, erfordert mit Auftraggebern ggf. einen Vertrag, der die Art und Qualität personenbezogener Daten definiert, zu erreichende Schutzniveaus festlegt und technische wie organisatorische Maßnahme zu deren Umsetzung regelt.

Eine wichtige Maßnahme bei Freelancern, die keinen hinreichenden Zugangsschutz zu eigenen Systemen garantieren können, erscheint mir dabei die Lagerung der E-Mails auf verschlüsselten Partitionen und Volumes zu sein. Will man nicht gleich alles verschlüsseln können virtualisierte Systeme zum Zuge kommen.

In kommenden Artikel

DSGVO, Freelancer, E-Mails und Umzug KVM-virtualisierter Linux-E-Mail-Server auf verschlüsselte Platten/Partitionen – II

gehe ich zunächst noch einmal auf ein paar Aspekte der DSGVO ein und begründe etwas genauer, warum ein vertragliches Abkommen mit einem Auftraggeber sinnvoll ist. In einem dritten Artikel widme mich dann mal dem Umzug eines Linux-E-Mail-Servers - und dabei speziell dem Umzug einer bereits existierenden virtualisierten Lösung - auf neue, verschlüsselte Partitionen oder LVM-Volumes des Hosts. Entsprechende Arbeiten für Client-Systeme sind dann recht ähnlich.

Cyrus IMAP mit SASL, PAM, SSSD und LDAP – Opensuse 12.3/13.1 – IV

In den vorhergehenden Beiträgen

Cyrus IMAP mit SASL, PAM, SSSD und LDAP – Opensuse 12.3/13.1 – I
Cyrus IMAP mit SASL, PAM, SSSD und LDAP – Opensuse 12.3/13.1 – II
Cyrus IMAP mit SASL, PAM, SSSD und LDAP – Opensuse 12.3/13.1 – III

dieser Artikel-Reihe hatten wir eine einfache Installation des Cyrus IMAP-Dienstes auf einem Host namens "mycyrus" vorbereitet und durchgeführt. Der IMAP-Server nutzt einen LDAP-Server "ldap-serv" zur Authentifizierung von Benutzern, die Zugriff auf vorhandene IMAP-Mailboxen erhalten wollen.

In diesem Beitrag kümmern wir uns nun um die Anbindung eines KDE "Kmail"-Client an den IMAP-Server. Wir starten dazu "Kontact" oder "Kmail" auf einem Host "tux" im Netzwerk. Die nächsten Schritte beinhalten lediglich das Eingeben der Verbindungsdaten:

Dazu gehen wir in die Konfiguration der sog. "Zugänge" (gemeint sind Server-Zugänge - oder besser noch "Server-Konten") über

Menüpunkt "Einstellungen" >> "Kmail einrichten" >> "Zugänge" >> Tab "Empfang"

Dort drücken wir auf den Button "Hinzufügen" und wählen im folgenden Auswahldialog die Option "IMAP-E-Mail-Server".

Im nächsten Konfigurationsdialog geben wir die erforderlichen Zugangs- und Authentifizierungsdaten zum Server ein. Das sind zunächst vor allem unsere Userdaten für den IMAP-Dienst - also genau jene Daten, die wir im LDAP-System zu unserer Authentifizierung hinterlegt haben, und auf die der Server "mycyrus" gem. unserer Einrichtung in den letzten Artikeln per SASLAUTHD, PAM, SSSD zugreift. Wir verwenden hier wieder die Zugangsdaten unserer Testuserin "tarja" aus den vorhergehenden Artikeln:

Kmail_IMAP2_600

Den Namen des Mail-Kontos (oberstes Feld) können wir dabei nach Gutdünken festlegen.

Von größerer Bedeutung ist ferner der Dialog unter dem Reiter "Erweitert", den dort stellen wir ein, dass Kmail eine STARTTLS-Verbindung zum IMAP-Server aufbauen soll. Ein Druck auf den Button "Automatisch erkennen" sollte das fehlerfrei und im lokalen Netz innerhalb von Sekundenbruchteilen für uns erledigen. Falls der IMAP-Server TLS anbietet - und dafür haben wir ja durch die Cyrus Konfiguration im ersten Beitrag gesorgt - wird die TLS-Option automatisch ausgewählt. Als "Authentifizierung"s-Mechanismus kommt in unserem Fall nur "Plain" oder "Login" in Frage.

Kmail_IMAP3_600

Sollte die automatische Konfiguration lange dauern oder zu Meldungen führen, so ist dies meist ein Zeichen dafür, dass

  • entweder gar keine Kommunikation zum Server möglich ist
  • oder es ein Problem mit der Zugangsberechtigung oder der Authentifizierung - in unserem Fall gegenüber einem LDAP-System - gibt
  • oder TLS nicht funktioniert.

Dann sind eine Überprüfung der Kommunikation mit "telnet", ein Check von Firewall-Einstellungen sowie spezifischere Tests (z.B. mit "imtest") angesagt.

An dieser Stelle sollte man sich außerdem noch einmal bewusst machen, dass wir es gemäß unserer Installation mit 2 unterschiedlichen TLS-Verbindungen zu tun haben:

  • Der Mail-Client Kmail auf dem Host "tux" baut eine per STARTTLS gesicherte Verbindung zum IMAP-Server "mycyrus" auf und tauscht so abgesichert Userdaten und später auch Maildaten mit dem IMAP-Server aus.
  • Der IMAP-Server "mycyrus" hingegen baut zur Authentifizierung des Users "tarja" über SASLAUTHD, PAM und vor allem SSSD eine per STARTTLS gesicherte Verbindung zum LDAP-Server (hier "ldap-serv") auf.

Für die erste Verbindungsmöglichkeit sorgt eine adäquate Konfiguration des Cyrus IMAP-Dienstes und natürlich auch des E-Mail-Clients Kmail. Die zweite Verbindung beruht auf einer TLS-fähigen Auslegung des LDAP-Servers und einer geeigneten Konfiguration von SASL, PAM und SSSD auf dem Server "mycyrus". Siehe hierzu die vorangegangenen Artikel.

Als nächstes schließen wir die Einrichtung unseres IMAP-Kontos durch Drücken des Buttons "OK" ab. Der Server-Zugang namens "mycyrus-tarja" sollte nun gem. der oben gewählten Einstellungen angelegt worden sein und als funktionstüchtig ("bereit") angezeigt werden:

Kmail_IMAP5

Wechseln wir nun zur Standardansicht von "Kontact", so sollten wir etwa ein Bild der folgenden Art erhalten:

Kmail_IMAP6

Natürlich ist die Mailbox im Gegensatz zur obigen Darstellung in Ihrem Fall noch leer. Aber mit Hilfe von Kontakt/Kmail können wir nun schon Mails aus anderen Mailfoldern anderer Server in die Mailfolder des neuen Accounts - hier "mycyrus-tarja" kopieren und die kopierten Mails danach auch ansehen.

Damit haben wir eine vollständige Kette

E-Mail-Client Kmail <= TLS => Cyrus IMAP-Server mit userspezifischen und allgemeinen Mailboxen < = TLS => LDAP-Server zur Authentifizierung von IMAP-User

realisiert. Denn in Zeiten wie diesen gilt auch im hauseigenen Netzwerk: Ein Schutz gegen unerwünschtes Ausspähen kann nicht verkehrt sein - zumal, wenn er sich - wie gezeigt - unter Linux doch recht einfach einrichten lässt.

Im nächsten Beitrag beschreibe ich zur Abrundung des Cyrus IMAP-Themas noch die Einrichtung von "Webmin" zur grafischen Verwaltung der Mailboxen und zugehöriger Zugriffsrechte.

Cyrus IMAP mit SASL, PAM, SSSD und LDAP – Opensuse 12.3/13.1 – III

In den letzten beiden Beiträgen
Cyrus IMAP mit SASL, PAM, SSSD und LDAP – Opensuse 12.3/13.1 – I
Cyrus IMAP mit SASL, PAM, SSSD und LDAP – Opensuse 12.3/13.1 – II
unserer kleinen Serie zur Implementierung eines Cyrus IMAP-Dienstes mit LDAP-Authentifizierung über PAM und SSSD hatten wir uns mit den IMAP-Konfigurationsdateien sowie der PAM, SSSD- und partiell auch der LDAP-Konfiguration herumgeschlagen. Getestet haben wir bereits den "saslauthd"-Authentifizierungsmechanismus.

Den IMAP-Service selbst hatten wir dagegen noch gar nicht gestartet oder benutzt. Wir holen dies nun nach und testen dann den Zugriff zunächst rein per "telnet" (oder "imtest") und expliziten IMAP-Komandos. Ich finde es lehrreich, unabhängig von echten Mail-Clients auch mal die Kommandozeile zu nutzen.

Starten des Cyrus- IMAP-Servers

Wir starten den IMAP-Dienst:

systemctl start cyrus.service

Das sollte nach den Konfigurationsvorbereitungen der letzten Artikel anstandslos funktionieren ! Also etwa so:

mycyrus:~ # systemctl start cyrus.service
mycyrus:~ # systemctl status cyrus.service
cyrus.service - LSB: The cyrus-imapd mail system
Loaded: loaded (/etc/init.d/cyrus)
Active: active (running) since Wed 2014-03-12 19:56:23 CET; 7s ago
Process: 9392 ExecStop=/etc/init.d/cyrus stop (code=exited, status=0/SUCCESS)
Process: 9404 ExecStart=/etc/init.d/cyrus start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/cyrus.service
├─9412 /usr/lib/cyrus/bin/master -p /var/run/cyrus.pid -d
└─9417 idled
Mar 12 19:56:23 mycyrus master[9418]: about to exec /usr/lib/cyrus/bin/ctl_cyrusdb
Mar 12 19:56:23 mycyrus ctl_cyrusdb[9418]: checkpointing cyrus databases
Mar 12 19:56:23 mycyrus ctl_cyrusdb[9418]: archiving log file: /var/lib/imap/db/log.0000000001
Mar 12 19:56:23 mycyrus ctl_cyrusdb[9418]: archiving log file: /var/lib/imap/db/log.0000000001
Mar 12 19:56:23 mycyrus ctl_cyrusdb[9418]: archiving log file: /var/lib/imap/db/log.0000000001
Mar 12 19:56:23 mycyrus ctl_cyrusdb[9418]: archiving database file: /var/lib/imap/annotations.db
Mar 12 19:56:23 mycyrus ctl_cyrusdb[9418]: archiving database file: /var/lib/imap/mailboxes.db
Mar 12 19:56:23 mycyrus ctl_cyrusdb[9418]: archiving log file: /var/lib/imap/db/log.0000000001
Mar 12 19:56:23 mycyrus ctl_cyrusdb[9418]: done checkpointing cyrus databases
Mar 12 19:56:23 mycyrus master[9412]: process 9418 exited, status 0

Danach "enablen" wir den Service mal prophylaktisch:

mycyrus:~ # systemctl enable cyrus.service

Anlegen von Mailverzeichnissen für unsere Test-Userin "tarja"

Wir legen nun gezielt eine Mailbox mit Subfoldern für unsere Testuserin "tarja" an. Dazu benutzen wir die "cyradm"-Umgebung:

mycyrus:/etc/pam.d # su - cyrus
cyrus@mycyrus:~> cyradm
cyradm> connect localhost
Password:
localhost> cm user.tarja
localhost> cm user.tarja.Drafts
localhost> cm user.tarja.Sent
localhost> cm user.tarja.Spam
localhost> cm user.tarja.Junk
localhost> cm user.tarja.Archive
localhost> lm user.tarja.*
user.tarja.Archive (\HasNoChildren) user.tarja.Sent (\HasNoChildren)
user.tarja.Drafts (\HasNoChildren) user.tarja.Spam (\HasNoChildren)
user.tarja.Junk (\HasNoChildren)
localhost> exit
cyrus@mycyrus:~> exit
Abgemeldet
mycyrus:/etc/pam.d #

Test des Remote-Zugangs

Nun testen wir von einem Remote-Host "tux" aus, ob wir den IMAP-Dienst auf "mycyrus" erreichen können. Ich setze voraus, dass alle Firewall-Einstellungen so gesetzt sind, dass ein Zugang über den Standard Imap-Port 143 möglich ist. Mehr benötigen wir bei Anwendung von STARTTLS nicht. Erstmal remote über "telnet" von einem anderen Linux-System "tux" aus :

tarja@tux:~> telnet mycyrus 143
Trying 192.168.0.88...
Connected to mycyrus.
Escape character is '^]'.
* OK [CAPABILITY IMAP4 IMAP4rev1 LITERAL+ ID STARTTLS AUTH=PLAIN AUTH=LOGIN SASL-IR COMPRESS=DEFLATE] mycyrus Cyrus IMAP v2.3.16 server ready
starttls login tarja TARJAPWD
starttls OK [CAPABILITY IMAP4 IMAP4rev1 LITERAL+ ID LOGINDISABLED COMPRESS=DEFLATE ACL RIGHTS=kxte QUOTA MAILBOX-REFERRALS NAMESPACE UIDPLUS NO_ATOMIC_RENAME UNSELECT CHILDREN MULTIAPPEND BINARY SORT SORT=MODSEQ THREAD=ORDEREDSUBJECT THREAD=REFERENCES ANNOTATEMORE CATENATE CONDSTORE SCAN IDLE X-NETSCAPE URLAUTH] User logged in
r list all "*"
r OK Completed (0.000 secs 1 calls)
r list "" "*"
* LIST (\Noinferiors) "." "INBOX"
* LIST (\HasNoChildren) "." "Archive"
* LIST (\HasNoChildren) "." "Drafts"
* LIST (\HasNoChildren) "." "Junk"
* LIST (\HasNoChildren) "." "Sent"
* LIST (\HasNoChildren) "." "Spam"
* LIST (\HasNoChildren) "." "Trash"
r OK Completed (0.000 secs 8 calls)
s select Drafts
* FLAGS (\Answered \Flagged \Draft \Deleted \Seen)
* OK [PERMANENTFLAGS (\Answered \Flagged \Draft \Deleted \Seen \*)]
* 2 EXISTS
* 0 RECENT
* OK [UIDVALIDITY 1394475578]
* OK [UIDNEXT 3]
* OK [NOMODSEQ] Sorry, modsequences have not been enabled on this mailbox
* OK [URLMECH INTERNAL]
s OK [READ-WRITE] Completed
t search all
* SEARCH 1 2
t OK Completed (2 msgs in 0.000 secs)
E fetch 1 (body[text])
* 1 FETCH (BODY[TEXT] {6}
test
)
E OK Completed (0.000 sec)
. logout
* BYE LOGOUT received
. OK Completed
Connection closed by foreign host.
tarja@tux:~>

Man erkennt nach der Initiierung des Dialogs, dass der Cyrus IMAP-Server zunächst seine Fähigkeiten - u.a. STARTTLS- ausweist. Das explizit abgesetzte "starttls"-Kommando funktioniert entsprechend problemlos.

Ferner sieht man, dass habe ich danach einige IMAP-Kommandos an den Server abgesetzt habe. Welche IMAP-Kommandos es gibt und wie man mit ihrer Hilfe unter "telnet" oder "imtest" direkt mit dem IMAP-Server kommunizieren kann, erfährt man z.B. hier:

http://www.skytale.net/blog/archives/23-Manual-IMAP.html
http://www.tcpipguide.com/free/t_IMAPOverviewHistoryVersionsandStandards.htm
http://donsutherland.org/crib/imap
http://adityo.blog.binusian.org/?tag=telnet-imap-command
http://busylog.net/telnet-imap-commands-note/
http://help.notify.net/TechDocs/enterprise/Troubleshooting/NetHelp/index.html?turl=WordDocuments%2Fotherimapcommands.htm

Jedes IMAP-Kommando wird durch einen Klein- oder Groß-Buchstaben oder einen "." am Anfang der Zeile mit anschließendem Blank eingeleitet. Dieser Buchstabe ist syntaktisch erforderlich; er erleichtert die Orientierung im Kommandoablauf und zeigt anhand abschließender Bestätigungsmeldungen zu gleichen Startbuchstaben am Anfang der Zeile an, welche Antworten zu welchem Kommando gehören.

Einen ähnlichen Dialog mit dem IMAP-Dienstes hätte man auch im Rahmen des Testkommando "imtest" führen können:

imtest -v -t "" -a tarja -u tarja -m login mycyrus

Das Absetzen des imtest-Kommandos erlaubt es einem zudem, den Austausch von TLS-Informationen direkt zu verfolgen. Das kann jeder mal selbst testen. Zu "imtest"findet man weitere Infos auf der man-Seite:
http://linux.die.net/man/1/imtest
http://www.cyrusimap.org/docs/cyrus-imapd/2.3.16/man/imtest.1.php

Der aufmerksame Leser wird beim Studieren des obigen IMAP-Dialogs unter "telnet" natürlich mitbekommen haben, dass ich dort im Ordner Drafts zwei Mails gefunden und eine davon sogar geöffnet habe. Natürlich muss man sich fragen, wie das vor sich gehen soll, wenn der Folder "Drafts" doch gerade erst angelegt wurde. Keine Sorge: Die Mails kommen nicht aus dem Nirwana; ich hatte sie dort vorab händisch reinkopiert, um zeigen zu können, dass man Mails auch über telnet öffnen kann.

Im nächsten Teil
Cyrus IMAP mit SASL, PAM, SSSD und LDAP – Opensuse 12.3/13.1 – IV
kümmere ich mich dann um eine Kmail-Anbindung an unseren offenbar funktionstüchtigen IMAP-Server, der unsere Testuserin "tarja" erfolgreich über ein LDAP-System authentifiziert hat.