Phantombot mit SSL Zertifikat (von Letsencrypt) sichern (Apache2 Proxy)

Zum Zeitpunkt als ich dieses Tutorial erstellt habe, funktionierte keiner der Lösungen auf https://phantombot.dev um seinen Bot mittels richtigem SSL Zertifikat abzusichern. Bei mir machte das selbst erstelltes Zertifikat Probleme, weil Kaspersky Internet Security nach 30 Minuten einfach die Verbindung getrennt hat (hätte man sicherlich am Kaspersky einstellen können, aber das eigentliche „Problem“ ist ja das selbst erstellte Zertifikat).

Ich gehe davon aus, dass ihr Apache2 bereits installiert habt. Wenn nicht gibt es dazu genügend Anleitungen. Stellt sicher dass ihr die benötigten Module für Apache2 geladen habt:

a2enmod ssl
a2enmod proxy
a2enmod proxy_http
a2enmod proxy_wstunnel
a2enmod rewrite

Erstellt dann eine vHost Datei oder fügt den Code an eine eurer bestehenden vHosts Dateien an. In meinem Fall kopiere ich die Konfiguration nach

/etc/apache2/sites-available/000-default.conf

Hier die Konfiguration:

<VirtualHost *:80>
    ServerName bot.yourdomain.de

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    RewriteEngine on
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</VirtualHost>

<VirtualHost *:443>
    ServerName bot.yourdomain.de

    SSLEngine On
    SSLCertificateFile /etc/letsencrypt/live/bot.yourdomain.de/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/bot.yourdomain.de/privkey.pem
    SSLCertificateChainFile /etc/letsencrypt/live/bot.yourdomain.de/fullchain.pem

    SSLProxyEngine On
    ProxyRequests On
    SSLProxyVerify none
    SSLProxyCheckPeerCN off
    SSLProxyCheckPeerName off
    SSLProxyCheckPeerExpire off

    ProxyPass "/ws/" "wss://127.0.0.1:25000/ws/"
    ProxyPassReverse "/ws/" "wss://127.0.0.1:25000/ws/"
    ProxyPass "/" "https://127.0.0.1:25000/"
    ProxyPassReverse "/" "https://127.0.0.1:25000/"

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Im Anschluss wird Apache2 neu gestartet. Achtet natürlich drauf, dass euer Phantombot im Hintergrund weiter läuft. Ihr könnt dies prüfen indem ihr im Browser folgende URL aufruft:

http://bot.deinedomain.de:25000

Ihr solltet nun wieder zum Webinterface eures Bots kommen, allerdings ist das Zertifikat nicht gültig, da hier das selbst signierte verwendet wird.

Wenn alles geklappt hat ist euer Bot nun künftig unter folgender Domain mit einem gültigen Letsencrypt Zertifikat erreichbar:

https://bot.deinedomain.de

 

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert