Betriebssystem mit Cloud-Integration

Test und Tipps - Ubuntu 10.10 Maverick Meerkat Server

27.10.2010 von Jürgen Donauer
Die Linux-Distribution Ubuntu 10.10 Maverick Meerkat bringt in der Server-Version einige Neuerungen mit sich. Neben der verbesserten Integration der Ubuntu Server Cloud legen die Entwickler viel Wert auf die Sicherheits-Features des Server-Betriebssystems.

Die neue Betriebssystem Ubuntu 10.10 adressiert sowohl Heimanwender, Nutzer mobiler Geräte und in einer speziellen Version auch das Server-Segment. Ubuntu 10.10 bringt den Entwicklern zufolge Online- und Offline-Applikationen mit sich und konzentriert sich verstärkt auf Cloud-Dienste.

Die Ubuntu 10.10 Server-Edition macht das Aufsetzen einer Cloud deutlich einfacher als die Vorgänger. Mit Eucalyptus 2.0 haben die Entwickler zudem diverse Bugs ausgebessert. Außerdem soll damit die Stabilität und die Sicherheit des Systems erhöht werden.

Ubuntu 10.10 Maverick Meerkat Server
Gewohnt
Wie immer lässt sich Ubuntu auch in deutscher Sprache starten. Hier macht auch die Server-Ausgabe keine Ausnahme.
Server oder Cloud?
Welche Aufgaben soll Maverick-Server ausführen?
Auch für OEMs
Canonical kommt mit dieser Option Hardware-Herstellern entgegen.
Netzwerk-Name
In diesem Schritt können Sie Ihrer Fantasie freien Lauf lassen. Sprechende Namen sind in der Regel keine schlechte Idee.
Partitionieren
ext4 ist nun das Standard-Dateisystem.
btrfs
Auch mit dem neuen Dateisystem können Anwender experimentieren – allerdings gilt es nicht als stabil.
Benutzername
Das ist auch gleichzeitig der Administrator des Systems.
Verschlüsselt?
Möchten Sie Home ein wenig sicherer machen? Allerdings sind Server in der Regel nicht so von Diebstahl gefährdet, wie Netbooks oder andere mobile Geräte.
Updates
Bei produktiven Servern sind automatische Updates nicht immer sinnvoll. Läuft eine kritische Anwendung, sollte man Updates erst auf einem Testsystem einspielen.
Dienste
Was der Rechner servieren soll, bestimmen Sie in dieser Maske.
Installation
Während die Software-Pakete eingespielt werden können Sie lediglich warten.
Apache
Funktioniert! Der Web-Server wurde korrekt eingespielt.
Webmin
Netzwerk-Schnittstellen lassen sich mit Zusatzsoftware auch via Browser administrieren.
Wolke
Ubuntu Enterprise Cloud installieren.
Was?
Gibt es bereits einen Kontroller im Netzwerk oder wird diese Maschine Chef der Wolke?
Name
Sie brauchen einen Namen für die Cloud.
IP-Adressen
Die Cloud benötigt einen gewissen IP-Bereich. Dieser sollte nicht von anderen Rechnern benutzt werden. Wie groß der Bereich ist, hängt von den Plänen ab, wie umfangreich die Wolke werden soll.
eucalyptus-nc
Die Managing-Software wird mittels Browser verwendet.
Extras
Auch CentOS und Fedora wird von Ubuntu Enterprise Cloud unterstützt.
Eine Stunde gratis
Ubuntu 10.10 Maverick Meerkat Server können Sie kostenlos eine Stunde lang auf Amazons EC2 testen.

Wer die neue Version für den Einsatz auf Servern plant, sollte wissen, dass Ubuntu 10.10 keine LTS-Version ist (Long Term Support). Eine offizielle Unterstützung von den Entwicklern und Patch-Support gibt es nur für 18 Monate. Dies gilt sowohl für die Server- als auch Desktop-Editionen, als auch für die offiziellen Ableger Kubuntu, Xubuntu, Edubuntu, Mythbuntu und Ubuntu Studio, die ebenfalls als Version 10.10 verfügbar sind.

In unserem Test haben wir einen Blick auf die Server-Ausgabe geworfen und stellen die Neuerungen und Änderungen vor. Darüber hinaus geben wir einige wertvolle Tipps für Neulinge auf dem Ubuntu-Server-Sektor. Sie können die Server-Edition kostenlos für eine Stunde auch auf Amazons EC2 ausprobieren.

Neuerungen und Änderungen

Auf den ersten Blick scheint sich gar nicht so viel gegenüber 10.04 Lucid Lynx geändert zu haben. Der Installations-Wizard ist wie beim Vorgänger schnörkellos, die Software-Auswahl ist auch nicht sichtbar größer und es gibt auch keine grafische Oberfläche. Letzteres macht auf einem Server auch tatsächlich Sinn.

Bei einem näheren Blick gibt es im Bereich Cloud aber doch recht bedeutende Änderungen. Anwender haben nun die Möglichkeit, Amazon-Maschinen-Abbilder offline auf einem mit KVM virtualisierten System laufen zu lassen. Das ist vor allen Dingen für Entwickler ausgesprochen nützlich: Sie können nun auf lokalen Servern programmieren und testen, bevor die Abbilder in die Wolke wandern. CloudInit, das Konfigurations-Werkzeug für Ubuntu-Anwender in der Wolke wurde ebenfalls verbessert. Anwender können nun eigene Befehle und Scripte während eines Starts oder Neustarts ausführen lassen. Ebenso befindet sich ebsmount im Universe-Softwarelager für Maverick. Damit können Anwender "Elastic Block Store"-Geräte einbinden. Dies erhöht die Flexibilität von Nutzern, die Massenspeicher unabhängig von ihren Systemen verwalten wollen. Unterstützung für das Dateisystem ext4 wurde ebenfalls hinzugefügt.

Cloudig: Die neue Version 10.10 von Ubuntu hat bei den Cloud-Funktionen aufgestockt.

Seit der Alpha-3-Ausgabe von Maverick konnten Cloud-Abbilder ihren eigenen Kernel verwalten. Dieser lässt sich auch via apt und der Hilfe von Amazons pv-grub aktualisieren. UEC-Host-Systemen (UEC = Ubuntu Enterprise Cloud) steht diese Funktion ebenfalls zur Verfügung. Wer Cloud-Abbilder außerhalb von EC2- oder UEC-Umgebungen laufen lassen möchte, findet dazu im Ubuntu-Wiki eine detaillierte Anleitung. Damit lassen sich Funktionen schnell und unkompliziert testen, ohne eine neue Instanz starten zu müssen. UEC-Abbilder für Ubuntu finden Sie beim Hersteller.

Zum Thema Cloud lässt sich weiterhin anmerken, dass Eucalyptus 2.0, GlusterFS und Ceph in den Kern des Produkts integriert wurden. Ubuntu-Hauptsponsor Canonical erklärte, dass damit der Grundstein für viele Cloud-basierte Enterprise-Applikationen gelegt wurde. Ebenso bringe dieser Schritt mehr Stabilität und diverse Fehler wurden ausgemerzt. Auch die Management-Schnittstelle überarbeiteten die Entwickler. Wer diese verwenden möchte, muss allerdings das Paket eucalyptus-nc nachinstallieren: sudo apt-get install eucalyptus-nc. Im Anschluss lässt es sich via Port 8843 und einer verschlüsselten Verbindung im Browser aufrufen: https://<IP-Adresse-Server>:8443. Benutzername und Passwort lauten jeweils admin.

Wer alle Änderungen und Neuerungen im Detail begutachten möchte, findet eine ausführliche Liste in den Blueprints for Maverick.

Installation von Ubuntu Maverick Meerkat

Anwender können während der Installation das neue Dateisystem btrfs nutzen. Dazu müssen sie aber eine manuelle Partitionierung durchführen und btrfs darf nicht für /boot verwendet werden. Weiterhin sei erwähnt, dass btrfs alles andere als stabil gilt. Den Einsatz in produktiven Systemen sollte man sich deshalb mehr als gut überlegen.

Dateisystem: Anwender können mit dem neuen Dateisystem btrfs experimentieren. Allerdings gilt es nicht als stabil.
Standard: ext4 ist das von Ubuntu 10.10 bevorzugte Dateisystem.

Für die Startpartition verwendet Ubuntu 10.10 Maverick Meerkat nun das Dateisystem ext4 per Standard. Während des Einspielens des Betriebssystems versucht sich das System eine IP-Adresse von einem DHCP-Server zu holen. Da es sich hier um einen Server handelt, möchte der eine oder andere Anwender sicherlich eine feste IP-Adresse verwenden. Leider befindet sich hier immer noch keine einfach Konsolen-basierte GUI an Bord oder die Möglichkeit, dies gleich während der Installation durchzuführen. Den geübten Linux-Administrator wird das nicht weiter stören. Er weiß, dass er die Datei /etc/network/interfaces anpassen muss. Hier findet sich dieser Standard-Eintrag:

auto eth0

iface eth0 inet dhcp

Für eine fixe IP-Adresse sind diese Zeilen zum Beispiel durch folgende zu ersetzen:

auto eth0

iface eth0 inet static

address 192.168.150.240

netmask 255.255.255.0

network 192.168.150.0

broadcast 192.168.150.255

gateway 192.168.150.1

Da das System nun keine DNS-Server mehr automatisch erhält, können Sie feste in der Datei /etc/resolv.conf hinterlegen.

nameserver <IP-Adresse des DNS-Server>

nameserver <IP-Adresse des zweiten DNS-Server>

Da Sie den DHCP-Client nun nicht mehr brauchen, sollte dieser aus dem System entfernt werden:

sudo apt-get remove dhcp3-client

Um die Änderungen wirksam zu machen, könnten Sie das System neu booten, oder einfach den Netzwerk-Dienst neu starten:

sudo /etc/init.d/networking restart

Ubuntu-Administration via Webmin

Wer es sich die Administration etwas angenehmer machen möchte, kann Webmin einsetzen und damit seinen Server bequem via Browser administrieren. Da sich die Software nicht in den Repositories befindet, müssen Sie diese vom Hersteller direkt beziehen. Sollte der Server eine Verbindung zum Internet haben, können Sie dies via Konsole erledigen:

wget -c http://www.webmin.com/download/deb/webmin-current.deb

Anschließend lässt sich Webmin wie folgt einspielen:

sudo apt-get install libnet-ssleay-perl libauthen-pam-perl libio-pty-perl apt-show-versions libapt-pkg-perl

sudo dpkg -i webmin-current.deb

Mit einem Browser können Sie den Server nun mittels https://<IP-Adresse-Server>:10000 erreichen. Benutzername und Passwort sind gleich mit der während der Installation vergebenen Daten.

Verwaltung per Browser: Webmin vereinfacht die Administration.

So ein Webmin ist ja großartig, warum ist das nicht per Standard enthalten? Eine berechtigte Frage. Natürlich erleichtert diese Software die Administration ungemein. Auf der anderen Seite bringt jedes zusätzlich eingespieltes Programm potentielle Angriffsflächen mit sich. Das gilt übrigens auch für laufende Dienste, die nicht gebraucht werden. Eine der gängigsten Sicherheits-Philosophien lautet: Auf einem produktiven Server sollten nur Software und Dienste laufen, die sich tatsächlich auch im Einsatz befinden.

Linux Kernel bringt mehr Sicherheit

Ubuntu 10.10 Maverick Meerkat bringt den Linux-Kernel 2.6.35 mit sich. Wegen der wachsenden Popularität von Linux, könnte das Open-Source-Betriebssystem in der Zukunft auch ein Angriffsziel werden. Aus diesem Grund versuchen die Kernel-Entwickler die Schutzmaßnahmen auszubauen. In Maverick sind daher drei nennenswerte Änderungen vorhanden, die das Herzstück abhärten.

1. ptrace-Schutz

Eine störende Schwäche der Linux-Prozess-Schnittstelle ist, dass ein einzelner Anwender den Speicher und die Stati der Prozesse untersuchen kann. Würde ein Angreifer zum Beispiel Firefox kompromittieren, könnte er dadurch weitere Daten von laufenden Prozessen, wie etw gpg-agent, auslesen. Somit ließe sich der Bereich des Angriffs ausweiten.

Laut Ubuntu ist dies kein theoretisches Problem. SSH-Session-Hijacking und sogar Einspeisung beliebigen Codes seien komplett möglich, wenn ptrace im Normalstatus läuft. Aus diesem Grund verwenden einige Applikationen prctl(), um ptrace-Anhänge explizit zu verbieten. Ein generellerer Lösungsansatz ist, ptrace nur direkt vom Eltern-Prozess zu den Kind-Prozessen zu erlauben.

Das Verhalten kontrolliert der sysctl-Werin /proc/sys/kernel/yama/ptrace_scope. Der Standard ist 1, um Nicht-Kind-Prozesse zu blockieren. Setzt man diesen Wert auf 0 zurück, erlaubt das System wieder mehr. Auf einigen Entwicklungs-Rechnern oder Computern mit lediglich einem Administrator-Konto könnte diese Einstellung die zu bevorzugende sein.

2. Symlink-Schutz

Seit geraumer Zeit ist die TocToU-Rally ein Sicherheits-Problem. Meistens steht es im Zusammenhang mit Verzeichnissen mit Allerwelts-Rechten, wie zum Beispiel /tmp/. Diese Schwachstelle wird normalerweise so ausgenutzt, dass Angreifer die Rechte-Grenzen überschreiten können, indem sie einem symbolischen Link folgen.

Die Lösung hier ist, dass man in Verzeichnissen, die dem ganzen System zur Verfügung stehen, das Folgen von Symlinks nur dann erlaubt, wenn der Anwender übereinstimmt. Einige Gegner argumentieren, dass dies POSIX verletze. Die Ubuntu-Entwickler sind aber der Meinung, dass man bei POSIX nicht über diese Sicherheitslücke nachgedacht habe. Diese Spezifikation auf Kosten der Sicherheit einzuhalten sei nicht tragbar. Ebenso gelten die Argumente "Es könne unbekannte Anwendungen nicht lauffähig halten, die diese Funktion benutzen" und "Applikationen sollten einfach mkstemp() oder 0_CREATE|0_EXCL benutzen" im Ubuntu-Universum nicht mehr. Ersteres könnten die Software-Entwickler einfach sichten und ausbügeln. Zweiteres sei nicht narrensicher. Software sei nicht perfekt und Fehler würden immer gemacht.

3. Hardlink-Schutz

So genannte Hardlinks ließen sich in ähnlicher Weise für Angriffe ausnutzen, wie das bei den eben genannten symbolischen Links der Fall ist. Allerdings ist das Verhalten hier nicht nur auf Verzeichnisse mit Allerwelts-Rechten beschränkt. Sollten sich zum Beispiel /etc/ und /home/ auf derselben Partition befinden, könnte jeder Anwender einfach einen Hardlink zu /etc/shadow in seinem Home-Verzeichnis erzeugen. Die Datei behält zwar die Original-Rechte, aber Programme mit höheren Privilegien, die normalerweise Symlink-sicher sind, könnten diese Datei durch den Hardlink auslesen. Zusätzlich könnten Bösewichte einen Denial-of-Service-Angriff (DoS) starten, indem sie Verzeichnisse mit Schreibrechten für alle mit Hardlinks fluten und somit den gesamten Plattenplatz in Anspruch nehmen.

Der Ubuntu-Lösungsansatz hier ist, dass Anwender keine Hardlinks zu Dateien erzeugen können, für die sie keine Schreibrechte haben. Auch hier gibt es ähnliche Gegenargumente, wie das bei den Symlinks der Fall ist.

Fazit

Ubuntu 10.10 Server Maverick Meerkat strahlt die solide Souveränität der Vorgängerversionen aus und kommt fast ohne überflüssigen Schnickschnack. Allerdings dürften die Kommandozeilen-Sitzungen nicht jeden Anwender ansprechen.

Das Server-Betriebssystem bringt einige Neuerungen mit sich. Wie anfangs erwähnt handelt es sich bei Maverick Meerkat aber nicht um eine LTS-Ausgabe (Long Term Support). Sollten Sie planen, einen neuen, produktiven Ubuntu-basierten Server aufzusetzen, ist dieser Umstand nicht zu unterschätzen. Überlegen Sie sich daher gut, ob Sie die neuen Funktionen wirklich brauchen und auf die Langzeitunterstützung verzichten können. Die Vorgängerversion 10.04 Lucid Lynx wird in der Server-Ausgabe immerhin weitere 4,5 Jahre mit Sicherheits-Updates und Software-Aktualisierungen versorgt. Bei Maverick ist diese Periode auf 18 Monate beschränkt.

Auf Amazons EC2 gibt es eine gratis Testversion.

Wer ein Server-Testsystem benötigt und vielleicht mit dem neuen Dateisystem btrfs experimentieren möchte, hat mit Maverick Meerkat eine weitere Spielwiese im Linux-Sektor zur Verfügung. Ebenso macht Ubuntu pro Ausgabe das Aufsetzen von privaten Cloud-Systemen einfacher. Wer im Cloud-Bereich testen möchte, ist mit Maverick sicher nicht schlecht beraten.

Herunterladen können Sie Ubuntu 10.10 Maverick Meerkat im Download-Bereich von Ubuntu. Wie üblich gibt es das Betriebssystem für 32- und 64-Bit-x86-Architekturen. Die Server-Version von Ubuntu 10.10 Maverick Meerkat können Sie übrigens eine Stunde lang kostenlos auf Amazons EC2 ausprobieren. Die offizielle Ankündigung von Canonical finden Sie hier. Interessierte können auch einen Blick in die allgemeinen Release-Notizen zu Maverick Meerkat werfen.

Dieser Artikel basiert auf einem Beitrag unserer Schwesterpublikation Computerwoche. (cvi)