- Python 64.2%
- TypeScript 33.3%
- Shell 0.7%
- PowerShell 0.7%
- Batchfile 0.4%
- Other 0.6%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| backend | ||
| docs | ||
| frontend | ||
| runtime | ||
| scripts | ||
| .env.example | ||
| .gitignore | ||
| AGENTS.md | ||
| LICENSE | ||
| LICENSE.md | ||
| README.md | ||
| setup.bat | ||
| setup.sh | ||
| start.bat | ||
| start.sh | ||
| update.bat | ||
| update.sh | ||
| VERSION | ||
M365 to Exchange Sync
Selbst gehostete Weboberfläche für Postfachmigrationen: Microsoft 365 (Exchange Online)
oder klassische IMAP-Server als Quelle, beliebiger IMAP-Server als Ziel (z. B. Mailcow,
Dovecot, Cyrus). Die Übertragung übernimmt imapsync; die Anwendung verwaltet Konten,
Ordnerauswahl, Zeitpläne, Läufe und Protokolle.
Läuft vollständig portabel im eigenen Programmordner — kein Docker, keine systemweiten Laufzeiten, keine Administratorrechte, keine Registry- oder PATH-Änderungen.
Funktionen
- Zwei Quelltypen: Microsoft 365 über OAuth2/XOAUTH2 · IMAP mit Benutzer/Passwort.
- Postfachvorschau: echte Ordnerstruktur mit Nachrichtenzahlen, ausschließlich lesend.
- Ordnerauswahl je Migration: alle Ordner (auch künftige) oder eine feste Auswahl.
- Warteschlange: mehrere Migrationen parallel, Prioritäten, Abbruch, Wiederholung mit Backoff.
- Zeitpläne: wiederkehrende Synchronisierung pro Migration, verpasste Termine werden nachgeholt.
- Protokolle: redigierte Laufprotokolle mit Fehlerklassifizierung.
- Sicherheit: verschlüsselte Token- und Passwortspeicherung, Argon2id-Login, CSRF-Schutz.
- Updater: signierte Releases (Ed25519), Kanäle
stable/beta, Rollback, Laufzeit bleibt erhalten.
Voraussetzungen
- Windows 10 (1803+) / Windows 11 / Windows Server 2019+ oder Linux x86_64.
- Internetzugang beim ersten Start (einmaliger Laufzeit-Download, ca. 360 MB).
- Für Microsoft 365: eigene Entra-App-Registrierung (Public Client, Redirect-URI
http://127.0.0.1:<port>/api/v1/oauth/callback).
Download
Aktuelle Vorabversion: Releases
M365-to-Exchange-Sync-Windows.zipM365-to-Exchange-Sync-Linux.tar.gz
Beta-Versionen sind ausdrücklich nicht produktionsreif.
Schnellstart Windows
ZIP entpacken (z. B. C:\Tools\M365-to-Exchange-Sync)
start.bat
Der erste Start richtet Python, Perl und imapsync unter runtime\ ein, erzeugt die
Konfiguration, initialisiert die Datenbank und öffnet die Oberfläche. Danach genügt
start.bat. Administratorpasswort wird beim ersten Aufruf im Browser gesetzt.
Schnellstart Linux
tar xzf M365-to-Exchange-Sync-Linux.tar.gz
cd M365-to-Exchange-Sync
./start.sh
Unter Linux ist der Ablauf implementiert, aber nicht ausgeführt getestet (siehe Einschränkungen).
Bedienung in fünf Schritten
- Quelle verbinden (Microsoft-Konto oder IMAP-Quellserver).
- Zielserver anlegen.
- Postfach prüfen — Ordner und Nachrichtenzahlen ansehen, Ordner auswählen.
- Migration im Assistenten anlegen.
- Starten und unter „Migrationen“ bzw. „Warteschlange“ verfolgen.
Updates
update.bat # prüfen
update.bat --apply # installieren
Daten (.env, data/) und die portable Laufzeit bleiben erhalten. Details:
Updates.
Dokumentation
Vollständige Produktdokumentation im Wiki:
Installation Windows · Installation Linux · Erster Start · Microsoft 365 · IMAP-Quellen · Postfachvorschau · Migration erstellen · Migration überwachen · Scheduler · Updates · Sicherheit · Fehlerbehebung · FAQ · Entwicklung
Beta-Hinweise und bekannte Einschränkungen
- Vorabversion: nicht produktionsreif, nicht vollständig getestet.
- Microsoft-365-Live-Anmeldung nicht verifiziert (kein Testkonto); OAuth ist mit Mocks getestet.
- Linux nicht ausgeführt getestet.
- Ein Update erfordert, dass die Anwendung vorher beendet ist (der Updater weist darauf hin).
- Details: Einschränkungen.
Lizenz
Eigener Code: MIT (LICENSE). imapsync wird nicht gebündelt, sondern beim ersten
Start von der offiziellen Quelle geladen; Python, Perl und Frontend-Bibliotheken unterliegen
ihren eigenen Lizenzen. Details: LICENSE.md.