Inhaltsverzeichnis

zurĂĽck

Webmin hinter Traefik mit Let's Encrypt einbinden

Diese Anleitung beschreibt, wie Webmin direkt auf dem Hostsystem betrieben und ĂĽber Traefik mit Subdomain und HTTPS bereitgestellt wird. Ziel ist der Zugriff ĂĽber:

Voraussetzungen

1. Webmin SSL deaktivieren

Standardmäßig läuft Webmin mit eigenem SSL. Dies muss deaktiviert werden, da Traefik die Verschlüsselung übernimmt.

Datei bearbeiten:

sudo nano /etc/webmin/miniserv.conf

Ändere:

ssl=1

Zu:

ssl=0

Optional nur auf localhost lauschen:

listen=127.0.0.1

Dann Webmin neu starten:

sudo systemctl restart webmin

2. Traefik statische Konfiguration (traefik.yml)

snippet.yaml
entryPoints:
  web:
    address: ":80"
  websecure:
    address: ":443"

certificatesResolvers:
  le:
    acme:
      email: dein@beispiel.de
      storage: /letsencrypt/acme.json
      httpChallenge:
        entryPoint: web

providers:
  file:
    filename: /etc/traefik/dynamic.yml
    watch: true

http:
  middlewares:
    redirect-to-https:
      redirectScheme:
        scheme: https
        permanent: true

3. Traefik dynamische Konfiguration (dynamic.yml)

snippet.yaml
http:
  routers:
    webmin:
      rule: "Host(`webmin.mash4077.dedyn.io`)"
      entryPoints:
        - web
      middlewares:
        - redirect-to-https
      service: webmin

    webmin-secure:
      rule: "Host(`webmin.mash4077.dedyn.io`)"
      entryPoints:
        - websecure
      tls:
        certResolver: le
      service: webmin

  services:
    webmin:
      loadBalancer:
        servers:
          - url: "http://192.168.178.96:10000"

Die IP 192.168.178.96 ist die Adresse des Hosts, auf dem Webmin läuft.

4. Neustart von Traefik

docker compose restart traefik

5. Test und Aufruf

Webbrowser öffnen:

https://webmin.mash4077.dedyn.io

→ Die Seite sollte jetzt über HTTPS mit gültigem Zertifikat erreichbar sein.

6. Optional: Zugriff absichern

•	Zugang nur aus LAN oder VPN
•	Basic Auth Middleware hinzufügen
•	Webmin auf 127.0.0.1 beschränken (siehe oben)

Fehlerbehebung

Webmin leitet weiter auf Port 10000

→ Ursache: SSL in Webmin noch aktiv → ssl=0 setzen und Webmin neu starten.

Kein Zertifikat ausgestellt

→ Prüfe docker logs traefik auf DNS- oder Let’s Encrypt-Probleme

404 oder Connection refused

→ Stelle sicher, dass Webmin lokal unter Port 10000 erreichbar ist und IP stimmt.


Lars.Weiss@gmail.com?l|Lars WeiĂź Lars WeiĂź 11.06.2025 09:59