IMAP-Quellen
Neben Microsoft 365 kann ein klassischer IMAP-Server Quelle einer Migration sein — etwa ein bestehender Mailcow-, Dovecot- oder Hoster-Account. Die Quelle wird einmal als „IMAP-Quellserver“ angelegt und kann von mehreren Migrationen genutzt werden.
Wann eine IMAP-Quelle sinnvoll ist
- Das Quellpostfach liegt nicht bei Microsoft 365.
- Ein Altpostfach soll auf einen neuen Server umziehen.
- Ein Testaufbau soll ohne Microsoft-Anbindung laufen.
Für Microsoft 365 immer den Quelltyp „Microsoft 365“ verwenden; dort läuft die Anmeldung über OAuth2 statt über ein Passwort.
Quellserver anlegen
Unter „IMAP-Quellserver“ → „Quellserver hinzufügen“:
| Feld | Bedeutung |
|---|---|
| Name | freier Anzeigename, z. B. Altpostfach example.org |
| Host | reiner Hostname, z. B. imap.example.org |
| Port | 993 bei implizitem TLS, 143 bei STARTTLS |
| TLS | Implicit TLS, STARTTLS oder Keine |
| Passwort | optionales Standardpasswort, verschlüsselt gespeichert |
Der Host wird ohne Schema, Port und Pfad eingetragen. Ein Wert wie imaps://imap.example.org:993 ist ungültig; Schema und Port gehören in die eigenen Felder.
Wird kein Standardpasswort hinterlegt, muss die Migration ein Quellpasswort mitbringen. In beiden Fällen wird das Passwort nur verschlüsselt (Fernet) gespeichert und nie in einer Antwort ausgegeben; sichtbar ist lediglich, ob eines hinterlegt ist.
TLS-Modi
| Modus | typischer Port | Verhalten |
|---|---|---|
| Implicit TLS | 993 | TLS ab dem ersten Byte, empfohlen |
| STARTTLS | 143 | Klartextstart, dann TLS-Aushandlung |
| Keine | 143 | unverschlüsselt; nur in isolierten Testnetzen |
Die Zertifikatsprüfung ist immer aktiv. Ein selbstsigniertes Zertifikat führt zu einem TLS-Fehler; die Prüfung lässt sich nicht abschalten. Für Testserver ist ein Zertifikat aus einer eigenen CA einzuspielen und diese im Systemtrust zu hinterlegen.
Verbindung testen
Der Test prüft Anmeldung und Ordnerliste, ohne Nachrichten zu verändern.
In der Oberfläche: Zeile des Quellservers → „Testen“. Ist kein Standardpasswort hinterlegt, fragt der Dialog Benutzername und Passwort ab; diese Werte gelten nur für den Test und werden nicht gespeichert.
curl -X POST http://127.0.0.1:8000/api/v1/sources/<source-id>/test \
-H "Content-Type: application/json" \
-H "X-CSRF-Token: <csrf-token>" \
-b cookies.txt \
-d '{"username":"user@example.org","password":"<passwort>"}'
Antwort:
{ "ok": true, "message": "Verbindung erfolgreich.", "folders": 6 }
Bei hinterlegtem Standardpasswort genügt der Benutzername als Query-Parameter:
curl -X POST "http://127.0.0.1:8000/api/v1/sources/<source-id>/test?username=user@example.org" \
-H "X-CSRF-Token: <csrf-token>" -b cookies.txt
| Ergebnis | Bedeutung |
|---|---|
ok: true |
Anmeldung erfolgreich, Ordnerliste lesbar |
| Anmeldung fehlgeschlagen | Benutzer/Passwort falsch oder IMAP gesperrt |
| Verbindung fehlgeschlagen | Host, Port oder TLS-Modus falsch |
| Zertifikatfehler | Zertifikat nicht vertrauenswürdig oder Hostname passt nicht |
Quelle in einer Migration verwenden
Im Assistenten den Typ „IMAP-Server“ wählen, den Quellserver auswählen und das Quellpostfach (E-Mail-Adresse) eintragen. Ohne Standardpasswort am Quellserver das Passwort für dieses Postfach eingeben.
Die Anwendung ruft imapsync mit Benutzer und Passwortdatei auf:
--host1 imap.example.org --port1 993 --ssl1
--user1 user@example.org
--passfile1 <temporäre Datei>
Das Passwort steht nie in der Prozessliste; es wird in eine Datei mit restriktiven Rechten geschrieben und nach dem Lauf gelöscht.
Quellpostfach prüfen
Vor der ersten Migration die Postfachvorschau nutzen: Sie zeigt Ordner und Nachrichtenzahlen und arbeitet ausschließlich lesend. Siehe Postfachvorschau.
Ändern und Löschen
- Name, Host, Port, TLS und Passwort lassen sich nachträglich ändern. Ein neues Passwort ersetzt das gespeicherte; ohne Passwortfeld bleibt es unverändert.
- Das Löschen eines Quellservers entfernt auch das gespeicherte Standardpasswort. Bestehende Migrationen, die auf diesen Server verweisen, können danach nicht mehr starten.
Abgrenzung zum Zielserver
Ein Quellserver ist keine Zieldefinition. Ziele werden separat unter „Zielserver“ gepflegt und immer mit implizitem TLS angesprochen. Für Quelle und Ziel sind eigene Einträge anzulegen.