Nutzung von Microsoft Office365 Mailadressen (OAuth2)

  • OpenXE unterstützt bisher noch kein OAuth. Als Workaround dient ein OAuth Proxy der mit auf dem Server installiert wird.
    Der genutzte OAuth Proxy ist für verschiedene Dienste nutzbar. In diesem Fall setzen wir ihn für Office365 von Microsoft ein.


    Der genutzte Proxy ist hier in GitHub zu finden: https://github.com/simonrob/email-oauth2-proxy/

    Der Proxy ist ursprünglich für eine Nutzung auf dem Desktop ausgelegt, kann aber auch vollständig headless betrieben werden. Die Installation hier bezieht sich auf die vollständige Nutzung über die Konsole.


    Zuerst muss Python installiert werden:

    a. sudo apt install -y python3-pip


    Das Repository klonen;

    b. git clone https://github.com/simonrob/email-oauth2-proxy/


    cd email-oauth2-proxy

    sudo apt install python3.11-venv

    python3 -m venv .env

    python3 -m pip install -U pip

    python3 -m pip install -r requirements-core.txt

    workon


    Noch ein systemctl file erstellen, damit der Proxy mit dem Server startet

    sudo systemctl edit --force --full emailproxy.service


    Folgendes in die Datei kopieren:

    Code
    [Unit]
    Description=Email OAuth 2.0 Proxy
    
    [Service]
    ExecStart=/home/localuser/email-oauth2-proxy/.env/bin/python3 /home/localuser/email-oauth2-proxy/emailproxy.py --external-auth --no-gui
    Restart=always
    
    [Install]
    WantedBy=multi-user.target


    Als nächstes muss in Office365 Entra Admin Center eine neue App registert werden:


    Geheimen Clientschlüssel anlegen, Wert kopieren und Zwischenspeichern:



    Mail-Adressen, Anwendung ID und Schlüssel in die Config von OAuth-Proxy eintragen:

    sudo nano /home/user/email-oauth2-proxy/emailproxy.config


    In OpenXE die Mail-Adressen eintragen:

    • Ports mit einer führenden "1", also 1587.
    • Server 127.0.01
    • Verschlüsselung keine

    +



    In der Konsole OAuth Proxy starten:

    /home/user/email-oauth2-proxy/.env/bin/python3 /home/user/email-oauth2-proxy/emailproxy.py --external-auth --no-gui


    Jetzt "Testmail senden" in OpenXE anklicken. In der Konsole URL kopieren und in einem Browser einsetzen, bei Office365 einloggen und die zurückgegebene URL in die Konsole einfügen und mit Enter bestätigen.


    Jetzt sollte sowohl der Testmail-Versand als auch IMAP für das Ticketsystem funktionieren.

Teilen