Auf Desktop-Systemen ist Ubuntu eines der beliebtesten Linux-Systeme. Die Server-Variante ist allerdings eher unbekannt. Was Ubuntu Hardy Heron Server 8.04 aber für Administratoren und den Produktiveinsatz interessant macht, ist LTS, der Long Term Support. Dieser garantiert die Versorgung mit Sicherheits-Updates für Ubuntu-Server bis ins Jahr 2013. Damit wird der Server zwei Jahre länger versorgt als die Desktop-Versionen.
Installation
Im Gegensatz zu den anderen Ubuntu-Derivaten kommt die Server-Version nicht als Live-CD. Zunächst benötigen Sie das ISO-Abbild von einem der Server, dieses brennen Sie anschließend auf CD. Booten Sie den zukünftigen Ubuntu-Server von der CD und starten Sie die Installation. Diese ist rudimentär gehalten, denn die Server-Variante von Hardy Heron verzichtet vollständig auf eine grafische Installationsoberfläche. Wie meistens beginnt die Installation mit den Spracheinstellungen.
Im nächsten Schritt können Sie direkt mit der Installation fortfahren. Ebenso bietet Ihnen das System die Möglichkeit an, ein bereits installiertes System von der ersten Festplatte zu starten. Nach der Hardwareerkennung lädt das Betriebssystem optionale Kernel-Module und konfiguriert das Netzwerk. Ist dies geschehen, können Sie dem Server einen Namen geben.
Anschließend versucht das Setup die Festplatte zu erkennen. Ist der Vorgang erfolgreich, startet das Partitionierungsprogramm. Hier haben Sie nun vier Optionen. Bei den ersten drei Möglichkeiten nimmt das System die gesamte Platte und partitioniert diese automatisch. Hier können Sie entscheiden, ob LVM (Logical Volume Management) verwendet werden soll und ob das System das LVM-Volumen verschlüsseln soll. Alternativ können Sie die Festplatten auch per Hand einrichten.
Grundsystem und Updates
.
Im Anschluss spielt das Installationsprogramm das Grundsystem auf. Dies kann je nach Hardware einige Zeit in Anspruch nehmen. Danach legen Sie einen neuen Namen für ein Benutzerkonto, einen Anmeldenamen und ein Passwort fest. Sollten Sie einen HTTP-Proxy benötigen, können Sie diese Einstellung im folgenden Schritt konfigurieren. Sollten Sie Zugriff zum Internet haben, verbindet sich Hardy-Server zum entsprechenden Repository und überprüft, ob Updates vorliegen.
Der nächste Schritt legt fest, welchen Zweck der Server erfüllen soll. Dabei spielt das System die jeweiligen Programme ein und führt die Grundkonfiguration durch. Die Installationsroutine bietet Ihnen die gängigsten Einsatzgebiete an und installiert dementsprechend die benötigte Software. Hierzu gehören DNS-, LAMP, Mail-, OpenSSH-, PostgreSQL-, Druck- und Samba-Datei-Server. Je nach Auswahl müssen Sie noch das eine oder andere Passwort vergeben. MySQL möchte zum Beispiel ein Kennwort für den Benutzer root haben.
Zwar können Sie natürlich auch jedes Paket separat manuell einspielen, die Vorwahl erspart aber in den meisten Fällen viel Arbeit. Zum Abschluss stellen Sie noch die Uhrzeit auf die korrekte Zeitzone, und der Server ist fertig installiert. Nach einem Neustart ist das Betriebssystem einsatzbereit.
Feintuning nach der Installation
Wie bei den meisten Systemen muss man nach der Installation hier und da noch nachbessern. Dies ist eigentlich kein großes Problem, wenn man weiß, wo man suchen soll. TecChannel zeigt einige solcher Stolperfallen auf und erspart Ihnen vielleicht lästige Sucharbeit.
Passwort für den Superuser
Ubuntu Server setzt kein Kennwort für das Administratorenkonto. Wahlweise können Sie mittels sudo su
zum Superuser werden oder dem Konto ein Passwort zuweisen. Sollten Sie letztere Option wählen, können Sie sich auch direkt als root auf dem System anmelden. Ein Kennwort für den Administrator zu vergeben ist einfach. Wechseln Sie per sudo su
in den Superuser-Modus, und geben Sie danach den Befehl passwd <Enter>
ein. Nun können Sie ein Passwort festlegen und sich direkt als root einloggen.
Feste Netzwerkadresse
Während der Installation lässt sich keine fixe IP-Adresse verwenden, was aber bei Servern meist notwendig ist. Um die IP einzugeben, ist ebenfalls Handarbeit notwendig. Werden Sie zunächst mit dem Kommando sudo su
und Eingabe des Passworts der Benutzer root. Danach öffnen Sie mit einem Texeditor Ihrer Wahl die Datei /etc/network/interfaces
. Zur Auswahl stehen hier zum Beispiel vi, vim oder pico.
Hier finden Sie die Einträge für vorhandene, unterstützte Netzwerkkarten. Haben Sie nur ein Netzwerkgerät, sollten zwei Zeilen in der Art auto eth0
und iface eth0 inet dhcp
zu lesen sein. Wollen Sie die Adresse zum Beispiel auf 192.168.21.10 setzen, verändern Sie zunächst die zweite Zeilen: iface eth0 inet static
. Danach legen Sie die Parameter fest. Der neue Eintrag könnte zum Beispiel so aussehen:
auto eth0
iface eth0 inet static
address 192.168.21.10
netmask 255.255.255.0
network 192.168.21.0
broadcast 192.168.21.255
gateway 192.168.21.1
Nach Eingabe des Befehls /etc/init.d/networking restart
sollten die neuen Einstellungen übernommen sein. Möchten Sie mit dem Server Zugriff aufs Internet haben, müssen Sie ebenfalls die DNS-Einstellungen anpassen. Hierfür ist die Datei /etc/resolv.conf
zuständig. Hier ändern Sie den Eintrag nameserver xxx.xxx.xxx.xxx
entsprechend ab. Sollten Sie hier Einstellungen verändern, müssen Sie die Netzwerkdienste ebenfalls wie gehabt neu starten. Ob alles wie gewünscht funktioniert, können Sie zum Beispiel mit ping tecchannel.de
ausprobieren.
Das Betriebssystem auf dem aktuellen Stand halten
Ubuntu setzt per Standard auf eine Paketverwaltung mit apt, diese kommt auch bei Ubuntu-Server zum Einsatz. Allerdings müssen Sie hier auf eine schicke grafische Oberfläche verzichten. Die Bedienung ist dennoch relativ simpel, die Syntax lautet: apt-get <Optionen> <Befehl> <Paket_1 Paket_2 ...>
Per apt-get update
halten Sie die Repositories auf dem aktuellsten Stand. Vorhandene Sicherheits-Updates spielen Sie mittels apt-get upgrade
ein. Einmal heruntergeladene Pakete finden Sie im Archiv /var/cache/apt/archives
. Die folgende Tabelle enthält noch die wichtigsten Parameter apt:
Befehl |
Wirkung |
Apt-get install <Paketname> |
Installiert ein einzelnes Paket |
Apt-cache search <Suchbegriff> |
Durchsucht das Repository und zeigt das Ergebnis auf dem Bildschirm an |
Apt-get remove <Paketname> |
Deinstalliert ein einzelnes Paket |
Apt-get source <Paketname> |
Holt den Quellcode eines einzelnen Pakets |
Apt-get clean |
Bereinigt das Archivverzeichnis von bereits heruntergeladenen Paketen |
Apt-get autoclean |
Löscht heruntergeladene Pakete im Archiv, die nicht mehr im Repository sind |
Apt verfügt zudem über eine Reihe von Schaltern, mit denen Sie spezielle Optionen ansprechen können. Die Tabelle zeigt Ihnen die wichtigsten Schalter:
Schalter |
Wirkung |
-d |
Download only: lädt Pakete nur herunter und legt diese im Archivverzeichnis ab |
-f |
Fix: versucht korrupte Abhängigkeiten zu korrigieren |
-s |
Simulate: führt lediglich eine Simulation durch |
-y |
auto-yes: Sie müssen keinen Aktionen mehr bestätigen |
-b |
Kompiliert heruntergeladene Quellpakete |
Weitere Informationen zu apt-get und apt-cache finden Sie in den jeweiligen Manpages (man apt-get
und man apt-cache
)
Alternative aptitude
Aptitude basiert auf apt-get, lässt sich teilweise etwas einfacher bedienen und bringt diverse Vorteile mit sich. Der größte Vorteil von aptitude dürfte sein, dass sich die Software die Statusinformationen merkt. Sie unterscheidet zwischen manuell installierten und automatisch installierten Paketen. Sie wollen zum Beispiel ein Paket installieren, das weitere abhängige Pakete benötigt. Somit ist das von Ihnen gewünschte Paket manuell installiert.
Die Abhängigkeiten deklarieren wir als automatisch. Der Vorteil ergibt sich nun bei der Deinstallation von Paketen. Hier entfernt aptitude automatisch alle abhängigen Pakete, die das System nicht mehr benötigt. Dies funktioniert aber nur, wenn Pakete mit aptitude installiert wurden. Haben Sie zuvor apt-get verwendet, verlieren Sie den Vorteil.
Des Weiteren können Sie aptitude so konfigurieren, dass Sie nur abhängige, empfohlene oder auch Vorschläge automatisch installieren wollen. Für Fehleranalyse protokolliert aptitude die durchlaufenen Schritte in der Datei /var/log/aptitude. Nachteil ist, dass apt-get schneller ist als aptitude. Eine Mischung aus apt-get und aptitude sollten Sie aus Konsistenzgründen tunlichst vermeiden.
Relevante Neuerungen in Ubuntu 8.04 Server
Ubuntu-Server wird sicherer, zumindest für einige Anwender. Denn die aktuelle Version unterstützt nicht nur AppArmor, sondern auch SELinux. Damit lässt sich die Sicherheit des Systems deutlich erhöhen, denn beispielsweise erlauben die Kernel-Funktionen das Konfigurieren von Zugriffskontrollen einzelner Prozesse. Sie finden das Paket unter dem Namen „selinux“ im Universe-Repository.
Als Herzstück dient Linux-Kernel 2.6.24, der signifikante Verbesserungen mit sich bringt. Dazu gehört unter anderem der dynticks-Support für AMD64. Ebenso erwähnenswert ist der „Completely Fair Scheduler“. Dieser wurde mit Kernel 2.6.23 eingeführt und soll sich positiv auf die Geschwindigkeit auswirken.
Speicherschutz
Ubuntu 8.04 führt zusätzliche Prüfungen durch, wodurch sich /dev/mem und /dev/kmem nur nutzen lassen, um Gerätespeicher zuzuweisen. Diese Maßnahme soll gegen rootkits und anderen schädlichen Code schützen.
Ebenso lassen sich die unteren 64 KByte des Systemspeichers nicht länger per Standard adressieren. Damit will man verhindern, dass sich Fehler im Kernel zu Sicherheitslücken umwandeln lassen. Applikationen, die als „Position Independent Executables“ (PIE) kompiliert wurden, platziert das Betriebssystem nun in einen nicht voraussagbaren Speicherbereich. Dies soll es schwerer machen, Sicherheitslücken auszunutzen.
Unkomplizierte Firewall
Ebenso neu ist die sogenannte „Uncomplicated Firewall“ (ufw). Dies ist eine Host-basierte Firewall, die sich relativ simpel via Kommandozeile administrieren lässt, wodurch das System für Endbenutzer leichter zu nutzen sein soll. Ein genauerer Blick bestätigt das. Die Software versteht Portnummern, Standard-Protokolltypen und IP-Adressen, die Syntax ist benutzerfreundlich aufgebaut. Ufw arbeitet dabei eigentlich als Frontend für iptables-restore. Regeln speichert das Programm in den Dateien /etc/ufw/before.rules, /etc/ufw/after.rules und /var/lib/ufw/user.rules. Starten beziehungsweise stoppen lässt sich die Firewall mittels ufw enable
und ufw disable
. Die merkt sich das System übrigens für Neustarts.
Die folgenden Beispiele sollen die Verwendung veranschaulichen: Um etwa alle Verbindungen zunächst zu verbieten dient der Befehl sudo ufw default deny
. Wollen Sie danach TCP-Verbindungen Port 110 erlauben, funktioniert das mit sudo ufw allow 110/tcp
. Normalerweise liegt SMTP auf Port 25. Diesen Datenverkehr könnten Sie auch mittels sudo ufw deny smtp
unterbinden. Soll Mailverkehr dann doch laufen, lässt sich die Regel mit sudo ufw delete deny smtp
wieder rückgängig machen.
Einer bestimmten IP-Adresse erlauben Sie den Zugriff mit sudo ufw allow from <IP-Adresse>
. Weitere Informationen zu ufw finden Sie in den lokalen Manpages – man ufw
. Falls Sie, wie später im Artikel beschrieben, Webmin einsetzen wollen, schalten Sie bei aktivierter Firewall den Port 10000 frei.
Fazit
Viel grafischen Schnickschnack darf man nach einer Grundinstallation von Ubuntu Server 8.04 nicht erwarten. Aber das ist auch nicht der Anspruch. Das Betriebssystem wurde nun mal als reines Server-System erschaffen. Einmal eingerichtet, soll es sein Dasein in Stille fristen und seine Dienste stabil anbieten. Und dafür scheint es genau richtig zu sein. Dennoch könnte sich ein Kritikpunkt ergeben. Nur erfahrene Linux-Administratoren dürften in der Lage sein, die Server-Edition von Ubuntu 8.04 ohne weitere Software zu bändigen. Der Vorteil wiederum ist: je weniger Software, desto weniger Schwachstellen und Angriffspunkte.
Die eigentliche Installation ist nicht schwierig. Auch die Auswahl der zu verrichtenden Dienste ist noch einfach, solange es sich um Quasi-Standard-Sachen wie zum Beispiel LAMP, Samba oder Mail-Server handelt. Aber sobald das System installiert ist, muss man für eine erfolgreiche Administration fundiertes Wissen mitbringen. Es fängt hier schon mit vermeintlich banalen Sachen wie das Vergeben einer fixen IP-Adresse an.
Dennoch ist dieser Ubuntu-Ableger mehr als interessant. Die Entwickler versprechen fünf Jahre Sicherheits-Updates und Unterstützung. Kernel 2.6.24 bringt nicht nur mehr Geschwindigkeit, sondern auch bessere Hardwareunterstützung. Administratoren dürfen nun für ein gehärtetes Linux zwischen AppArmor und SELinux wählen. Bei Ubuntu 8.04 ist definitiv die hinzugewonnene innere Schönheit zu bewundern.
Der zweite Teil des Artikels handelt davon, wie Sie Ihren neuen Ubuntu-Server mit Hilfe von Webmin bequem steuern und verwalten. Online ist dieser Artikel-Abschnitt nur für unsere Premium-Leser zugänglich. Im kostenpflichtigen PDF finden Sie den Artikel ebenfalls komplett.
Webmin: Server leicht und bequem steuern
Nach all den obigen Schritten ist der Server installiert, kann Sicherheits-Updates einpflegen und über eine fixe IP-Adresse ansprechen. Je nach Einsatzzweck müssen Sie nun den Server manuell administrieren. Wollen Sie keine Kommandozeilen-Orgien veranstalten, gibt es nun zwei Möglichkeiten.
Dank des Zugriffs auf alle Ubuntu-Repositories könnten Sie den X-Server nachinstallieren und einen Window-Manager einsetzen. Hier müssen Sie jedoch die Namen für die benötigten Administrationspakete wissen und alle Aufgaben künftig direkt vor Ort durchführen. Als zweite Möglichkeit könnten Sie die kostenlose All-in-One-Lösung Webmin einsetzen. Herunterladen können Sie die aktuellste Version von Webmin von der Projekt-Seite.
Sicherheitsfanatiker könnten anmerken, dass man einen weiteren Angriffspunkt in das System baut. Das ist sicher nicht ganz unwahr. Vorteil ist allerdings, dass Sie den Server plattformunabhängig via Browser administrieren können. Sie müssen sich dazu nicht einmal im selben Raum befinden.
Installation von Webmin
Das Administrationspaket gibt es als rpm-, deb-, tar- und Solaris-Datei. Da Ubuntu das Debian-Paketsystem verwendet, ist in diesem Falls die deb-Datei am tauglichsten. Einmal heruntergeladen, lässt sich diese mit dpkg –i <Paketname.deb>
installieren. Allerdings fehlen einige abhängige Pakete. Vor der Webmin-Installation sollten Sie folgenden Befehl als Benutzer root auf der Kommandozeile ausführen: aptitude install libnet-ssleay-perl libauthen-pam-perl libio-pty-perl libmd5-perl
.
Diese vier Pakete benötigt Webmin zur Installation. Sollten Sie zuvor versucht haben Webmin zu installieren, geschieht dies nach dem Auflösen der Abhängigkeiten automatisch. Für diesen Test nutzt TecChannel Webmin 1.410.
Nach einer erfolgreichen Installation können Sie über https und Port 10000 auf die Administrationsoberfläche zugreifen. Es darf sich der Benutzer root anmelden, oder wer mittels sudo root-Befehle ausführen kann. Sehr wahrscheinlich beschwert sich der verwendete Browser über ein ungültiges Sicherheitszertifikat. Hier müssen Sie sich keine Sorgen machen und können beruhigt weiterarbeiten.
Administration des Ubuntu-Servers via Webmin
Vorab sei gesagt, dass Webmin unglaublich viele Module zur Systemadministration zur Verfügung stellt. Je nach Einsatzgebiet brauchen Sie eventuell nur einen geringen Prozentsatz. TecChannel will Ihnen die wahrscheinlich gebräuchlichsten Module vorstellen und zeigen, wie Sie die Server-Variante von Hardy Heron stressfrei in den Griff bekommen. Webmin ist sehr mächtig, weswegen TecChannel im Rahmen dieses Artikels nur einen Teil des gesamten Themas behandelt.
Nach einer Anmeldung gelangen Sie auf eine Seite mit generellen Informationen zum System. Aktuelle Webmin-Versionen klassifizieren zwischen verwendeten und nichtverwendeten Modulen, was der Übersicht dient.
Wird ein Modul nicht verwendet, landet es in den „Un-used Modules“. Installieren Sie ein von Webmin unterstütztes Paket nach, benutzt die Software das Modul automatisch nach dem Betätigen des „Refresh Modules“-Knopfes.
Server-Module
Gemäß seinem Einsatzzweck sehen wir uns zunächst die Server-Module für Ubuntu Server 8.04 an. Der Test-Server dient in diesem Fall als LAMP-System, Mail-, Samba- und SSH-Server. Alle dafür benötigten Module hat Webmin erkannt. Zusätzlich haben wir den Spam-Filter SpamAssassin nachinstalliert. Nach einer Aktualisierung der Module erschien auch dieses in der Server-Liste.
Administration des MySQL-Datenbank-Servers
Nach einer frischen Installation ist für den Administrator der Datenbank kein Passwort gesetzt. Rufen Sie das Webmin-Modul „MySQL Database Server“ auf, müssen Sie zunächst ein Admin-Konto für die Datenbanken kreieren. Hier können Sie, müssen aber nicht, den Benutzer root nehmen. Bei der Benutzerverwaltung der Datenbank könnten Sie jedes Mal einen MySQL-Anwender anlegen lassen, wenn Sie einen Linux-Anwender hinzufügen. Ebenso können Sie dafür Rechtevergaben automatisieren lassen.
Nützlich ist auch die Funktion, eine SQL-Anfrage direkt innerhalb Webmins ausführen zu lassen. Befinden Sie sich in einer Datenbank, können Sie mit eigentlich zwei weiteren Mausklicks eine Sicherung dieser durchführen. Dazu haben Sie zwei Möglichkeiten. Erstens ein einmaliges Backup in eine Datei. Zweitens eine terminlich festgelegte Sicherung, die der Administrator immer wiederholen lassen kann – das entspricht der Automatisierung der Backups. Mit einer Schaltfläche am unteren Ende der Hauptseite des Moduls können Anwender auch alle Datenbanken sichern.
Ebenso können Sie die Parameter des MySQL-Daemons modifizieren. Hierzu gehören unter anderem Port-Nummer, Verzeichnis für die Speicherung der Datenbanken und so weiter. Am besten lernen Sie die Funktionen kennen, wenn Sie auf einem Testsystem ein wenig experimentieren. So lernen Sie Webmin schnell kennen und stoßen öfter auf Aha-Effekte.
Heterogener Dateiaustausch mit Samba
Linux-Server arbeiten oft als Datei-Server für Windows-Umgebungen. Der Vorteil ist ohne Zweifel der schnöde Mammon. Server-Distributionen wie Ubuntu sind kostenlos erhältlich. Außerdem liegt die einzige Einschränkung der maximal zulässigen Anwender in der Hardware. Samba ist mittlerweile etabliert, akzeptiert und vielfach eingesetzt. Natürlich könnten Sie die Software auch manuell konfigurieren, indem Sie die Datei /etc/samba/smb.conf bearbeiten. Mit Webmin geht es allerdings etwas komfortabler und übersichtlicher.
Zunächst einmal muss man wissen, dass Samba eine eigene Benutzerverwaltung hat. Legen Sie also einen Linux-Anwender an, hat dieser noch lange keinen Zugriff zu einem Samba-Share. Mit Webmin können Sie allerdings eine automatische Konvertierung von Linux- auf Samba-Anwender festlegen. Das Gleiche gilt für Gruppen. Dies funktioniert allerdings nur, wenn Sie Webmin für die komplette Benutzerverwaltung benutzen. Ebenso könnten Sie via Webmin an eine bereits bestehende Windows-Domäne andocken. Komfortabler ist die Möglichkeit, alle Home-Verzeichnisse freizugeben. Somit müssen Administratoren nicht in mühseliger Kleinarbeit für jeden Benutzer eine eigene Freigabe kreieren. Zugriff haben natürlich die berechtigten Anwender.
Per Standard legt das System nur eine Leseberechtigung an. Dies macht natürlich für die meisten Datei-Server wenig Sinn, hier müssen Sie nachbessern. Klicken Sie dazu auf die Freigabe „homes“ und danach auf „Security and Access Control“. Hier lässt sich übrigens auch der Zugriff auf Hostebene einschränken und man kann andere Sicherheitseinstellungen vornehmen. Im Bereich „Windows Networking“ können Sie unter anderem einstellen, in welcher Arbeitsgruppe der Samba-Server auftauchen soll und einen Namen vergeben. Ebenso haben Sie hier die Möglichkeit, WINS-Einstellungen vorzunehmen.
Sollten Sie irgendwelche Einstellungen verändert haben, ist ein Neustart des Samba-Daemons angesagt. Am unteren Ende des Samba-Moduls finden Sie für diese Aufgabe eine Schaltfläche und müssen ebenfalls nicht zur Kommandozeile greifen.
Webseiten ausliefern mit Apache
Bei der Verwendung des Apache-Moduls sind Apache-Kenntnisse Voraussetzung. Während man zum Beispiel bei der Samba-Konfiguration auch mit relativ wenig Erfahrung schnell zu Ergebnissen kommt, dürfte dies bei der Konfiguration des Webservers nicht so sein. Die grafische Konfigurationshilfe kann einem Administrator aber deutlich Zeit ersparen.
Im Prinzip lässt sich der Webserver komplett mittels Webmin unter Kontrolle halten. Zum Beispiel können Sie die maximale Anzahl der Prozesse einstellen, virtuelle Hosts erschaffen, E-Mail-Adresse des Server-Admins hinterlegen und so weiter. Sehr angenehm ist auch, dass man sich die zu aktivierenden Apache-Module per Mausklick zusammenklicken kann. Dennoch erfordert Apache, dass Sie sich in die Materie einarbeiten und auf dem Laufenden bleiben.
Sicheres Protokoll: SSH-Server
Etwas übersichtlicher als bei Apache geht es bei der Konfiguration des SSH-Servers zur Sache. Prinzipiell bestimmen Sie hier, wer sich anmelden darf und was der SSH-Server zur Verfügung stellen soll. Nicht sehr schön an der Grundeinstellung ist die Tatsache, dass ein root-Login via SSH generell erlaubt ist. Nach einer Standardinstallation ist dies zunächst kein Problem, da Benutzer root unter Ubuntu kein Passwort besitzt und die Admins mit sudo arbeiten müssen.
Sollten Sie aber aus irgendeinem Grund dem Benutzer root ein Passwort verpassen, könnte dieser sich nun von extern per SSH einloggen – eine potenzielle Schwachstelle. Mit Webmin unter dem Menü „Authentication“ können Sie diese Lücke mit nur einem Mausklick abstellen. Ebenso ist das sogenannte X11-Forwarding aktiviert. Sie finden es hinter der Schaltfläche „Miscellaneous Options“. Auch hier mahnen einige Experten, dass dieser Umstand eine weitere Sicherheitslücke aufreißen könnte. Eine Einschränkung der erlaubten Host-Adressen ist selbstverständlich auch möglich.
Mail-Server mit Postfix, Procmail, Dovecot und SpamAssassin
Das Aufsetzen eines Mail-Servers ist ohne Übertreibung gesagt eine Wissenschaft für sich und würde den Rahmen dieses Artikels bei Weitem sprengen. Haben Sie von der Materie allerdings Ahnung, geht die Arbeit mit Webmin deutlich leichter. Statt Kommandozeilen-Orgien ist einfach alles übersichtlich und strukturiert aufgebaut. Administratoren müssen sich zumindest keine kruden Parameter-Namen merken. Ebenso kann das grafische Administrationsprogramm die Einrichtung und Verwaltung des IMAP-/Pop3-Servers um einiges komfortabler machen. Auch das Anlegen von SpamAssassin-Filtern ist grafisch besser zu verstehen. Bei der Einrichtung von procmail gibt es nicht wirklich Hilfen. Hier können Sie lediglich die Datei /etc/procmailrc verändern.
An dieser Stelle soll der Artikel etwas vom Thema Webmin abschweifen. Es taucht in den Foren immer wieder die Frage auf, wie man mit Postfix durch SMTP-Authentisierung zum Beispiel einen SMTP-Server eines Providers als Relay benutzen kann. Dies ist gar nicht so schwer und scheint beim Thema Mail-Server eine wertvolle Information zu sein. Zunächst überprüfen Sie das Vorhandensein des Pakets libsasl2-modules. Danach fügen Sie zwei Parameter in die Datei /etc/postfix/main.cf ein:
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_password.
Dies können Sie zum Beispiel via Webmin vornehmen. Danach legen Sie die Datei /etc/postfix/sasl_password an und schreiben die Authentisierungsdaten Ihres Providers hinein. Dies könnte so aussehen:
smtp.meinprovider.de username:passwort
Nun konfigurieren Sie den Parameter relayhost in der Datei /etc/postfix/main.cf. Als letzten Schritt erzeugen Sie den Hash mittels postmap /etc/postfix/sasl_password
.
Nach einem erneuten Laden der Konfiguration oder einem Neustart des Postfix-Daemons sollte Ihr Server jegliche Mail durch den angegebenen SMTP-Server schicken. Diese Vorgehensweise ist mit Ubuntu-Server-Edition 8.04 erfolgreich getestet. Mails via POP3 oder IMAP abholen funktioniert am einfachsten via fetchmail. Dieses Paket befindet sich ebenfalls in den Ubuntu-Repositories und lässt sich mit Webmin administrieren.
Hardwarekonfiguration
Hinter dem Punkt „Hardware“ verbergen sich unter anderem Konfigurationsmöglichkeiten für Drucker, Partitionen, Logical Volumes und den Boot-Manager GRUB. Da man einen Server wahrscheinlich gern ohne größere Schwierigkeiten um Speicherplatz erweitern möchte, macht ein Aufsetzen via Logical Volumes Sinn. Sollten Sie dies getan haben, können Sie problemlos ein weiteres Volumen in die Gruppe einbinden.
Dazu müssen Sie die neue Festplatte zunächst mittels „Physical Volumes“ dem System bekannt machen. Dies ist leider nicht automatisiert; die Geräte tauchen meist unter /dev/hdX oder /dev/sdX auf. Danach können Sie ein neues Volumen unter „Logical Volumes“ mittels „Create a logical volume in xxx“ erschaffen. Ist dies geschafft und Sie klicken auf den Neuling, haben Sie noch diverse Einstellmöglichkeiten. Unter anderem können Sie einen Einhängepunkt und die Art des Dateisystems festlegen. Bei einem unformatierten Massenspeicher sollten Sie natürlich mittels „create filesystem of type“ ein Dateisystem erzeugen.
Schade ist, dass man Partitionen mittels der Hardwaremodule nicht dynamisch verändern kann. Für diesen Fall nutzt dem Administrator Webmin leider nichts.
GRUB - einfach konfiguriert
Sehr gut ist jedoch die Implementierung des Boot-Managers GRUB. Hier können Sie mit wenigen Mausklicks übersichtlich die Startoptionen Ihres Servers modifizieren. Das beinhaltet, falls mehrere installiert, die Auswahl des Standard-Kernel und dessen Optionen. Ebenso könnten Sie bei Bedarf Extramodule laden, das Startvolumen auswählen und einen Passwortschutz vergeben.
Via „System Time“ sind Sie in der Lage, automatische Zeitsynchronisationen mit dem Zeit-Server Ihrer Wahl aufzusetzen. Ebenso können Sie Zeitzonen verändern und die aktuelle Zeit manuell einstellen.
Netzwerkkonfiguration mittels Webmin
Die Abteilung „Networking“ beeinflusst das Verhalten Ihres Servers im Netzwerk. Wie bereits erwähnt, ist es lästig, dass sich während der Installation keine feste Netzwerkadresse vergeben lässt. Wollen Sie das nicht per Konsole erledigen, geht das auch mit Webmin. Unter „Network Configuration“ sind Sie in der Lage, jede vorhandene Netzwerkkarte zu administrieren. Sehr angenehm ist, dass sich sogenannte virtuelle Netzwerkkarten mit nur zwei Mausklicks erschaffen lassen. Somit könnten Sie dem Server mit nur einer Netzwerkkarte mehrere feste IP-Adressen zuweisen.
Nützlich kann auch die Implementierung der Bandbreitenüberwachung sein. Dazu nutzt das System die IPtables Firewall und das Syslog. Hier lassen sich Berichte generieren, die Administratoren zur Auswertung der Netzlast auf dem Server zu Rate ziehen können.
Die Firewall-Administration zeigt hier übrigens nicht die gesetzten Regeln in der bereits erwähnten „Uncomplicated Firewall“ (ufw). Hier werden die Regeln in der Datei /etc/iptables.up.rules verwaltet. Dies könnte Sackgassen bilden, wenn zum Beispiel Port 25 in ufw erlaubt und hier verboten ist. Daher sollten Sie sich auf ein Verfahren festlegen und dieses konsequent einsetzen.
Weitere interessante Webmin-Module
Die Administrations-Software stellt in der Modulsammlung Webmin ein rudimentäres Backup-Werkzeug zur Verfügung. Es nennt sich „Backup Configuration Files“ und soll in erster Linie für Sicherungen der Server-Konfigurationsdateien dienen. Diese können ebenfalls zeitgesteuert ablaufen. Sie haben die Möglichkeit, diese Dateien via FTP oder SSH auf ein entferntes System übers Netzwerk zu sichern. Ganz unten haben Sie die Möglichkeit, andere Dateien einzubinden. Diese Auswahl müssen Sie jedoch manuell eintippen. Es funktioniert, ist aber nicht schön. Weitere Informationen zu Backup-Strategien finden Sie im TecChannel-Artikel „Automatische Backups mit Linux“. Sollten Sie das Bacula Backup System einsetzen, können Sie das ebenfalls mit Webmin verwalten.
Schön ist auch, dass Sie Cronjobs und Kommandos zeitgesteuert mit Webmin – in der Modulsammlung System – einrichten können. Die Syntax von Cronjobs kann für Neulinge etwas verwirrend sein. Mit der Administration via Browser ist dies hinfällig.
Hier können Sie auf simple Weise Tage, Monate und Jahre der Zeitsteuerung zusammenklicken. Ebenfalls unter Systems könnten Sie mit „Software Packages“ sogar die komplette Paketverwaltung überwachen. Neue Pakete einspielen, das System auf dem neuesten Stand halten, Identifizieren von Dateien und die Anzeige einer Liste aller installierten Pakete ist hier möglich.
Fazit: Webmin beherrscht Ubuntu perfekt
Wesentlich einfacher macht das Verwalten der Administrations-Tausendsassa Webmin. Die Kombination von Ubuntu 8.04 und Webmin lässt auch weniger erfahrene Linuxer gut mit dem Betriebssystem interagieren. Zweifelsohne bindet man dadurch einen potenziellen neuen Angriffspunkt in das System ein und öffnet einen weiteren Port.
Hier muss der Einzelne wahrscheinlich abwägen, in welcher Gefahrenzone sich der Server befindet. Ebenso muss man sehen, wie viel sich an dem Server-System verändert – wobei man Webmin nach der Grundeinrichtung auch abschalten und nur bei Bedarf aktivieren könnte. Es wird eine Frage des persönlichen Geschmacks bleiben.
Webmin ist sehr vielseitig. Bei erster Berührung damit gilt wie bei vielen anderen Sachen: Richten Sie sich ein Testsystem ein, und spielen Sie so viel als möglich herum. Weitere Informationen zu Webmin finden Sie im TecChannel-Artikel „Praxisworkshop Webmin“. (mja)