Der Pilgermaske Blog

der andere blog - Willkommen!

Webmin, Usermin und sowas

- Veröffentlicht unter Linux von

Nachdem der Server installiert ist, der Mailserver funktioniert und das CMS den ersten brauchbaren Artikel enthält, der FTP-Zugang einigermaßen gesichert und das Backup – mehr oder weniger – zufriedenstellend gelöst ist, steht Admin dann vor den eigentlich grundsätzlichen Fragen:

  • Wenn ich einen Mailserver betreibe: Wie verwalte ich die Accounts und – noch viel wichtiger! – wie verwalten die Benutzer ihre Passwörter?
  • Wenn die Anwender auf meinen Server Speicherplatz (zum Beispiel in /home/benutzer) nutzen können: Wie beschränke und kontrolliere ich und der Benutzer den Speicherplatz?
  • Wenn ich Benutzer anlege: Wieviele persönliche Daten will ich von meinen Benutzern und warum (nicht)? Wie sicher ist dies alles zu betreiben?

Fragen über Fragen. Und da fängt die Admin- Arbeit eigentlich erst richtig an.

Alternativen

Natürlich gibt es out-of-the-box-Lösungen. Sehr gut hat mir z.B. Zimbra 7.1.0 auf Ubuntu 10.04 LTS gefallen. Der Nachteil war allerdings, dass Zimbra alle Dienste (auch den Webserver) mitbrachte, installierte und damit alle Ressourcen in Beschlag nahm. Es wurde für mich schwierig, die eigenen Projekt-Ziele mit den von Zimbra gegebenen (und konfigurierten) Diensten umzusetzen – schade, ich fand Zimbra super! Wer also einen Server mit einer Minimal-Installation, mit Internet-Anbindung und ohne installierte Dienste betreut, sollte sich unbedingt mal Zimbra anschauen.

Dann habe ich schmale Lösungen gesucht, gefunden und ausprobiert. So habe ich mir – wie viele andere Admins! – SquirrelMail angeschaut. Wirklich überzeugt hatte mich diese Software aber nicht, auch wenn die verfügbaren Funktionalitäten und Themes beeindruckend sind.

Optik

Mal ehrlich: Wenn ein Admin sagt, dass die Optik der Tools KEINE Rolle spielt, hat er schon gelogen. Natürlich schätzen auch Admins eine schöne und überschaubare Web-Anwendung! Und wenn dann Webmin installiert ist, bekommt man erstmal ein Augenleiden. Ich weiß auch nicht, warum die Webmin-Buben in die Webmin-Optik keine Liebe reinstecken…. Letztlich sollte man sich nach einen Theme umschauen (so viele gibt es leider nicht!) und erstmal “Klar Schiff” machen. Ich habe mich für das StressFree Theme (5) entschieden.

Sicherheit

Bei aller Liebe zur Optik sollte natürlich die Sicherheit NIEMALS zurückstehen und weitestgehend optimiert werden – aber so, dass der Anwender noch atmen kann. Und da Webmin einen eigenen Webserver mitbringt, der per HTTPS angesprochen und auch Zertifikate für die Serverdienste generieren kann, gibt es einiges Potenzial für Optimierungen (1/3). Ich würde empfehlen, die Server-Dienste direkt in den installierten Scripten einzurichten und dann Webmin hinterher (sozusagen) drüberzulegen und nur zur ‘Verwaltung’ der Dienste einzusetzen. Letztlich stellt sich dann die Frage, wieviel Zugeständnisse macht Admina an das grafische Frontend?! So hatte ich den Fall, dass ich im Script “wenn es gewollt ist” konfiguriert habe, aber Webmin nur “Ja” oder “Nein” kannte. Ich empfehle dann, sich für die Option zu entscheiden, die ich auch grafisch verwalten kann, weil es ja eigentlich der Sinn ist, nicht mehr in die Scripte zu schauen und dann hätte ich gerne alle aktiven Optionen in der grafischen Verwaltung auf einen Blick. Letztlich ist das wohl Geschmackssache – aber sicherlich kommt man an den Punkt, sich entscheiden zu müssen!

Benutzerverwaltung

Entscheiden muß man auch, wie es denn mit der Benutzerverwaltung aussieht. Es kann auf keinen Fall eine Option sein, den Benutzern den Zugriff per SSH auf die Linux-console zu ermöglichen, damit sie ihr Passwort wechseln können! Und auch da hat in meinen Augen Webmin gepunktet: Mit dem Anlegen der Benutzer unter Webmin kann ich ein Benutzer-Profil vor-definieren. So können alle Benutzer mit der Shell /bin/false angelegt werden und schon ist keine (brauchbare) Anmeldung am Linux Server möglich. Und da Usermin für das Mailfrontend eine sehr schöne Möglichkeit bietet, mit der Benutzer unter ihrer Anmeldung das Passwort wechseln können, ist auch dafür keinerlei Zugriff auf den Server notwendig. Auch der Umweg über Datenbanken oder LDAP ist nicht notwendig: Die 6 WG-Genossen als Benutzer einfach normal mit useradd (oder mit Webmin) anlegen und dann kann Admin sie einfach mit Webmin in der /etc/passwd verwalten (4). Wenn ich das richtig verstanden habe, verträgt die passwd rund 65000 Einträge. Eine große WG…. Und auch Dovecot und Postfix finden die Benutzer dort.

Usermin

In Foren habe ich immer wieder heraus gelesen, dass es Unklarheiten gibt, was Webmin (6) und Usermin eigentlich unterscheidet. Nochmal deutlich: Mit Webmin verwaltet man den Server (die Hardware, Installationen), die Serverdienste (FTP, Apache, Postfix) und Ressourcen (Plattenplatz, Quota, Benutzer). Mit dem Usermin, welches “in das” Webmin hinein installiert wird, gebe ich meinen Benutzer den kontrollierten Zugriff auf Ressourcen (Postfach, Speicherplatz) – deswegen ja USERmin. Also: erst mit Webmin den Server rund machen, Usermin unter Webmin für die Benutzer konfigurieren und sie dann an Usermin anmelden lassen. Achtet auf die verschiedenen Ports…. Verdammt, der Text wird zu lang.

Usermin Startmenü Usermin 1.470

Usermin Up-u. Download App Up- und Download App

Usermin Speicher- Quota App Speicher Quota

Usermin Passwort App Passwort ändern

Usermin Email- Weiterleitung App Email Weiterleitung

Usermin Postfach App Ein Postfach

Usermin Email Black- u. White-listing App Email Black- und Whitelist

Usermin Email Zeit-versetzt senden App Zeitversetzt Email senden

Nochmal Sicherheit

Mit der Verwaltung der Benutzer, dem Mailserver und der Sicherheit ist das nämlich so eine Sache! Ich würde z.B. versuchen, verschlüsselte Passwörter einzusetzen. Damit muß ich aber in Zusammenhang mit Dovecot und Postfix auch eine zweite DB (die erste ist die /etc/passwd) – nämlich die sasldb2 – pflegen, bzw. den Benutzern auch den Zugriff auf die DB für den Passwortwechsel einrichten! Spannende Sache: Ich baue mir ein 2tes Sicherheitsproblem ein. Vielleicht ist es aber mehr Sicherheitsgewinn, wenn ich auf die verschlüsselten Passwörter verzichte und TLS (also die verschlüsselte Übertragung des unverschlüsselten Passwortes) als mandatory (-> Pflicht) vorgebe. Und damit muß ich den Benutzern nur noch den Zugriff auf eine Datenbank konfigurieren. Vielleicht gewinnt man manchmal mehr, wenn man etwas aufgibt. (So hat wohl auch meine Ex gedacht.)

The End

Vor dem Ende sollte man nochmal den Anfang betrachten: Ich will ein einfaches tool zur Verwaltung des Servers (Webmin) und die Benutzer sollen ein schönes Mailfrontend im Browser haben und eine einfache Möglichkeit, dass Passwort zu wechseln (Usermin). Also konfiguriere deinen Server optimal auf der console, installiere Webmin/Usermin, hübsche Webmin auf und schlanke es ab (ich deinstalliere erstmal alle Webmin-Module, die ich nicht brauche), beachte Sicherheitsüberlegungen – Welche Daten von Benutzern brauche ich unbedingt? Welche nicht? Ist ein shell-Zugang unbedingt erforderlich? Specke das Usermin für die Anwender ab (Module ausblenden, Theme einstellen) – letztlich bleiben ca. 5 Module für den Benutzer und alle sind sicher und glücklich.

Weblinks zum Artikel

| 1 Sicherheit | 2 Squirrelmail | 3 Sicherheitsempfehlungen | 4 Linux Befehlsübersicht | 5 Webmin Theme | 6 Webmin

Comments