Microsoft Exchange
PFF (vgl. Zusammenfassung aus dem Forensics Wiki) ist ein Format, das aus Outlook und Exchange exportiert werden kann. Outlook nutzt dieses Format für verschiedene Szenarien und bezeichnet es dabei mit unterschiedlichen Namen (.pst, .ost), es handelt sich jedoch um ein und denselben Dateityp.
- .pst-Dateien können interaktiv mit Outlook erstellt werden
- .ost-Dateien können aus dem Verzeichnis C:Users... übernommen werden
- .pst-Dateien können auch über die PowerShell von Exchange Server weitgehend automatisiert erstellt werden
Interaktiver Export von Outlook
Abschnitt betitelt „Interaktiver Export von Outlook“Sobald das Hauptfenster von Outlook geöffnet ist, wählen Sie „Datei“, „Öffnen & Exportieren“, „Importieren/Exportieren“:


Befolgen Sie anschließend die übliche Dialogkette.




gromox-pff2mt importieren
Abschnitt betitelt „gromox-pff2mt importieren“Auf dem System grommunio können PFF-Dateien über die Befehlszeile mit den Befehlen gromox-pff2mt und gromox-mt2exm importiert werden. Es handelt sich hierbei um zwei Befehle, die über eine Pipe miteinander verkettet werden sollen; Informationen zur Aufrufsyntax finden Sie in den verlinkten Handbuchseiten.


Automatisierte Massenmigration mit exchange2grommunio.ps1
Abschnitt betitelt „Automatisierte Massenmigration mit exchange2grommunio.ps1“Für die Migration zahlreicher Postfächer enthält grommunio ein PowerShell-Skript —
exchange2grommunio.ps1 —
das den gesamten Ablauf von Anfang bis Ende automatisiert. Für jedes Exchange-Postfach exportiert es eine
.pst, stellt diese dem grommunio-Server über einen freigegebenen Ordner zur Verfügung und
importiert sie dort über SSH – wobei optional auch die grommunio-Postfächer angelegt werden.
So funktioniert es
Abschnitt betitelt „So funktioniert es“Für jedes ausgewählte Postfach führt das Skript folgende Schritte aus:
- Exportiert das Postfach mit
.pstundNew-MailboxExportRequestin einen freigegebenen Ordner, in den das Exchange-Subsystem schreiben kann. - Stellt über SSH (unter Verwendung von
plink.exe) eine Verbindung zum grommunio-Server her, auf dem derselbe Ordner eingebunden ist (mount.cifs), und importiert die.pst. - Löscht optional anschließend die
.pst, um Speicherplatz zu sparen, und protokolliert das Ergebnis.
Erfolgreiche Importe werden in exchange2grommunio.done geschrieben, Fehlschläge in
exchange2grommunio.failed, sodass ein Durchlauf fortgesetzt oder wiederholt werden kann.
Voraussetzungen
Abschnitt betitelt „Voraussetzungen“- grommunio ist an demselben LDAP/AD wie Exchange angeschlossen, daher müssen Benutzer auf beiden Seiten die Auflösung vornehmen (LDAP vor dem Import testen).
- Das Skript wird in einer Exchange-Verwaltungsshell mit erhöhten Rechten ausgeführt (Windows Server 2012 R2 oder neuer, PowerShell 2.0+; 3.0+ wird empfohlen, damit die Ausgabe des Linux-Befehls in den Protokollen erfasst wird).
plink.exe(aus PuTTY) befindet sich im selben Verzeichnis wie das Skript; optionalpageant.exefür die SSH-Authentifizierung per öffentlichem Schlüssel.- Ein freigegebener Ordner (UNC-Pfad), in den das Exchange-Subsystem schreiben kann und
den der grommunio-Server einbinden kann (
cifs-utilsinstalliert), mit ausreichend Speicherplatz für die.pst-Dateien. - SSH-Zugriff auf den grommunio-Server, dessen Host-Schlüssel bereits von
plink.exeakzeptiert wurde.
Wichtige Einstellungen
Abschnitt betitelt „Wichtige Einstellungen“Alle Einstellungen befinden sich am Anfang des Skripts (oder in einer separaten Konfigurationsdatei). Die wichtigsten davon:
| Variable | Zweck |
|---|---|
$GrommunioServer |
FQDN des Zielservers grommunio |
$WinSharedFolder / $LinuxSharedFolder |
Der freigegebene Ordner .pst, wie er von Windows (UNC) und von Linux (Einhängepunkt) aus gesehen wird |
$LinuxUser |
Shell-Benutzer auf der grommunio-Seite (z. B. root) |
$LinuxUserPWD / $LinuxUserSSHKey / $UsePageant |
SSH-Authentifizierung: Passwort, privater Schlüssel (.ppk) oder Schlüssel über Pageant |
$WindowsUser / $WindowsPassword |
Windows-Konto, das zum Einbinden der Freigabe auf Linux verwendet wird |
$AutoMount |
Die Freigabe auf Windows automatisch auf dem Server grommunio einbinden |
$DeletePST |
Nach erfolgreichem Import jeweils .pst löschen |
$MailboxLanguage |
Sprache für neu erstellte Postfächer (siehe /usr/share/grommunio-admin-api/res/storelangs.json) |
$Organization |
-o <id>, wenn erstellte Postfächer domänenübergreifende Aliase haben |
$MigrationPriority |
New-MailboxExportRequest Priorität (Normal ist in der Regel schneller als High) |
$LogFile |
Zusammenfassungsprotokoll; Export-/Importprotokolle pro Postfach finden Sie unter <share>\logs\ |
Auswahl der zu migrierenden Postfächer
Abschnitt betitelt „Auswahl der zu migrierenden Postfächer“- Zulassungsliste: Setzen Sie
$ImportMboxes(ein Array von Adressen) oder, falls diese leer ist, liest das Skript die Adressen aus der Dateiexchange2grommunio.importauf der Freigabe. Wenn beide Felder leer bleiben, werden alle Postfächer migriert. - Sperrliste:
$IgnoreMboxes/ die Dateiexchange2grommunio.ignoreschließt Postfächer aus (wird immer berücksichtigt).
Anlegen von Postfächern während der Migration
Abschnitt betitelt „Anlegen von Postfächern während der Migration“Zwei Schalter legen fest, ob das Skript auch die grommunio-Postfächer einrichtet (dafür ist eine funktionierende LDAP-Konfiguration erforderlich):
$CreateGrommunioMailbox |
$OnlyCreateGrommunioMailbox |
Verhalten |
|---|---|---|
$false |
$false |
Nacheinander in vorhandene Postfächer migrieren |
$true |
$false |
Jedes Postfach nacheinander erstellen und dann migrieren |
$true |
$true |
Zwei Durchläufe: Zuerst alle Postfächer erstellen, dann erneut ausführen, wobei beide auf $false gesetzt sind, um die Daten zu migrieren |
Der Zwei-Schritt-Modus wird für umfangreiche Migrationen empfohlen: Die Benutzer können sofort in grommunio mit leeren Postfächern arbeiten (neue E-Mails kommen wie gewohnt an), während die historischen Daten im Hintergrund importiert werden.
Ausführung
Abschnitt betitelt „Ausführung“Führen Sie das Skript in der Exchange-Verwaltungs-Shell mit erhöhten Rechten aus:
.\exchange2grommunio.ps1- Für einen unbeaufsichtigten Durchlauf setzen Sie
$WaitAfterImport = $falseund$StopOnError = $false, damit das Skript bei einem Fehler nicht blockiert und auf den Administrator wartet. - Um den Vorgang ordnungsgemäß zu beenden, erstellen Sie die Stopp-Marker-Datei (
exchange2grommunio.STOP) auf der Freigabe – das Skript schließt die aktuelle Mailbox ab und wird anschließend beendet.
Der zugrunde liegende Import auf der grommunio-Seite verwendet dieselben Werkzeuge wie der manuelle Pfad (gromox-pff2mt → gromox-mt2exm), daher gelten die oben genannten Import-Hinweise gelten gleichermaßen.