25.02.2014 Aufrufe

ADMIN Magazin Enterprise-Linux (Vorschau)

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

NEU!<br />

Jetzt mit<br />

<strong>ADMIN</strong><br />

Netzwerk & Security<br />

<strong>Enterprise</strong>-<br />

<strong>Linux</strong><br />

Vergleich der Marktführer<br />

Ubuntu-Firmen-Desktop<br />

Red Hat zentral verwaltet<br />

IPv6-Tunnel<br />

Alle Techniken erklärt<br />

SQL-Injection<br />

Gefährliche Lücken enttarnen<br />

Windows 2012<br />

Die besten Tricks für jeden<br />

Server-Admin<br />

Prey: Gestohlene Handys<br />

und Laptops orten<br />

Proxmox: Ein freier<br />

VMware-Konkurrent<br />

01 2013<br />

Jan. – Feb.<br />

Auf Heft-CD:<br />

FOSS-Cloud 1.0.2<br />

FreeX ‘12 komplett<br />

Python<br />

Webapps mit Flask<br />

Open Stack<br />

Konfigurieren Step by Step<br />

www.admin-magazin.de<br />

D EUR 9,80<br />

A EUR 10,80 - BeNeLux EUR 11,25<br />

CH sfr 19,60 - E / I EUR 12,75<br />

4 196360 509805 01


Born to<br />

be ROOT!<br />

HOSTED<br />

IN GERMANY<br />

Root Server <strong>Linux</strong> Level 1<br />

29 ,00<br />

€/<br />

€/Mon.*<br />

CPU<br />

Intel Sandy Bridge G530<br />

Leistung<br />

2 x 2,4 GHz<br />

RAM<br />

4 GB<br />

HD<br />

1.000 GB<br />

Traffic<br />

Unlimited*<br />

EFFIZIENTER SPRINTER ZUM MINIPREIS<br />

Beschleunigen eun n Sie<br />

Ihre Projekte mit einem em<br />

zierten Root ot Server<br />

von STRATO. TO.<br />

Mit<br />

eigener Hard-<br />

ware steht Ihnen n<br />

immer m<br />

die volle Leistung von<br />

RAM, CPU, Festplatte e und<br />

Traffic zur Verfügung.<br />

STRATO TO<br />

setzt auf Qualität und arbeitet et ausschließlich h mit führen-<br />

den internationalen na alen<br />

Hardware-Herstellern re<br />

er ellern zusammen. men. Jedes Bau-<br />

teil ist<br />

optimal für den Einsatz im dedizierten Server abgestimmt.<br />

mt.<br />

Das<br />

sorgt für<br />

höchste Zuverlässigkeit und<br />

Ausfall llsich<br />

sicherheit.<br />

eit<br />

Zu-<br />

sammen me<br />

mit dem Minipreis is sind STRATO Root Server unschlagbar.<br />

dedidi-<br />

* Traffic-Unlimited: Keine zusätzlichen Kosten durch Traffic (bei Traffic-Verbrauch über 1.000 GB/ Monat<br />

und danach je weitere 300 GB erfolgt eine Umstellung der Anbindung auf max. 10 MBit/s. Erneute<br />

Freischaltung der vollen Bandbreite jeweils kostenlos über den Kundenservicebereich). Preis inkl. MwSt.<br />

Info: 030 – 300 146 111 | strato-pro.de


Backflip<br />

Editorial<br />

Backflip<br />

Kleine Städte können es. Schwäbisch Hall zum Beispiel, wo man schon 1997 bei Internetdiensten<br />

auf <strong>Linux</strong> setzte und heute in der Verwaltung flächendeckend unter<br />

dem freien Betriebssystem arbeitet. Größere Städte können es. Etwa Leipzig, wo<br />

man allein im Verlauf des letzten Jahres 3900 von 4200 PC-Arbeitsplätzen auf<br />

Open Office migrieren konnte. Ziemlich große Städte können es. Beispiel München,<br />

das mit der Umstellung von über 11 000 Arbeitsplätzen auf <strong>Linux</strong> 10 Millionen Euro<br />

sparte. Ganze Länder können es. Portugal ist ein Exempel: Dort stellt man die gesamte<br />

öffentliche Verwaltung auf das Open-Document-Format um.<br />

Freiburg konnte es nicht. Nachdem man sich dort 2007 zur Umstelllung auf Open<br />

Office entschlossen hatte, migriert man jetzt zurück zu Microsoft Office, weil man<br />

ansonsten angeblich auf Funktionen verzichten müsste, nur noch ineffektiv arbeiten könne, Software ohne Zukunft<br />

nutzen würde und keine Akzeptanz bei den Anwendern fände. Jedenfalls sagt das ein Gutachter, der zufällig<br />

Aufsichtsrat eines Microsoft-Gold-Partners, dafür aber verständlicherweise in Sachen freier Software nicht ganz<br />

so firm ist. Open-Source-Experten reiben sich bei der Lektüre zahlreicher fragwürdiger Behauptungen jedenfalls<br />

die Augen.<br />

Freiburg nimmt also Anlauf zu einem kostspieligen Rückwärtssalto. Aber woran lag es? Am freien Officepaket<br />

jedenfalls sicherlich nicht. Das ist inzwischen ausgereifte und stabile Software, die auch beim Funktionsumfang<br />

keinen Vergleich zu scheuen braucht. Aber das reicht eben nicht. Ein Migrationsprojekt ist kein Selbstläufer. Es<br />

braucht sorgfältige Planung und konsequente Umsetzung. Beides gab es in Freiburg nicht, wo man stattdessen<br />

einen fatalen Mischbetrieb aus veralteten Microsoft- und nicht aktuellen Open-Office-Versionen zuließ.<br />

Doch selbst ein wohl durchdachtes und konsequent verwirklichtes Vorhaben wird misslingen, wenn man, wie in<br />

Freiburg, die Anwender nicht mit ins Boot bekommt. Man weiß seit Langem, dass psychologische Faktoren der<br />

Hauptgrund für das Scheitern solcher Projekte sind: latente Widerstände, der Unwille angesichts von Veränderungen,<br />

das Festhalten am Altbekannten.<br />

Wie man trotzdem erfolgreich Neues implementieren kann, ist auch kein Geheimnis, eine ganze Disziplin, das sogenannte<br />

Change Management, beschäftigt sich damit. Es gilt die Betroffenen früh einzubeziehen, sie davon zu<br />

überzeugen, dass sie persönliche Vorteile haben, ihre Sorgen ernst zu nehmen, sie immer auf dem Laufenden<br />

zu halten und noch fehlende Fertigkeiten zu trainieren. Dann identifizieren sich die Mitarbeiter mit einem tollen<br />

Projekt wie der Office-Migration, das ihnen Unabhängigkeit zurückgibt, das zukunftsweisend ist und dabei Kosten<br />

spart. Dann laden sie nicht diffusen IT-Frust bei den Neuerungen ab, dann gehen sie nicht einem zweifelhaften<br />

Gutachter auf den Leim, sondern sind stolz, ein Vorreiter zu sein.<br />

@ leserbriefe@admin-magazin.de<br />

www.facebook.com/adminmagazin www.twitter.com/admagz<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

3


Service<br />

Inhalt<br />

<strong>ADMIN</strong><br />

Netzwerk & Security<br />

01/2013<br />

In diesem Heft-Schwerpunkt:<br />

<strong>Linux</strong>-Distributionen mit professionellem<br />

Support für den Firmeineinsatz (ab S. 36)<br />

halten<br />

Was leisten Red Hat,<br />

36Kurs<br />

Suse, Oracle und Co.?<br />

Wir geben einen Überblick.<br />

Login<br />

8 Vorgelesen<br />

Bücher über <strong>Linux</strong>-Cluster und die<br />

Virtualisierung mit KVM.<br />

10 Branchen-News<br />

Neues von Firmen und Projekten.<br />

16 Recht<br />

Verarbeitet ein Dienstleister personenbezogene<br />

Daten gelten strenge Regeln.<br />

Netzwerk<br />

24 Nagios und VoIP<br />

Nagios lernt anzurufen und so seinen<br />

Admin sicher zu alarmieren.<br />

28 Rausgegraben<br />

Für den Übergang: IPv6-Tunneltechnologien<br />

im Vergleich.<br />

Schwerpunkt: <strong>Enterprise</strong>-<strong>Linux</strong><br />

36 Kurs halten<br />

Die kommerziellen <strong>Linux</strong>-Distributionen<br />

versprechen langfristige Stabilität und<br />

professionellen Support.<br />

46 Neu gemischt<br />

Eine Ubuntu-Variante fürs Büro: der<br />

Ubuntu Business Desktop Remix.<br />

48 Paketversand<br />

<strong>Enterprise</strong> Software Management mit<br />

dem Red Hat Satellite Server. Ganze<br />

Netze automatisch patchen.<br />

20 Admin-Story<br />

Instant-Webanwendungen mit MongoDB<br />

und Bottle.<br />

Service<br />

3 Editorial<br />

4 Inhalt<br />

6 Heft-CD<br />

130 Impressum und <strong>Vorschau</strong><br />

4 Ausgabe 01-2013 Admin www.admin-magazin.de


98<br />

Gift für alle Fälle<br />

SQL-Injection-<br />

Lücken erklärt und<br />

automatisiert aufgespürt.<br />

Inhalt<br />

Service<br />

<strong>Linux</strong>-Virtualisierung<br />

66Proxmox<br />

auf Debian-Basis mit<br />

Support für KVM und OpenVZ.<br />

Gewand<br />

Neuheiten bei der<br />

82Neues<br />

Windows-Nachrichtenzentrale<br />

Exchange 2013.<br />

Know-how<br />

56 Schatztruhe<br />

Einfacher verwaltet:<br />

zwölf praktische<br />

Tipps für den<br />

Windows Server<br />

2012.<br />

62 Schwere Beute<br />

Prey lokalisiert gestohlene Laptops und<br />

Mobiltelefone.<br />

Virtualisierung<br />

66 Proxmox<br />

Die freie <strong>Linux</strong>-Virtualisierungsplattform<br />

für KVM und OpenVZ.<br />

72 Einrichtungsberater<br />

Open-Stack-Workshop, Teil 2: Schritt für<br />

Schritt zur Cloud-Installation.<br />

Test<br />

82 Neues Gewand<br />

Was ist neu im Exchange Server 2013,<br />

lohnt sich ein Update?<br />

88 Schön schlank<br />

Stromsparend<br />

und leise , aber<br />

auch leistungsfähig?<br />

Der Krenn<br />

Low Energy Server<br />

im Test.<br />

Security<br />

90 Uneinsichtig<br />

SHA-3, der neue Hash-Standard — notwendige<br />

oder überflüssige Sicherheit?<br />

94 Leider geöffnet<br />

Automatisierte Portscans finden<br />

Schwachstellen in großen Computernetzen.<br />

98 Gift für alle Fälle<br />

Wie SQL-Injection-Lücken funktionieren<br />

und man sie automatisiert aufspürt.<br />

Programmieren<br />

102 Edler Tropfen<br />

Die Alternative<br />

zum Django-<br />

Framework:<br />

Webanwendungen<br />

mit Flask.<br />

106 Patchwork<br />

Effiziente Server-<br />

Fernsteuerung<br />

mit Python-<br />

Skripts.<br />

freeX<br />

109 freeX<br />

Artikel und Workshops aus der freeX.<br />

110 Sicher hinter Gittern<br />

Wie Jails in FreeBSD einzelne Prozesse<br />

sicher voreinander isolieren.<br />

120 Neubau<br />

Das neue Paketmanagement in FreeBSD.<br />

124 Hochzeit<br />

FreeBSD und KVM-Virtualisierung.<br />

Mehr Infos auf Seite 6<br />

FOSS-Cloud<br />

n Cloud und Virtualisierung mit freier Software<br />

n Kompletter Jahrgang 2012 der FreeX im PDF-Format<br />

www.admin-magazin.de Admin Ausgabe 01-2013 5


SErvice<br />

Heft-CD<br />

Heft-CD<br />

Auf dem beiliegenden Datenträger finden Sie die aktuelle<br />

Version der FOSS-Cloud-Distribution [1], eine Umgebung für<br />

den Betrieb virtueller Maschinen.<br />

◗ Cloud und Virtualisierung für <strong>Linux</strong> und Windows.<br />

◗ Server- und Desktop-Virtualisierung.<br />

◗ Support für Audio, Video, USB und Smartcards.<br />

◗ Basiert auf freier und Open-Source-Software (FOSS).<br />

◗ Erfordert zur Installation eine komplette Festplatte (Partition<br />

genügt nicht).<br />

Mehr Informationen geben zwei Artikel in der FreeX<br />

05/2012, die Sie auf der CD im Verzeichnis "admin-freex"<br />

finden.<br />

Legen Sie einfach die CD in das Laufwerk ein, und starten<br />

Sie den Rechner. Möglicherweise müssen Sie noch im<br />

BIOS die richtige Boot-Reihenfolge einstellen, damit das<br />

Laufwerk vor der Festplatte an die Reihe kommt. n<br />

CD kaputt?<br />

Wir schicken Ihnen kostenlos eine<br />

Ersatz-CD zu, E-Mail genügt:<br />

info@admin-magazin.de<br />

Info<br />

[1] FOSS Cloud: [http://www.foss-cloud.org/de]<br />

6 Ausgabe 01-2013<br />

Admin www.admin-magazin.de


vServer Cloud 2.0<br />

Voller Root- und Administrator-Zugriff<br />

• Cloud-Funktion mit höchster Flexibilität<br />

• Kostenkontrolle durch tagesgenaue Abrechnung<br />

• Garantiert in 12 Stunden verfügbar<br />

• Jetzt ab sofort mit PrePaid-Funktion<br />

50% Rabatt<br />

in den ersten 3 Monaten<br />

vServer S 2.0<br />

vServer M 2.0<br />

vServer L 2.0<br />

vServer XL 2.0<br />

Core`s (jeweils 2.000 MHz) 1<br />

2<br />

3<br />

4<br />

RAM 1.024 MB 2.048 MB 4.096 MB 8.192 MB<br />

RAM Dynamisch 2.048 MB 4.096 MB 8.192 MB 16.384 MB<br />

Festplatte NEU 100 GB NEU 150 GB<br />

NEU 200 GB NEU 300 GB<br />

Traffic<br />

Betriebssysteme<br />

100 Mbit Full-Flatrate<br />

<strong>Linux</strong> (Debian 6.0.6, CentOS 6.3, openSUSE 12.2 & Ubuntu 12.04) oder ohne Aufpreis Windows 2008 R2 Standard-Edition<br />

.de Domain inklusive<br />

IPv4 Adressen inkl.<br />

IPv6 Subnetz (/64) Inkl.<br />

1<br />

1<br />

2<br />

2<br />

3<br />

3<br />

4<br />

4<br />

Extras<br />

Firewall, Reboot, Recovery, Monitoring, Reverse DNS<br />

Monatsgrundgebühr<br />

Preis für die ersten 3 Monate<br />

4,49€<br />

8,99 € 18,99 € 38,99 € 38,99 €<br />

9,99€ 14,99€ 19,99€<br />

Jetzt informieren und bestellen Tel.: 0211 / 545 957 - 330 www.webtropia.com<br />

PLATINUM PARTNER


Login<br />

Bücher<br />

Bücher über HA-Cluster und KVM<br />

Vorgelesen<br />

Der technische Fortschritt in der <strong>Linux</strong>-Welt hat einem Cluster-Buch zu<br />

einer modernisierten dritten Auflage verholfen. Ein weiteres Werk widmet<br />

sich dem Aufsteiger KVM. Jens-Christoph Brendel, Udo Seidel<br />

KVM ist der Shooting Star der Virtualisierungstechniken<br />

unter <strong>Linux</strong> und hat<br />

in den letzten Jahren Xen und andere<br />

Hypervisors mit Blick auf die Popularität<br />

klar abgehängt. Entsprechendes Publikumsinteresse<br />

kann man sicher für den<br />

Titel „KVM für die Server-Virtualisierung“<br />

voraussetzen, den zwei namhafte<br />

<strong>Linux</strong>-Publizisten, Michael Kofler und<br />

Ralf Spenneberg, nun vorlegen.<br />

KVM en Detail<br />

Im Untertitel konnten die Autoren das offenbar<br />

obligatorische Schlagwort „Cloud“<br />

nicht vermeiden, was im Buch dann aber<br />

auf den drei Seiten eines Alibi-Abschnitts<br />

dazu folgt, hätte man ebensogut weglassen<br />

können. Für den eigentlichen Gegenstand,<br />

KVM, gilt jedoch im Gegenteil,<br />

dass er in vielen Facetten, tiefgründig<br />

und dabei auch gut verständlich vorgestellt<br />

wird.<br />

Verdienstvollerweise geht es nicht nur<br />

um die Virt-Manager-GUI, stattdessen ist<br />

der Administration auf der Kommandozeile<br />

ein ganzes Kapitel gewidmet, das<br />

alle KVM- oder Libvirt-Kommandos eingehend<br />

bespricht. Weitere Kapitel wenden<br />

sich dann den Ressourcen virtueller<br />

Maschinen zu, wie virtuellen Datenträgern,<br />

Grafik, CPU, Hauptspeicher, an-<br />

deren Komponenten wie USB oder dem<br />

Netzwerk. Ein eigenes Kapitel beleuchtet<br />

den wichtigen Aspekt Sicherheit.<br />

Besondere Vorkenntnisse sind kaum nötig.<br />

An manchen Stellen gehen die Kompromisse<br />

mit Blick auf gute Verständlichkeit<br />

vielleicht ein bisschen weit. „Eine<br />

Bridge ist ein Switch“ (S.150) stimmt<br />

zum Beipsiel eher umgekehrt. Davon<br />

aber abgesehen, beleuchtet gerade das<br />

Netzwerkkapitel auch fortgeschrittene<br />

Techniken wie Passtrough, Bandbreitenregulierung<br />

oder Firewalling.<br />

Alles in allem ist das Buch zu KVM eine<br />

gelungene Einführung in ein aktuelles<br />

Thema, das man Einsteigern empfehlen<br />

kann, das aber auch dem erfahrenen Admin<br />

noch den einen oder anderen Tipp<br />

zu vermitteln vermag.<br />

Immer bereit<br />

Hochverfügbarkeit mit <strong>Linux</strong> hat eine<br />

wechselhafte Geschichte. Seit Pacemaker<br />

und Co. befindet sich das HA-Schiff<br />

aber in ruhigeren Gewässern. In der 3.<br />

Auflage seines Clusterbau-Buches zeigt<br />

Michael Schwartzkopff, wie Hochverfügbarkeit<br />

mit dem freien Betriebssystem<br />

funktioniert.<br />

Die rasche und teilweise turbulente Entwicklung<br />

des ursprünglichen Heartbeat-<br />

Projektes macht die Aktualisierung eines<br />

solchen Bands unumgänglich. Auch die<br />

generelle Technik in der IT entwickelt<br />

sich weiter: Cluster-Interconnects über<br />

serielle Schnittstellen sind schon lange<br />

nicht mehr zeitgemäß und finden daher<br />

auch hier keine Beachtung mehr.<br />

Die Anforderung „Das System muss immer<br />

verfügbar sein“ ist einfach formuliert<br />

– die entsprechende Umsetzung muss<br />

einige Hürden überwinden. Michael<br />

Schwartzkopff führt sehr schön in das<br />

Thema Hochverfügbarkeit ein. Zunächst<br />

erklärt er Begriffe wie „immer“ oder<br />

„Dienst“.<br />

Im nächsten Kapitel folgt ein historischer<br />

Abriss über das bekannte <strong>Linux</strong>-Projekt<br />

Heartbeat. Die saubere Erklärung der<br />

Komponenten und der verwendeten Terminologie<br />

ist dabei besonders hervorzuheben.<br />

Seit den Heartbeat-Versionen 1<br />

und 2 hat sich viel verändert – der Autor<br />

stellt die einzelnen Komponenten wie<br />

Pacemaker oder Open AIS vor und erläutert<br />

deren Aufgaben. So stellt er sicher,<br />

dass Leser mit egal welchem Ausgangsniveau<br />

genau wissen, worüber er gerade<br />

schreibt.<br />

Auf circa 400 Seiten behandelt der Text<br />

die Installation, erste Konfigurationen,<br />

die Verwaltung per Kommandozeile oder<br />

GUI und zeigt Beispielszenarien. Kapitel<br />

über den Betrieb und detaillierte Informationen<br />

über Cluster-Agenten runden<br />

das Buch ab. Neu ist das Kapitel zur<br />

geeigneten Infrastruktur, welches das HA-<br />

Konzept über die Server-Grenzen hinaus<br />

erweitert.<br />

Für rund 45 Euro erhält man eine umfassende<br />

Dokumentation zum Thema<br />

Hochverfügbarkeit mit <strong>Linux</strong>. Wer die<br />

erste Auflage von 2008 besitzt, sollt diese<br />

nun beiseite legen und das aktuelle Buch<br />

kaufen.<br />

n<br />

KVM<br />

Michael Kofler, Ralf Spenneberg<br />

KVM für die Server-Virtualisierung<br />

Addison-Wesley, 2012<br />

341 Seiten<br />

41 Euro<br />

ISBN 978-3-8273-3149-6<br />

Clusterbau<br />

Michael Schwartzkopff<br />

Clusterbau: Hochverfügbarkeit mit<br />

<strong>Linux</strong><br />

O’Reilly, 3. Auflage 2012<br />

420 Seiten<br />

45 Euro<br />

ISBN 978-3-86899-358-5<br />

8 Ausgabe 01-2013 Admin www.admin-magazin.de


Ein vollwertiger Server,<br />

im Taschenbuchformat!<br />

Green-IT<br />

Stromverbrauch: ca. 6 - 9 Watt<br />

Unauffällig<br />

Klein und absolut geräuschlos<br />

Kein PC<br />

Echte Serverkomponenten 24/7 zertifiziert<br />

Low Energy Server<br />

Bestens geeignet für Anwendungs- und<br />

Softwareentwickler - ebenso als Firewalllösung oder<br />

Router und aufgrund der geringen Größe für den<br />

mobilen Einsatz. Dank des sparsamen Verbrauchs<br />

ist der LES ebenfalls als kleiner Webserver praktisch.<br />

Sparen Sie im Jahr über 100 Euro an<br />

Stromkosten gegenüber einem vergleichbaren<br />

Server auf Atombasis.<br />

Nur bei Thomas<br />

Krenn ab:<br />

€<br />

499,–<br />

www.thomas-krenn.com/les_499<br />

TRY<br />

&<br />

BUY<br />

Diesen und andere Thomas Krenn Server<br />

können Sie auch per Try & Buy testen<br />

DE: +49 (0) 8551 9150 - 0<br />

CH: +41 (0) 848207970<br />

AT: +43 (0)732 - 2363 - 0<br />

Verkauf erfolgt ausschließlich an Gewerbetreibende, Firmen, Freiberufler (Ärzte, Rechtsanwälte etc.), staatliche Institutionen und Behörden. Druckfehler, Irrtümer und Änderungen in Preis und Ausstattung<br />

vorbehalten. Unsere Versandkosten richten sich nach Gewicht und Versandart - mehr unter: www.thomas-krenn.com/versandkosten.Thomas-Krenn.AG, Speltenbach-Steinäcker 1, D-94078 Freyung


Login<br />

News<br />

+++ neueste Nachrichten immer auf http://www.admin-magazin.de +++++ neueste Nachrichte<br />

Neue Software und Produkte<br />

Branchen-News<br />

Freiburg verabschiedet sich von Open Office<br />

Der Freiburger Gemeinderat hat mit<br />

knapper Mehrheit dafür votiert, in der<br />

Stadtverwaltung kein Open Office mehr<br />

einzusetzen. Stattdessen soll Microsoft<br />

Office künftig als Bürosuite dienen. Damit<br />

folgten Stimmberechtigten der Empfehlung<br />

eines Gutachtens,<br />

das im Jahr 2011<br />

die städtische IT untersucht<br />

hatte.<br />

Dieses Gutachten hatten<br />

vier Verbände im Vorfeld<br />

der Entscheidung<br />

kritisiert: Open Source<br />

Business Alliance, Free<br />

Software Foundation<br />

Europe (FSFE), der Bundesverband<br />

Informations-<br />

und Kommunikationstechnologie<br />

sowie<br />

Der Gemeinderat Timothy Simms<br />

findet, bei der Migration habe die<br />

Verwaltung vieles falsch gemacht.<br />

die Document Foundation (TDF). Das<br />

vierseitige Schreiben bemängelt Fehleinschätzungen<br />

bezüglich der Situation auf<br />

dem Markt der freien Office-Varianten.<br />

Daneben sieht es Auslassungen bei den<br />

Handlungsalternativen, die einen reinen<br />

Einsatz von freier Office-<br />

Software gar nicht mehr<br />

in Betracht ziehen, sondern<br />

als gescheitert ablehnen.<br />

Die Freiburger ziehen<br />

in der Mehrheit ein<br />

negatives Resümee<br />

der versuchten Open-<br />

Office-Einführung.<br />

„Eine 3000-Personen-<br />

Verwaltung kann nicht<br />

dauerhaft im Trial-anderror-Modus<br />

laufen“,<br />

zitiert das Presseamt den SPD-Stadtrat<br />

Kai-Achim Klare. Gegen den Open-Office-<br />

Ausstieg stimmte beispielsweise Timothy<br />

Simms, stellvertretender Vorsitzender<br />

der Stadtratsfraktion Junges Freiburg/​Die<br />

Grünen. Im Gespräch mit dem <strong>Linux</strong>-<br />

<strong>Magazin</strong> sagte er: „Freiburg – das war<br />

uns vorher gar nicht so bewusst – hat nie<br />

richtig zu Open Office gewechselt, vielmehr<br />

wurde in der Regel parallel mit dem<br />

veralteten MS Office 2000 gearbeitet. Dazu<br />

kam eine allgemeine Unzufriedenheit<br />

seitens der Fachverwaltungen gegenüber<br />

der IT. Dann ist Open Office ein Stück<br />

weit zu einem Symbol geworden für alles,<br />

was zwischen IT und Verwaltung nicht<br />

funktionierte.“ Die Stadt im Breisgau ist<br />

seiner Meinung nach ein Beispiel dafür,<br />

„wie man eine Migration besser nicht<br />

angeht“.<br />

Samba 4 ist da<br />

Das Samba-Team hat nach langen Jahren der Entwicklungszeit<br />

die vierte Version des SMB-Servers veröffentlicht. Der kann<br />

jetzt auch Active-Directory-Server spielen und bringt auch sonst<br />

einige lang erwartete Neuerungen.<br />

Hersteller wie Univention hatten Backports auf Samba 4 mithilfe<br />

eigener Addons schon länger im Programm (das <strong>Linux</strong>-<strong>Magazin</strong><br />

berichtete ), doch die Samba-Entwickler selbst traten lange auf<br />

die Bremse und wollten offenbar nicht zu früh veröffentlichen<br />

und so eventuell zahlreiche Windows-Client-User vergrätzen.<br />

Jetzt ist die Samba-Server-Suite veröffentlicht, Version 4 steht<br />

zum Download bereit.<br />

Die wichtigsten Änderungen stellen nach der langen Entwicklungszeit<br />

dann auch keine wirklichen Neuheiten mehr dar.<br />

Erwartungsgemäß kann Samba 4 jetzt einen Active-Directory-<br />

Server vollständig ersetzen (AD 2000 und später): Das Domänenlogon<br />

für Clients mit Kerberos und LDAP über CIFS<br />

funktioniere jetzt sauber, schreiben die Entwickler in ihrem<br />

Announcement.<br />

Dazu kommen mit NTVF ein neuer Fileserver, zwei DNS-<br />

Varianten, NTP-Integration und ein Python Scripting Interface.<br />

Einige Probleme gäbe es zwar noch, zum Beispiel bei der Replikation<br />

auf BSD-Hosts, doch die Workarounds kämen in den<br />

nächsten Versionen.<br />

GUUG-Frühjahrsfachgespräch 2013<br />

Das Programm des Frühjahrsfachgesprächs der German Unix<br />

User Group (GUUG), das vom 26. Februar bis 1. März an der<br />

Fachhochschule Frankfurt am Main stattfindet, steht jetzt fest.<br />

Wegen der Vielzahl an Einsendungen stockte das Programmkomitee<br />

dieses Jahr den ersten Konferenztag mit einem dritten<br />

Track auf. Insgesamt 37 Vorträge mit den Schwerpunkten Netzwerk-<br />

und IT-Sicherheit, Dateiverwaltung, Ressourcen-Management,<br />

Softwareverteilung oder Virtualisierung warten nun auf<br />

die 200 Teilnehmer.<br />

Eine große Rolle nimmt IPv6 ein: Sicherheitsexperte Christoph<br />

Wegener ist nicht nur am zweitägigen Tutorium zum IPv6-<br />

Monitoring beteiligt, sondern widmet sich gemeinsam mit dem<br />

IT-Anwalt Jörg Heidrich den datenschutzrechtlichen Fragen des<br />

Internetprotokolls. Der IT-Berater Marc Haber deckt in einem<br />

Vortrag die „Marketinglügen“ über IPv6 auf.<br />

Daniel Kobras und Michael Weiser führen den FFG-Dauerbrenner<br />

schlechthin fort: Auch 2012 geben sie ein zweitägiges Tutorium<br />

zur Sicherheit plattformübergreifender Dateidienste. Kobras<br />

ergänzt das Thema durch einen weiteren Vortrag zum Lustre/​<br />

ZFS-Projekt, einer Initiative, die die Vorteile von verteilten und<br />

lokalen Dateisystemen vereinen soll. Entscheidungshilfen dazu<br />

gibt es bei Lenz Grimmer und Ulrich Gräf, die ZFS mit dem<br />

<strong>Linux</strong>-Dateisystem Btrfs vergleichen.<br />

10 Ausgabe 01-2013 Admin www.admin-magazin.de


n immer auf http://www.admin-magazin.de<br />

Inktank und Suse bieten Support für Ceph<br />

In einer Pressemitteilung haben Suse und der kalifornische<br />

Storage-Spezialist Inktank angekündigt, künftig gemeinsam<br />

Support für Anwender des verteilten Speichersystems Ceph<br />

anzubieten. Zumindest in der Suse Cloud soll es demnächst<br />

<strong>Enterprise</strong>-Support auch für das Filesystem geben. Das Netzwerkdateisystem<br />

arbeitet mit Open Stack zusammen, von beidem<br />

macht Suses Wolke ausgiebig Gebrauch. Inktank [http://​<br />

​www.​inktank.​com] ist nach eigener Aussage der erste Anbieter, der<br />

Unternehmenssupport für Ceph anbietet.<br />

Suses Cloud gewinnt damit einen weiteren wichtigen Partner,<br />

nachdem die Nürnberger erst vor wenigen Monaten Dells<br />

Deploymenttool Crowbar integriert hatten.<br />

TM<br />

MobyDick<br />

D i e Z u k u n f t der Telefonie<br />

Mit der MobyDick Telefonanlage haben Sie alle Fäden selbst in<br />

der Hand. Außerdem verbinden Sie die Features modernster<br />

Telefonie mit den Vorteilen von Voice over IP.<br />

Die Kommunikationslösung für Ihr<br />

Unternehmen<br />

Umweltschützer speichern vor Ort<br />

Eine Studie des Öko-Instituts Freiburg kommt zu dem Schluss,<br />

dass lokale NAS-Speicher für Heimanwender günstiger und<br />

umweltverträglicher sind als Speicherangebote im Internet.<br />

So fielen für das Speichern von 4,7 GByte Daten in einem<br />

Online-Speicher 55 Kilogramm CO2-Äquivalente an. Ein energieeffizienter<br />

NAS-Speicher im Heimnetzwerk verbrauche für<br />

die gleiche Datenmenge nur 150 Gramm. Die Speicherung<br />

im lokalen NAS soll auch kostengünstiger sein. So kostet der<br />

lokale Netzwerkspeicher nach Berechnungen des Instituts pro<br />

TByte und Jahr rund 100 Euro. Die Cloud-Speicher bieten zum<br />

gleichen Preis nur etwa 100 GByte Speicherplatz.<br />

Das Öko-Institut [http://​oeko.​de], das Vergabekriterien für das<br />

Umweltzeichen „Der Blaue Engel“ entwickelt, hat Empfehlungen<br />

für den Kauf kleiner Netzwerkspeicher abgeleitet. Ran<br />

Liu, eine wissenschaftliche Mitarbeiterin des Öko-Instituts, rät:<br />

„Beim Kauf sollten Verbraucherinnen und Verbraucher auf<br />

den Stromverbrauch der Geräte achten. Ein energieeffizienter<br />

Netzwerkspeicher mit zwei Festplatten verbraucht maximal 58<br />

Kilowattstunden pro Jahr. Ineffiziente Geräte können leicht das<br />

Doppelte verbrauchen.“ Die Geräte sollten dabei über einen<br />

Standby-Modus mit weniger als 4 Watt verfügen.<br />

Standard HSTS soll Web sicherer machen<br />

Der neue Standard HSTS soll künftig dafür sorgen, dass Websites<br />

nur noch über HTTPS erreichbar sind, wenn sie entsprechend<br />

konfiguriert sind.<br />

Die Internet Engineering Task Force (IETF) hat den RFC 6797<br />

veröffentlicht und damit HTTP Strict Transport Security (HSTS)<br />

formal als Internet-Standard festgeschrieben. Webserver, die<br />

entsprechend konfiguriert sind, erlauben damit nur noch verschlüsselte<br />

Verbindungen. Dies setzt allerdings voraus, das<br />

Webbrowser auf das vom Server verschickten Header-Feld wie<br />

gewünscht reagieren. Gleichzeitig ist der Sicherheitsmechanismus<br />

nicht von Haus aus immun gegen Man-in-the-Middle-<br />

Angriffe, die den Header manipulieren. Browser wie Chrome<br />

und Firefox wollen deshalb eine Liste von Websites führen, die<br />

HSTS-kompatibel sind.<br />

www.admin-magazin.de<br />

Unified Communications:<br />

Telefon<br />

Video<br />

VoiceMail<br />

Präsenzmanager<br />

Instantmessaging<br />

FaxEmail Gateway<br />

PrintFax Gateway<br />

Conferencing<br />

Voicemailboxen<br />

Mehr Informationen finden Sie unter:<br />

http://www.pascom.net<br />

http://community.pascom.net<br />

NEU<br />

Kostenlose<br />

Community<br />

Version<br />

erhältlich<br />

pascom<br />

Netzwerktechnik GmbH & Co. KG<br />

Berger Straße 42<br />

94469 Deggendorf<br />

Tel.: +49 991 27006 - 0<br />

Ausgabe 01-2013<br />

11


Login<br />

News<br />

+++ neueste Nachrichten immer auf http://www.admin-magazin.de +++++ neueste Nachrichte<br />

Die Daten liegen draußen<br />

Der erste Digital Information Index von Symantec unterstreicht<br />

die Bedeutung von Cloud Computing und Mobilität für moderne<br />

Unternehmen. Der Studie zufolge werden Unternehmensdaten<br />

immer häufiger außerhalb des Rechenzentrums genutzt und<br />

gespeichert.<br />

Weltweit wird fast die Hälfte aller Unternehmensinformationen<br />

(46 Prozent) außerhalb des eigenen Rechenzentrums<br />

gespeichert. Kleine und mittelständische Unternehmen (KMU)<br />

liegen dabei mit 53 Prozent vor Konzernen, insbesondere, wenn<br />

mobile Endgeräte und Laptops genutzt werden. Deutschland<br />

befindet sich hier mit 48 Prozent etwas über dem weltweiten<br />

Durchschnitt, während Länder wie Indien (83 Prozent), China<br />

(60 Prozent) und Singapur (60 Prozent) deutlich darüber liegen.<br />

Dabei hat mehr als ein Drittel der befragten Firmen bereits<br />

vertrauliche Informationen durch Verlust oder Diebstahl von<br />

mobilen Geräten verloren. Zudem geben die Befragten an, es sei<br />

schwierig, immer die richtigen Daten zu finden, da Mitarbeiter<br />

die Informationen weitgehend unorganisiert speichern.<br />

Weltweit werden 14 Prozent der Unternehmensinformationen<br />

auf Smartphones und Tablets gespeichert – in Deutschland<br />

sogar 16 Prozent. Vergleicht man hier die Unternehmensgröße,<br />

liegen große Firmen mit 14 Prozent vor KMU (11 Prozent). Global<br />

werden außerdem bereits 28 Prozent der Informationen von<br />

unterwegs abgerufen – auch hier führen große Unternehmen<br />

mit 31 Prozent das Feld vor den KMU (25 Prozent) an.<br />

Virtuelles Red-Hat-Training für Europa<br />

Das Open-Source-Unternehmen Red Hat bietet seine Schulungen<br />

im virtuellen Format nun auch in Europa an.<br />

Das Angebot soll sich auf eine große Liste von Themen und<br />

Zertifizierungen erstrecken, vom bekannten RHCE über Kurse<br />

zu Solaris bis zur Jboss-Administration und ‐Entwicklung. Die<br />

Termine für Deutschland finden sich unter [http://​www.​europe.​<br />

​redhat.​com/​training/​dates/​?​country=DEV]<br />

Die Online-Schulungen werden live von Trainern betreut und<br />

bieten die Gelegenheit zu praktischen Übungen an virtualisierten<br />

Systemen. Sie erstrecken sich über drei bis fünf Tage, an<br />

denen je fünfeinhalb Stunden Schulung stattfinden.<br />

ISO normiert digitale Beweissicherung<br />

Mit ISO/​IEC 27037:2012 ist ein internationaler Standard für<br />

die elektronische Beweissicherung verabschiedet worden. Die<br />

Norm enthält Richtlinien für die Beschaffung, Sammlung und<br />

Sicherung digitaler Beweise und den Erhalt ihrer Glaubwürdigkeit.<br />

Sie richtet sich an Personen und Organisationen, die<br />

mit der Auswertung digitaler Beweise befasst sind, aber auch<br />

an einschlägige Normungsgremien. Der Standard ersetzt keine<br />

rechtlichen Bestimmungen, sondern versteht sich als Praxis-<br />

Leitfaden. Entwickelt wurde er durch das Komitee ISO/​IEC JTC<br />

1, Information Technology.<br />

UEFI Secure Boot: Mühe mit der Microsoft-Signatur<br />

Die Bemühungen der <strong>Linux</strong> Foundation, einen UEFI-Bootloader<br />

von Microsoft signieren zu lassen, gestalten sich mühsam. Das<br />

berichtet James Bottomley, Vorsitzender des technischen Beirats<br />

der Organisation, in seinem Blog. Die Foundation möchte für<br />

<strong>Linux</strong>-Anwender Tools bereitstellen, mit denen sie UEFI Secure<br />

Boot deaktivieren und umkonfigurieren können. Zudem soll es<br />

einen Pre-Bootloader geben, der beliebige andere Bootloader<br />

wie etwa Grub für <strong>Linux</strong> startet.<br />

In seinem Beitrag beschreibt Bottomley nun, dass sich die<br />

Prozedur für die signierten UEFI-Executables langwieriger<br />

und schwieriger gestalte als erwartet. Das „Abenteuer“, wie<br />

er es bezeichnet, beginnt<br />

mit dem Erwerb eines Verisign-Schlüssels,<br />

mit dem<br />

man sich auf der Microsoft<br />

Sysdev-Seite anmeldet und<br />

seine Identität beweist. Dazu<br />

signiert der Benutzer ein<br />

Binary und lädt es hoch.<br />

Eigentlich sollte das mit einer<br />

bestimmten Windows-<br />

Version geschehen, doch offenbar<br />

erfüllt auch das freie<br />

Tool Sbsign seinen Zweck. James Bottomley bemüht sich, von<br />

Vor dem Signierenlassen Microsoft einen signierten UEFIvon<br />

UEFI-Programmen muss Bootloader zu bekommen.<br />

dann der Vertragsschluss mit Microsoft erfolgen. Hier berichtet<br />

James Bottomley von zahlreichen Klauseln, die über die eigentlichen<br />

UEFI-Executables hinausgingen und beispielsweise<br />

GPL-Treiber ausschlössen. Einem Bootloader steht aber offenbar<br />

nichts im Wege.<br />

Das Signieren erfordert dann, die Binärdatei in eine Microsoft<br />

Cabinet-Datei zu verpacken, wozu das Open-Source-Programm<br />

Lcab taugt. Anschließend muss der Benutzer das Archiv mit seinem<br />

Verisign-Schlüssel signieren. Glücklicherweise gibt es auch<br />

hierfür mit Osslsigncode eine freie Lösung. Beim Upload kommt<br />

dann Microsofts Silverlight-Technologie zum Einsatz.<br />

Die bisherigen Versuche haben offenbar noch nicht zum Erfolg<br />

geführt. Somit gibt es derzeit noch keinen passend von Microsoft<br />

signierten UEFI-Bootloader der <strong>Linux</strong> Foundation. James<br />

Bottomley möchte sich weiter bemühen und die Datei auf die<br />

Website der <strong>Linux</strong> Foundation stellen.<br />

In der Zwischenzeit hat der Open-Source-Entwickler Matthew<br />

Garrett seinen Bootloader namens Shim in einer gebrauchsfertigen<br />

Version veröffentlicht. Im Unterschied zum Loader<br />

der <strong>Linux</strong>-Foundation setzt er voraus, dass der Anwender sein<br />

eigenes Zertifikat im UEFI einspielt und den Bootloader selbst<br />

signiert. Somit ist kein Schlüssel eine Dritten wie etwa Microsoft<br />

erforderlich. Shim 0.2 steht im Quelltext und als EFI-Binary<br />

unter [http://​www.​codon.​org.​uk/​~mjg59/​shim‐signed/] zum Download<br />

bereit. Er soll unter anderem in Fedora LInux 18 zum Einsatz<br />

kommen.<br />

12 Ausgabe 01-2013 Admin www.admin-magazin.de


News<br />

Login<br />

n immer auf http://www.admin-magazin.de ++++ neueste Nachrichten immer auf http://www.<br />

Vorträge für Cebit 2013 gesucht<br />

Das Open-Source-Forum der Cebit bildet den Rahmen für Vorträge zu <strong>Linux</strong> und<br />

freier Software.<br />

Mit dem Umzug in Halle 6 räumt die Cebit dem Thema Open<br />

Source im Jahr 2013 mehr Raum ein. Davon profitiert auch das<br />

Open Source Forum, das zusammen mit der Ausstellung des<br />

Open Source Parks das Thema <strong>Linux</strong> und freie Software auf der<br />

Cebit prägt. Die Cebit 2013 findet vom 5. bis 9. März 2013 in<br />

Hannover statt. Organisiert von der Medialinx AG (Herausgeber<br />

des <strong>ADMIN</strong>-<strong>Magazin</strong>s), bietet das Open Source Forum dem<br />

Cebit-Publikum ein umfangreiches Vortragsprogramm, das alle<br />

Facetten der <strong>Linux</strong>- und Open Source-Welt beleuchtet<br />

Mit dem Call for Papers sind Entwickler und Strategen aus<br />

Community, Unternehmen und Behörden aufgerufen, ihre Vortragsvorschläge<br />

einzureichen. Gesucht werden Praktiker, die<br />

über ihre Erfahrungen bei der Entwicklung und beim Einsatz<br />

freier Software berichten. Gefragt sind innovative Produkte<br />

und neue Projekte sowie Open Source- und <strong>Linux</strong>-spezifische<br />

Technologien. Von besonderem Interesse ist der Themenbereich<br />

„Open Source in der Mobile-IT“ sowie Themen, die an das<br />

Cebit-Leitthema 2013 „Shareconomy“ anknüpfen.<br />

Ihre Vorschläge können Interessierte per Formular unter [http://​<br />

​www.​linux‐magazin.​de/​cfp] einreichen. Über die Vergabe der<br />

Vortragsplätze entscheidet eine internationale Jury aus Open-<br />

Source-Experten.<br />

Red Hats PaaS: Open Shift ist fertig<br />

Nach RHEV und diversen anderen Produkten legt Red Hat nach<br />

und bringt jetzt mit Open Shift auch seine eigene PaaS-Lösung<br />

für die private, public oder hybride Cloud auf den Markt.<br />

Open Source durch und durch, das sei Open Shift, schreibt<br />

Red Hat in seinem Announcement. Zwar ist die Plattform für<br />

Webentwickler schon länger erhältlich, doch die <strong>Enterprise</strong>-<br />

Edition hat der Hersteller erst jetzt als Generally Available<br />

(GA) freigegeben. Produktinformationen gibt es unter [https://​<br />

​openshift.​redhat.​com/​app].<br />

Open Shift <strong>Enterprise</strong> setzt auf RHEL, Jboss, Java, Ruby, Python,<br />

PHP und Perl und nutzt eine sogenannte Cartridge-Architektur<br />

aus Virtualisierungscontainern (einer Kombination aus SE <strong>Linux</strong>,<br />

Cgroups und Namespaces), um die Middleware-Services<br />

für Entwickler leichter skalierbar zu machen.<br />

Red Hats Ashesh Badani (General Manager der Cloud Business<br />

Unit und von Open Shift) nennt das Produkt „die einzige offene<br />

PaaS-Umgebung für den Einsatz im eigenen Rechenzentrum“.<br />

Den guten Chancen am Markt pflichtet in der Pressemitteilung<br />

auch die IDC bei: Stephen Hendrick, Group Vice President<br />

Application Development und Deployment Research spricht von<br />

40 Prozent zu erwartenden Zuwächsen im PaaS-Bereich, die<br />

sich auch im eigenen Rechenzentrum abspielen werden.<br />

<strong>Linux</strong> Schulungen 2013 – Nicht verpassen!<br />

• Softwarepaketierung unter <strong>Linux</strong> mit RPM: 19.02.13<br />

NEU<br />

KVM - Server-<br />

Virtualisierung<br />

unter <strong>Linux</strong>:<br />

22.04.13<br />

• Erweiterungen programmieren für Check_MK: 25.02., 03.06.13<br />

• <strong>Linux</strong> - Crashkurs für Administratoren: 04.03., 13.05.13<br />

Oracle sammelt Red-Hat-Patches<br />

Unter dem Namen Redpatch hat Oracle ein neues Git-Repository<br />

veröffentlicht, das alle Patches für den <strong>Enterprise</strong>-Kernel von<br />

Red Hat sammelt. Die einzelnen Patches sind dort unter der<br />

GPL-Lizenz frei verfügbar. Unter den gleichen Bedingungen bietet<br />

Oracle auch die Patches für den eigenen „Unbreakable <strong>Enterprise</strong><br />

Kernel“ an. Zu dem Schritt habe Oracle sich entschlossen,<br />

weil Red Hat Anfang 2011 die Art der Veröffentlichung seiner<br />

Kernel-Änderungen geändert hat. Seither publiziert Red Hat<br />

nicht mehr einzelne Patches, sondern den gesamten Kernel-<br />

Code und einen einzigen Patch, der alle Änderungen enthält.<br />

Für die Arbeit an Ksplice zerlege Oracle seit Red Hats Umstellung<br />

den monolithischen Patch in einzelne Teile und sammle sie<br />

in einem eigenen Repository. Mit Redpatch sei dieses nun auch<br />

öffentlich verfügbar (siehe den Artikel zu <strong>Enterprise</strong>-<strong>Linux</strong> in<br />

diesem Heft). (jcb/​hje/​ofr/​mfe/​mhu)<br />

• Fortgeschrittenes Monitoring mit Nagios & Check_MK: 11.03., 10.06.13<br />

• <strong>Linux</strong> Administration für Fortgeschrittene: 18.03.13<br />

• Systemmonitoring mit Nagios und Check_MK: 08.04.13<br />

• NEU KVM - Server-Virtualisierung unter <strong>Linux</strong>: 22.04.13<br />

Gerne machen wir auch Inhouse-Schulungen direkt bei Ihnen vor Ort.<br />

Fragen Sie uns nach einem Angebot zu Ihrem Wunschthema.<br />

Besuchen Sie uns<br />

auf der CeBIT, Halle 6,<br />

Open Source Park.<br />

089 / 18 90 435 - 0<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

schulung@mathias-kettner.de<br />

13<br />

www.mathias-kettner.de


1&1 feiert Geburtstag – feiern Sie mit! Wir schenken Ihnen<br />

50,– € Jubiläums-Bonus!<br />

*<br />

DOMAINS | E-MAIL | WEBHOSTING | E-SHOPS | SERVER<br />

* 1&1 Jubiläumsaktion bis 31.01.2013 für Neukunden: 1&1 WebHosting Pakete 6 Monate 0,– €/Monat, danach z. B. 1&1 Dual Unlimited 24,99 €/Monat, 14,90 € Einrichtungsgebühr,<br />

einmaliger Jubiläumsbonus 50,– €. 1&1 Dynamic Cloud Server Basiskonfi guration 3 Monate 0,– €/Monat, danach 39,99 €/Monat, 39,– € Einrichtungsgebühr, einmaliger Jubiläumsbonus


1&1 WEBHOSTING<br />

1&1 feiert 25-jähriges Jubiläum. Profitieren Sie von 25 Jahren Erfahrung und geben Sie Ihren Web-Projekten eine sichere<br />

Zukunft. Denn mit weltweit über 11 Mio. Kundenverträgen, 5.000 Mitarbeitern und 5 Hochleistungs-Rechenzentren ist<br />

1&1 einer der größten Webhoster weltweit. Als Kunde profitieren Sie von unserem langjährigen Know-how und unserem<br />

24/7 Experten-Support. Und das Beste ist: Allen, die sich bis 31.01.13 für 1&1 entscheiden, schenken wir bis zu 50,– €<br />

Jubiläums-Bonus!<br />

1&1 WebHosting<br />

1&1 Cloud Server<br />

1&1 Dedicated Server<br />

■ Optimale Sicherheit durch parallelen<br />

Betrieb und tägliche Backups<br />

■ Bis zu 8 Inklusiv-Domains<br />

■ Freie Wahl des Betriebssystems<br />

(<strong>Linux</strong> oder Windows)<br />

■ NEU! PHP 5.4 inklusive<br />

■ Inklusive aller Tools zur Realisierung<br />

Ihrer Ideen<br />

■ Unlimited Traffic inklusive<br />

■ Voller Root Zugriff<br />

■ Individuelle Kombination aus CPU,<br />

RAM und Festplattenspeicher<br />

■ Abrechnung stundengenau und<br />

konfigurationsbasierend<br />

■ Optimale Sicherheit durch parallelen<br />

Betrieb<br />

■ Wiederherstellung per Snapshot<br />

■ Unlimited Traffic inklusive<br />

■ Voller Root Zugriff<br />

■ Bis zu 32 Cores und 64 GB RAM<br />

■ Große Auswahl an Betriebssystemen<br />

■ Bereitstellung und Austausch<br />

innerhalb von 24h<br />

■ Nahezu 100 % Verfügbarkeit und<br />

Erreichbarkeit<br />

■ Unlimited Traffic inklusive<br />

6 MONATE<br />

0,–<br />

€ * 0,–<br />

€<br />

0,–<br />

€<br />

50,– € *<br />

*<br />

*<br />

50,–<br />

€ *<br />

3 MONATE<br />

+ BONUS<br />

+<br />

JUBILÄUMS-<br />

BONUS 3 MONATE<br />

BONUS<br />

+<br />

50,–<br />

JUBILÄUMS-<br />

JUBILÄUMS-<br />

50,–<br />

€ *<br />

0 26 02 / 96 91<br />

0800 / 100 668<br />

1und1.info<br />

50,– €. 1&1 Dedicated Server 3 Monate 0,– €/Monat, danach z. B. 1&1 Server XXL24i 399,– €/Monat, 99,– € Einrichtungsgebühr, einmaliger Jubiläumsbonus 50,– €. Für alle Aktionsangebote<br />

12 Monate Mindestvertragslaufzeit. Jubiläumsbonus wird mit der jeweiligen monatlichen Grundgebühr ab dem ersten Bezahlmonat verrechnet. Preise inkl. MwSt.


Login<br />

Auftragsdatenverarbeitung<br />

© Steve Cukrov, 123RF<br />

Wie man externe Dienstleister richtig beauftragt<br />

Arbeit im<br />

Auftrag<br />

Manches erledigt ein spezialisierter Dienstleister effizienter als man es<br />

selbst könnte, Stichwort Outsourcing. Wenn dabei personenbezogene Daten<br />

ins Spiel kommen, macht das Bundesdatenschutzgesetz sehr konkrete<br />

Vorgaben für die sogenannte Auftragsdatenverarbeitung. Ignoranz kann<br />

teuer werden. Vilma Niclas<br />

Ein Beispiel: Die Geschäftsführer eines<br />

Unternehmens aus Bremen versandten<br />

einen Newsletter an Kunden durch eine<br />

externe Medienfirma. Der bremische Landesbeauftragte<br />

für den Datenschutz verhängte<br />

ein Bußgeld von insgesamt 8 000<br />

Euro und rügte: Die Aufträge waren nicht<br />

richtig erteilt worden, es fehlte an der<br />

Schriftform, der Vertrag enthielt nicht die<br />

Inhalte, die das Gesetz zwingend<br />

vorschrieb, und das Unternehmen<br />

habe es versäumt,<br />

vor Beginn des Auftrages zu<br />

prüfen, welche technischen<br />

und organisatorischen Maßnahmen<br />

der Dienstleister in<br />

datenschutzrechtlicher Hinsicht<br />

getroffen habe. Die Geschäftsführer<br />

zahlten die Bußgelder<br />

ohne Widerspruch.<br />

Datenschutzfalle:<br />

Google Analytics<br />

© Oleksandr Nebrat, 123RF<br />

Viele Unternehmen nutzen<br />

Google Analytics auf ihren<br />

Webseiten, ein Statistikprogramm,<br />

das IP-Adressen speichert. Nach<br />

Ansicht von Datenschützern sind dies<br />

personenbezogene Daten, die Google im<br />

Auftrag des Webseitenbetreibers verarbeitet.<br />

Der Webseitenbetreiber ist für den<br />

Datenschutz verantwortlich. Der Hamburger<br />

Datenschutzbeauftragte hatte sich<br />

Ende 2011 mit Google daraufhin geeinigt,<br />

dass Webseitenbetreiber das Tool nutzen<br />

Abbildung 1: Analysetools wie Google Analytics arbeiten häufig mit personenbezogenen<br />

Daten und beinhalten dann eine Auftragsdatenverarbeitung.<br />

können, sofern diese mit Google einen<br />

Vertrag zur Auftragsdatenverarbeitung<br />

nach deutschem Bundesdatenschutzgesetz<br />

schließen. Zudem muss Google<br />

mithilfe eines Deaktiverungs-Add-ons<br />

für den Browser dafür sorgen, dass jeder<br />

Internetnutzer der Erfassung seiner<br />

Daten widersprechen kann. Der Datenschutzhinweis<br />

auf der Website des jeweiligen<br />

Anbieters müsse darauf hinweisen.<br />

Zudem muss der Webseitenbetreiber<br />

per Programmcode auf der Website die<br />

Möglichkeit haben, die IP-Adressen nur<br />

anonymisiert zu erfassen und die letzten<br />

Stellen zu löschen.<br />

Der Bayerische Landesdatenschutzbeauftragte<br />

stellte fest, nur wenige Unternehmen<br />

halten sich daran und informierte<br />

einige Unternehmen [1]. Nachdem die<br />

Folgeprüfung ergab, dass einige noch immer<br />

nichts unternommen hatten, erließ<br />

man 106 Bußgeldbescheide. Auch dieses<br />

Beispiel zeigt, wie wichtig es ist, zu prüfen,<br />

ob die Vorgaben zur Auftragsdatenverarbeitung<br />

eingehalten werden.<br />

Bis 50 000 Euro Bußgeld<br />

Bei einem Verstoß gegen die Vorgaben zur<br />

Auftragsdatenverarbeitung kann dies mit<br />

einem Bußgeld von bis zu 50 000 Euro<br />

geahndet werden. In § 43 I Nr. 2 b BDSG<br />

heißt es: „Ordnungswidrig handelt, wer<br />

vorsätzlich oder fahrlässig … entgegen<br />

§ 11 Absatz 2 Satz 2 einen Auftrag nicht<br />

richtig, nicht vollständig oder nicht in der<br />

vorgeschriebenen Weise erteilt oder entgegen<br />

§ 11 Absatz 2 Satz 4 sich nicht vor<br />

Beginn der Datenverarbeitung von der<br />

Einhaltung der beim Auftragnehmer<br />

getroffenen technischen<br />

und organisatorischen<br />

Maßnahmen überzeugt.“ Im<br />

Gesetz heißt es weiter: „Die<br />

Geldbuße soll den wirtschaftlichen<br />

Vorteil, den der Täter<br />

aus der Ordnungswidrigkeit<br />

gezogen hat, übersteigen.<br />

Reichen die in Satz 1 genannten<br />

Beträge hierfür nicht aus,<br />

so können sie überschritten<br />

werden.“<br />

Die Aufsichtsbehörden prüfen,<br />

ob Unternehmen sich daran<br />

halten. Ein weiteres Beispiel:<br />

Die Europcar Autovermietung<br />

GmbH hatte einen Teil ihrer<br />

16 Ausgabe 01-2013 Admin www.admin-magazin.de


Auftragsdatenverarbeitung<br />

Login<br />

Autos ohne Wissen der Mieter per GPS<br />

orten lassen. Der Hamburgische Beauftragte<br />

für Datenschutzschutz und Informationsfreiheit<br />

ahndete dies mit einem<br />

Bußgeld von 54 000 Euro. Die Mieter der<br />

Fahrzeuge wussten nichts von der Ortung<br />

und hatten ihr nicht zugestimmt. Der Vertrag<br />

über die Auftragsdatenverarbeitung<br />

mit dem Ortungsunternehmen fehlte.<br />

An die Auftragsdatenverarbeitung stellt<br />

das Bundesdatenschutzgesetz hohe Anforderungen.<br />

Sobald ein externer Dienstleister<br />

beauftragt wird und dieser personenbezogene<br />

Daten bearbeitet, die er<br />

vom Auftraggeber erhält, muss man sich<br />

mit dem Anbieter unterhalten: Wie steht<br />

es um den Datenschutz? Zwar delegiert<br />

man Aufgaben mit einem Werk- oder<br />

Dienstvertrag. Die Verantwortung für den<br />

Datenschutz für diese Kundendaten kann<br />

man aber oft nicht in derselben Weise<br />

delegieren.<br />

Einen seriösen und kompetenten Dienstleister<br />

erkennt man daran, dass er auf<br />

die Frage nach der Auftragsdatenverarbeitung<br />

nicht die Stirn runzelt, sondern<br />

eine kompetente Antwort parat hat und<br />

vielleicht auch schon einen Vertragsvorschlag,<br />

sofern er nötig ist. Es kann gravierende<br />

Folgen haben, wenn man mit<br />

einem Dienstleister zusammenarbeitet,<br />

der den Datenschutz nicht ernst nimmt.<br />

Den richtigen Dienstleister<br />

auswählen<br />

Das deutsche Datenschutzrecht verlangt:<br />

1. eine Vorabprüfung des Dienstleisters,<br />

2. eine schriftliche Datenschutzvereinbarung<br />

mit dem Dienstleister (sogenannter<br />

Vertrag zur Auftragsdatenverarbeitung),<br />

3. zu kontrollieren, ob die Vereinbarung<br />

eingehalten wird.<br />

Diese Datenschutzvereinbarung ergänzt<br />

den Werk- oder Dienstvertrag für die<br />

Dienstleistung. Das Gesetz regelt genau<br />

den Mindestinhalt einer solchen Vereinbarung.<br />

Einigermaßen kompliziert wird<br />

es, wenn der IT-Dienstleister im Ausland<br />

beziehungsweise außerhalb der Europäischen<br />

Union seinen Sitz hat und dort<br />

die Daten verarbeitet (siehe Kasten<br />

"Server im Ausland)". Spätestens dann<br />

sollte man einen beratenden Anwalt hinzuziehen,<br />

und gegebenenfalls muss man<br />

sich nach einem alternativen Anbieter<br />

umsehen.<br />

Wann liegt Auftragsdatenverarbeitung<br />

vor?<br />

Die sogenannte Auftragsdatenverarbeitung<br />

ist in § 11 des Bundesdatenschutzgesetzes<br />

(BDSG) geregelt. Dort heißt es<br />

in Absatz 1: „Werden personenbezogene<br />

Server im Ausland – welches Recht gilt?<br />

Viele große Cloud-Computing-Anbieter erfassen<br />

Daten in Deutschland, speichern sie jedoch auf<br />

Servern irgendwo außerhalb der EU, etwa in den<br />

USA. Nicht jedes Land bietet ein so hohes Datenschutzniveau<br />

wie Deutschland. Das strenge<br />

deutsche Datenschutzrecht gilt in vielen Fällen<br />

auch dann, wenn im Inland ordnungsgemäß erhobenen<br />

Daten in ein anderes Land übermittelt<br />

werden. Der Auftraggeber sollte sich im Vorfeld<br />

darüber informieren, wo die Daten verarbeitet<br />

werden. Zum Schutz gilt: Diese Daten dürfen<br />

nur innerhalb Deutschlands und der EU, sowie<br />

Norwegen, Island und Liechtenstein ohne Weiteres<br />

von den Unternehmen weiter übermittelt<br />

werden.<br />

Niveau ausreichend<br />

Darüber hinaus hat die Europäische Kommission<br />

einigen Ländern bescheinigt, dass ihr Datenschutzniveau<br />

hoch genug sei. Dazu gehören<br />

etwa: Kanada, Israel, die Schweiz und Argentinien.<br />

Für die USA hat die EU-Kommission die sogenannten<br />

„Safe Harbor Principles“ anerkannt.<br />

Unternehmen, die diese Standards akzeptieren,<br />

gewährleisten von sich aus einen höheren Datenschutz,<br />

als es das Gesetz verlangt. Dies sind etwa<br />

Amazon, Google und Microsoft. Bevor Sie einen<br />

Anbieter auswählen, erkundigen Sie sich, ob mindestens<br />

die „Safe Harbor Principles“ anerkannt<br />

werden. Zudem gibt es bei Datenübertragungen<br />

ins Ausland die Möglichkeit, einen ähnlich hohen<br />

Datenschutz wie in der EU zu vereinbaren, etwa<br />

mit EU-Standardvertragsklauseln [4].<br />

Vorsicht gilt aber, sobald man diese Klauseln modifiziert.<br />

Bei Anbietern aus den USA muss man<br />

zudem wissen: Diese unterliegen dem „Patriot<br />

Act“, der es US Behörden erlaubt, zur Terrorabwehr,<br />

auf Daten der Unternehmen zuzugreifen.<br />

Dies gilt auch für europäische Niederlassungen<br />

von US-Unternehmen. Dies kann Bußgelder für<br />

den Auftraggeber wegen eines Verstoßes gegen<br />

deutsches Datenschutzrecht nach sich ziehen,<br />

wenn man diesen Zugriff nicht bedenkt. Entweder<br />

wählt man einen anderen Anbieter oder<br />

versucht per Vertrag den Speicherstandort festzuklopfen<br />

und/​oder versucht mit anwaltlicher<br />

Hilfe zu prüfen, ob man mit einer klaren vertraglichen<br />

Regelung, den Zugriff der Behörden<br />

auf die Daten ausschließen kann, etwa indem<br />

man die Weitergabe der Daten bei Vertragsstrafe<br />

verbietet, insbesondere an US-Behörden.<br />

Standortfrage<br />

Die Orientierungshilfe der Datenschutzbehörden<br />

zum Cloud Computing: „Durch vertragliche<br />

Vereinbarungen zwischen dem Cloud-Anwender<br />

und dem Cloud-Anbieter muss der Ort der technischen<br />

Verarbeitung personenbezogener Daten<br />

vereinbart werden. Cloud-Anbieter sowie<br />

Unter-Anbieter können so verpflichtet werden,<br />

nur technische Infrastrukturen zu verwenden,<br />

die sich physisch auf dem Gebiet des EWR befinden.<br />

Es ist daher nicht hinnehmbar, dass der<br />

Cloud-Anbieter eine Auskunft zu den Standorten<br />

der Datenverarbeitung verweigert, keinesfalls<br />

dürfte bei einer Verweigerung pauschal von<br />

einer Cloud im innereuropäischen Raum ausgegangen<br />

werden.“<br />

Bei einem IT-Dienstleister, der außerhalb<br />

Deutschlands, aber in der Europäischen Union<br />

arbeitet, ist nach der Europäischen Richtlinie<br />

95/​46/​EG ein Vertrag zur Auftragsdatenverarbeitung<br />

erforderlich. Die „Artikel 29 Gruppe“,<br />

eine Datenschutzgruppe konkretisierte in einem<br />

Working Paper Nr. 196 vom Juli 2012 (S. 16 ff.)<br />

die Inhalte [5].<br />

Darin heißt es: „Sollte der für die Verarbeitung<br />

Verantwortliche Niederlassungen in mehreren<br />

Mitgliedstaaten haben und die Daten als Teil<br />

seiner Tätigkeit in diesen Ländern verarbeiten,<br />

ist jeweils das Recht jedes Mitgliedstaates anzuwenden,<br />

in dem die Verarbeitung stattfindet.“<br />

Auch Kleine verantwortlich<br />

Oft haben KMUs das Problem, dass Cloud Computing<br />

Anbieter die Vertragsklauseln starr<br />

vorgeben. Darauf haben kleinere Kunden nicht<br />

immer einen Einfluss. Das Working Paper dazu:<br />

„Es sollte angemerkt werden, dass Anbieter von<br />

Cloud-Diensten in vielen Fällen Standarddienste<br />

und von den für die Verarbeitung Verantwortlichen<br />

zu unterzeichnende Standardverträge<br />

anbieten, die ein Standardformat für die Verarbeitung<br />

personenbezogener Daten festlegen.<br />

Das Ungleichgewicht in der Vertragsposition<br />

zwischen einem kleinen für die Verarbeitung<br />

Verantwortlichen und großen Dienstleistern darf<br />

nicht als Rechtfertigung dafür gelten, dass für<br />

die Verarbeitung Verantwortliche Vertragsklauseln<br />

und ‐bedingungen akzeptieren, die gegen<br />

das Datenschutzrecht verstoßen.“ Es befreit<br />

den Nutzer von Cloud-Diensten nicht von den<br />

Anforderungen des deutschen Datenschutzrechtes,<br />

wenn sich der mächtigere Cloud-Anbieter<br />

nicht um die Vorgaben nach europäischem Recht<br />

kümmert. Der Kunde bleibt für den Datenschutz<br />

verantwortlich und sollte mit Kontrollen der Aufsichtsbehörden<br />

rechnen.<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

17


Login<br />

Auftragsdatenverarbeitung<br />

© stylephotographs, 123RF<br />

Daten im Auftrag durch andere Stellen<br />

erhoben, verarbeitet oder genutzt, ist<br />

der Auftraggeber für die Einhaltung der<br />

Vorschriften dieses Gesetzes und anderer<br />

Vorschriften über den Datenschutz verantwortlich…<br />

." Die Verantwortung für<br />

den Datenschutz trägt weiterhin der Auftraggeber,<br />

wenn ein anderes Unternehmen<br />

die Daten von Kunden im Auftrag<br />

verarbeitet. In der Praxis haben Unternehmen<br />

oft Schwierigkeiten einzustufen,<br />

ob das konkrete Outsourcing-Projekt eine<br />

Auftragsdatenverarbeitung ist oder nicht.<br />

Ein Kriterium ist: Der Dienstleister ist<br />

weisungsgebunden und muss die Anweisungen<br />

des Auftraggebers ausführen.<br />

Anders ist dies bei der sogenannten<br />

Funktionsübertragung, bei der der externe<br />

Dienstleister nicht den Weisungen<br />

des Auftraggebers unterliegt. Ein weiteres<br />

Kriterium für Auftragsdatenverarbeitung<br />

ist, dass der Auftragnehmer die Daten<br />

nur im Rahmen der Weisungen des Auftraggebers<br />

verarbeiten darf. Sobald der<br />

Dienstleister die Daten für eigene Zwecke<br />

nutzt, handelt es sich nicht mehr um<br />

Auftragsdatenverarbeitung. Diese Form<br />

der Datenübermittlung ist dann nach den<br />

§§ 28 ff BDSG zu prüfen. Die Grenze ist<br />

oft nicht eindeutig und fließend.<br />

Beispiele für Auftragsdatenverarbeitung<br />

können je nach konkretem Inhalt des<br />

individuellen Vertrages und Art der Daten<br />

sein: Entsorgungsunternehmen für<br />

Akten oder Daten, Hostingprovider, ASP-<br />

Provider, Archivierungsdienste, Backup-<br />

Dienstleister, Schreibbüros, Rechenzentren,<br />

Adressdienstleister, Newsletterversand<br />

durch Werbeagentur.<br />

Nicht jeder Outsourcing-Prozess<br />

ist Auftragsdatenverarbeitung.<br />

Man sollte sich bei<br />

der Einstufung an der Frage<br />

orientieren: Besteht der Kern<br />

der Dienstleistung darin,<br />

personenbezogene Daten zu<br />

verarbeiten oder nicht. Sieht<br />

eine Supportfirma während<br />

des Supports in einer Datenmaske<br />

personenbezogene<br />

Daten, muss es sich je nach<br />

Auftragsumfang nicht unbedingt<br />

um Auftragsdatenverarbeitung<br />

handeln. Dennoch<br />

sollte man diese Unternehmen<br />

auf die Geheimhaltung<br />

verpflichten oder Daten verschlüsseln.<br />

Bei der Datenübertragung an<br />

einen Steuerberater handelt es sich nicht<br />

um Auftragsdatenverarbeitung.<br />

Schriftform gefordert<br />

Der Auftrag ist schriftlich zu erteilen,<br />

wobei insbesondere im Einzelnen festzulegen<br />

sind:<br />

1. der Gegenstand und die Dauer des<br />

Auftrags,<br />

2. der Umfang, die Art und der Zweck der<br />

vorgesehenen Erhebung, Verarbeitung<br />

oder Nutzung von Daten, die Art der Daten<br />

und der Kreis der Betroffenen,<br />

3. die nach § 9 zu treffenden technischen<br />

und organisatorischen Maßnahmen,<br />

4. die Berichtigung, Löschung und Sperrung<br />

von Daten,<br />

5. die nach Absatz 4 bestehenden Pflichten<br />

des Auftragnehmers, insbesondere<br />

Kontrollen,<br />

6. die etwaige Berechtigung zur Begründung<br />

von Unterauftragsverhältnissen,<br />

7. die Kontrollrechte des Auftraggebers<br />

und die Duldungs- und Mitwirkungspflichten<br />

des Auftragnehmers,<br />

8. mitzuteilende Verstöße des Auftragnehmers<br />

oder der bei ihm beschäftigten<br />

Personen gegen Vorschriften zum Schutz<br />

personenbezogener Daten oder gegen die<br />

im Auftrag getroffenen Festlegungen,<br />

9. der Umfang der Weisungsbefugnisse,<br />

die sich der Auftraggeber gegenüber dem<br />

Auftragnehmer vorbehält,<br />

10. die Rückgabe überlassener Datenträger<br />

und die Löschung beim Auftragnehmer<br />

gespeicherter Daten nach Beendigung<br />

des Auftrags.<br />

Abbildung 2: Wer die Verarbeitung personenbezogener Daten in Auftrag gibt, ist<br />

verpflichtet, den Dienstleister vorher unter die Lupe zu nehmen.<br />

Da der beauftragte Dienstleister seine<br />

Dienstleistung am besten kennt, fragt<br />

man am besten diesen nach einem Muster,<br />

das seine Angaben bereits enthält<br />

und passt dies an den konkreten Auftrag<br />

an. Zur Orientierung dient die von der<br />

BITKOM vorgeschlagene Mustervertragsanlage<br />

[2].<br />

Technische und organisatorische<br />

Maßnahmen<br />

Einen Schwerpunkt der Vereinbarung<br />

bilden die technischen und organisatorischen<br />

Maßnahmen nach § 9 BDSG, die<br />

der Dienstleister garantiert.<br />

§ 9 BDSG regelt: „Öffentliche und nichtöffentliche<br />

Stellen, die selbst oder im Auftrag<br />

personenbezogene Daten erheben,<br />

verarbeiten oder nutzen, haben die technischen<br />

und organisatorischen Maßnahmen<br />

zu treffen, die erforderlich sind, um<br />

die Ausführung der Vorschriften dieses<br />

Gesetzes, insbesondere die in der Anlage<br />

zu diesem Gesetz genannten Anforderungen,<br />

zu gewährleisten. Erforderlich sind<br />

Maßnahmen nur, wenn ihr Aufwand in<br />

einem angemessenen Verhältnis zu dem<br />

angestrebten Schutzzweck steht.“<br />

Die Anlage zu § 9 BDSG sieht die im Kasten<br />

Die acht Gebote der IT-Sicherheit<br />

genannten Gebote vor.<br />

Der Auftraggeber ist in der Pflicht, den<br />

Dienstleister im Vorfeld unter die Lupe<br />

zu nehmen. Mögliche Experten beim<br />

Dienstleister, die man ansprechen kann<br />

sind: Datenschutz- oder IT-Sicherheitsbeauftragter,<br />

IT-Leiter, IT-Revisor oder der<br />

externe IT-Dienstleister. Diese sollte man<br />

nach Dokumentationen fragen,<br />

um die Prüfung vor Ort<br />

vorzubereiten. Anhand des<br />

ersten Eindrucks der Unterlagen<br />

sieht man oft schon, wie<br />

gut der Dienstleister arbeitet<br />

und ob er für die Prüfung vorbereitet<br />

ist und sich mit den<br />

Themen auseinandergesetzt<br />

hat.<br />

Bevor man einen Dienstleister<br />

prüft, sollte man sich einen<br />

Fragenkatalog zusammenstellen,<br />

der sich an der Anlage<br />

nach § 9 BDSG orientiert. Eine<br />

Vorbereitung für die Prüfung<br />

bietet unter anderem der IT-<br />

Grundschutzkatalog des BSI.<br />

18 Ausgabe 01-2013 Admin www.admin-magazin.de


Auftragsdatenverarbeitung<br />

Login<br />

Fragen Sie den Dienstleister, wie er bei<br />

bestimmten Problemen in der Praxis verfährt,<br />

ob es Notfallpläne gibt, wo er die<br />

Daten speichert, wie der Datentransfer<br />

erfolgt, wie die Zugriffsrechte der Mitarbeiter<br />

geregelt sind und vieles mehr.<br />

Ferner gehört in den Fragenkatalog, ob<br />

sich die Mitarbeiter im Unternehmen des<br />

Dienstleisters schriftlich auf das Datengeheimnis<br />

nach § 5 BDSG verpflichtet haben<br />

und über die sich aus diesem Auftrag ergebenden<br />

besonderen Datenschutzpflichten<br />

sowie die bestehende Weisungs- oder<br />

Zweckbindung belehrt sind.<br />

Neben den technischen Einzelheiten liefern<br />

die Antworten einen ersten Eindruck<br />

vom Datenschutz in diesem Unternehmen.<br />

Die Prüfung ist zu protokollieren,<br />

und am Ende sollte eine Anlage zum Vertrag<br />

über die Auftragsdatenverarbeitung<br />

stehen, die die getroffenen technischen<br />

und organisatorischen Vorgaben zusammenfasst.<br />

Einen Mustervertrag der GDD,<br />

an dem man sich gut orientieren kann,<br />

findet man hier [3].<br />

Vor-Ort-Kontrolle nicht<br />

immer möglich<br />

Es ist schwer denkbar, dass ein Cloud<br />

Computing Anbieter am anderen Ende<br />

der Welt zu sich einlädt, um sich prüfen<br />

zu lassen. Der von Google vorgeschlagene<br />

Vertrag für Google Analytics enthält<br />

in der Anlage 2 die technischen und organisatorischen<br />

Maßnahmen. Google hält<br />

für die Prüfung der Maßnahmen einen<br />

Die acht Gebote der IT-Sicherheit<br />

1. Unbefugten den Zutritt zu Datenverarbeitungsanlagen<br />

verwehren, mit denen personenbezogene<br />

Daten verarbeitet oder genutzt<br />

werden (Zutrittskontrolle),<br />

2. Verhindern, dass Unbefugte Datenverarbeitungssysteme<br />

nutzen (Zugangskontrolle),<br />

3. Gewährleisten, dass die zur Benutzung eines<br />

Datenverarbeitungssystems Berechtigten ausschließlich<br />

auf die ihrer Zugriffsberechtigung<br />

unterliegenden Daten zugreifen können, und<br />

dass personenbezogene Daten bei der Verarbeitung,<br />

Nutzung und nach der Speicherung nicht<br />

unbefugt gelesen, kopiert, verändert oder entfernt<br />

werden können (Zugriffskontrolle),<br />

4. Garantieren, dass personenbezogene Daten<br />

bei der elektronischen Übertragung oder während<br />

ihres Transports oder ihrer Speicherung<br />

auf Datenträger nicht unbefugt gelesen, kopiert,<br />

verändert oder entfernt werden können,<br />

Prüfbericht bereit von einem unabhängigen<br />

Wirtschaftsprüfer, der alle 24 Monate<br />

erneuert wird. Dies reicht aus. Es muss<br />

nicht immer eine Vor-Ort-Prüfung sein,<br />

sondern man kann sich aktuelle Prüfberichte,<br />

Testate unabhängiger Instanzen<br />

vorlegen lassen (z.B. Wirtschaftsprüfer,<br />

Revision, Datenschutzbeauftragter, IT-<br />

Sicherheitsabteilung, Datenschutzauditoren,<br />

Qualitätsauditoren) oder eine<br />

geeignete Zertifizierung durch IT-Sicherheits-<br />

oder Datenschutzaudits (z.B. nach<br />

BSI-Grundschutz). Die Unterlagen sollte<br />

man in Kopie verlangen und prüfen und<br />

nicht nur abheften. Nur dann ist die Kontrollpflicht<br />

erfüllt. Es ist ratsam, sich zusätzlich<br />

eine Vor-Ort-Kontrolle vertraglich<br />

vorzubehalten.<br />

Mit der erstmaligen Prüfung vor Auftragsbeginn<br />

ist es nicht getan. „Der Auftraggeber<br />

hat sich vor Beginn der Datenverarbeitung<br />

und sodann regelmäßig von<br />

der Einhaltung der beim Auftragnehmer<br />

getroffenen technischen und organisatorischen<br />

Maßnahmen zu überzeugen.<br />

Das Ergebnis ist zu dokumentieren.“ Man<br />

muss sich in regelmäßigen Abständen<br />

wieder von der IT-Sicherheit überzeugen.<br />

Wie oft dies zu geschehen hat, regelt das<br />

Gesetz nicht. Ein Anlass könnten bekannt<br />

gewordene Sicherheitsmängel sein.<br />

Praxisproblem:<br />

Subunternehmer<br />

In dem Vertrag mit dem IT-Dienstleister<br />

sollten sämtliche Unterauftragnehmer<br />

und dass überprüft und festgestellt werden<br />

kann, an welchen Stellen eine Übermittlung<br />

vorgesehen ist (Weitergabekontrolle),<br />

5. Sorge tragen, dass nachträglich überprüft<br />

und festgestellt werden kann, ob und von wem<br />

personenbezogene Daten in Datenverarbeitungssysteme<br />

eingegeben, verändert oder entfernt<br />

worden sind (Eingabekontrolle),<br />

6. Verantwortung dafür übernehmen, dass personenbezogene<br />

Daten, die im Auftrag verarbeitet<br />

werden, nur entsprechend den Weisungen<br />

des Auftraggebers verarbeitet werden können<br />

(Auftragskontrolle),<br />

7. Gewährleisten, dass personenbezogene Daten<br />

gegen zufällige Zerstörung oder Verlust<br />

geschützt sind (Verfügbarkeitskontrolle),<br />

8. Garantieren, dass zu unterschiedlichen Zwecken<br />

erhobene Daten getrennt verarbeitet werden<br />

können. (Datentrennung)<br />

aufgeführt sein, denen sich der IT-Dienstleister<br />

bedient und geregelt werden, unter<br />

welchen Voraussetzungen dies erlaubt<br />

ist. Der IT-Dienstleister muss den Subunternehmer<br />

ebenfalls nach den Regeln der<br />

Auftragsdatenverarbeitung kontrollieren<br />

und sollte seine Pflichten weiterreichen.<br />

Der Dienstleister sollte einen Datenschutzbeauftragten<br />

benennen. Gesetzlich<br />

vorgeschrieben ist dieser, sofern personenbezogene<br />

Daten erhoben, verarbeitet<br />

oder genutzt werden und damit in der<br />

Regel mindestens 20 Personen beschäftigt<br />

sind. Auch der Auftraggeber tut gut<br />

daran, einen Datenschutzbeauftragten zu<br />

benennen. Wer entgegen dem Gesetz keinen<br />

Datenschutzbeauftragten hat, dem<br />

drohen Sanktionen. Man tut also gut<br />

daran, noch heute den Geschäftsführer<br />

auf Defizite im Bereich Datenschutz hinzuweisen<br />

und vielleicht schon morgen<br />

einen Datenschutzbeauftragten zu benennen,<br />

der Outsourcing-Projekte genau<br />

unter die Lupe nimmt. (jcb)<br />

n<br />

Infos<br />

[1] FAQ des bayerischen Datenschutzbeauftragten:<br />

[http:// www. lda. bayern. de/​<br />

onlinepruefung/ googleanalytics. html# faq]<br />

[2] Mustervorlage des BITKOM: [http://​<br />

www. bitkom. org/ de/ publikationen/​<br />

38336_45940. aspx]<br />

[3] Mustervertrag der GDD: [https:// www. gdd.​<br />

de/ nachrichten/ news/ neues‐gdd‐muster‐zu<br />

r‐auftragsdatenverarbeitung‐gemas‐a7‐11‐<br />

bdsg]<br />

[4] EU-Standardvertragsklauseln: [http://​<br />

eur‐lex. europa. eu/ LexUriServ/ LexUriServ.​<br />

do? uri=OJ:L:2010:039:0005:0018:DE:PDF]<br />

[5] Working Paper der Artikel-29-<br />

Gruppe: [http:// ec. europa. eu/ justice/​<br />

data‐protection/ article‐29/ documentation/​<br />

opinion‐recommendation/ files/ 2012/​<br />

wp196_de. pdf]<br />

Die Autorin<br />

Die Autorin ist Rechtsanwältin & Fachjournalistin<br />

für IT-Recht in Berlin. Sie veröffentlicht seit<br />

1997 zu Fragen des IT-Rechtes. Darüber hinaus<br />

referiert sie zu aktuellen Fragen des Internetrechtes,<br />

gibt Workshops zum<br />

Softwarelizenzrecht oder<br />

zur IT-Sicherheit und unterrichtet<br />

als Lehrbeauftragte<br />

für IT-Recht an der Beuth<br />

Hochschule für Technik.<br />

© Mira Burgund<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

19


Login<br />

Admin-Story<br />

© Mikhail Dudarev, 123RF<br />

Eine Webanwendung mit MongoDB und Bottle<br />

Flaschengeist<br />

Für ein aktuelles Projekt habe ich vor Kurzem nach einem stabilen,<br />

flexiblen und gut skalierbaren Datenbackend für eine Webapplikation<br />

gesucht. Bereits nach kurzer Zeit fiel die Wahl auf die NoSQL-basierte<br />

MongoDB. Thorsten Scherf<br />

Die üblichen Verdächtigen für Datenbank-Systeme<br />

im OpenSource-Bereich<br />

waren in der Vergangenheit schnell ausgemacht.<br />

In Zeiten von Web 2.0 hat sich<br />

jedoch einiges geändert. Statt von MySQL<br />

oder PostgreSQL spricht man heute eher<br />

von CouchDB, FluidDB oder MongoDB.<br />

Diese Datenbanken haben einen ähnlichen<br />

Funktionsumfang wie klassische<br />

SQL-Server, besitzen dabei allerdings<br />

eine wesentlich höhere Performance und<br />

Skalierbarkeit. Diese reicht zwar nicht<br />

an Systeme wie Memcached oder andere<br />

einfache Key/​Value-Store-Systeme<br />

heran, jedoch wird dieses Manko durch<br />

den erhöhten Funktionsumfang bei immer<br />

noch ausgezeichneter Performance<br />

wettgemacht.<br />

Hinzu kommt, dass die Performance von<br />

solchen Systemen sehr gut in der Breite<br />

skaliert. Anstatt also teure Hardware<br />

einkaufen zu müssen, lässt sich eine<br />

Datenbank leicht über mehrere Systeme<br />

verteilen, ohne dass negative Auswirkungen<br />

auf die Funktionalität zu befürchten<br />

wären.<br />

MongoDB<br />

MongoDB ist in allen größeren <strong>Linux</strong>-<br />

Distributionen bereits enthalten. Im<br />

Zusammenspiel mit Python und einem<br />

Webframework lassen sich hiermit in<br />

kurzer Zeit beachtliche Erfolge erzielen.<br />

In meinem Beispiel kommt das Micro-<br />

Webframework Bottle zum Einsatz. Dieses<br />

sehr einfache Framework besteht aus<br />

einer einzelnen Datei, welche mittels<br />

»easy_install« auf dem eigenen System<br />

installiert wird. Das Framework eignet<br />

sich für erste Tests mit MongoDB sehr<br />

gut, da es keinerlei Abhängigkeiten, ausser<br />

auf die Python-Standard-Bibliothek,<br />

besitzt, dabei jedoch eine Menge an<br />

Funktionalität anbietet. So unterstützt es<br />

beispielsweise auch Templates und bringt<br />

einen Webserver von Haus aus mit. Als<br />

Schnittstelle zwischen dem MongoDB-<br />

Service und dem Webframework Bottle<br />

setze ich Pymongo ein, welches ebenfalls<br />

in den meisten Distributionen bereits zur<br />

Verfügung stehen sollte.<br />

MongoDB unterteilt eine Datenbank in<br />

sogenannte Collections, in denen Dokumente<br />

gespeichert sind. Diese enthalten<br />

die Datenbank-Objekte im JSON-Format.<br />

Das Schöne dabei ist, dass die Collections<br />

keinem Schema unterliegen. Das bedeutet,<br />

man kann einfach die gewünschten<br />

Daten in die Datenbank übertragen, ohne<br />

sich groß Gedanken über Schema-Anpassungen<br />

machen zu müssen. Das vereinfacht<br />

die Arbeit ungemein. Die einzelnen<br />

Felder eines Dokuments können dabei<br />

immer noch nach Belieben angefragt<br />

werden, und auch Indizes lassen sich für<br />

oft abgefragte Felder setzen.<br />

20 Ausgabe 01-2013 Admin www.admin-magazin.de


Admin-Story<br />

Login<br />

Für einen ersten Test verwende ich die<br />

Mongo-Shell, um ein solches Dokument<br />

zu erzeugen (Listing 1).<br />

Schemalos<br />

In dem Beispiel ist schön zu sehen, dass<br />

sich die Datensätze durch das Feld Mitglieder<br />

unterscheiden. In zwei Datensätzen<br />

ist es enthalten, im dritten Dokument<br />

fehlt es komplett, was aber kein Problem<br />

ist, da MongoDB ja über kein fixes<br />

Schema verfügt.<br />

Wer seine Dokumente bereits im JSON-<br />

Format vorliegen hat, der kann diese<br />

Abbildung 1: Über ein einfaches HTML-Eingabeformular<br />

soll der Benutzer seinen Lieblingsverein<br />

angeben.<br />

ganz in einem Streich in die Datenbank<br />

importieren:<br />

# mongoimport ‐d football ‐c clubs ‐‐file U<br />

/tmp/myclubs.json<br />

connected to: 127.0.0.1<br />

Mon Dec 3 08:43:26 imported 23 objects<br />

Ein Dokument mit einem bestimmten<br />

Feld abzufragen, ist auch recht einfach:<br />

> db.clubs.find({Mitglieder: {"$gt": U<br />

100000}}){ "_id" : ObjectId("50bd2169a80eU<br />

4531863ea2a8"), "Name" : "FC Schalke 04", U<br />

"Farben" : "BlauWeiß", "Mitglieder" : U<br />

111000, "Anschrift" : [ { "Strasse" : U<br />

"Ernst‐Kuzorra‐Weg 1", "PLZ" : 45891, U<br />

"Stadt" : "Gelsenkirchen" } ] }<br />

Abbildung 2: Die Auswahl bekommt der Benutzer<br />

dann auf einer neuen Seite angezeigt, zusammen<br />

mit der Information, wie oft der Verein bereits von<br />

anderen Benutzern angegeben wurde.<br />

Für eine kleine Webanwendung fehlt nun<br />

noch ein passendes Framework und ein<br />

Stück Software, welches die Verbindung<br />

zwischen Framework und MongoDB herstellt.<br />

Für Erstes kommt, wie eingangs erwähnt,<br />

das Micro-Framework Bottle zum<br />

01 # mongo<br />

Listing 1: Test<br />

02 MongoDB shell version: 2.2.0<br />

03 connecting to: test<br />

04 > use football<br />

05 switched to db football<br />

06 > db.clubs.save({ Name:"FC Schalke 04",<br />

Farben:"BlauWeiß", Mitglieder:111000,<br />

Anschrift:[{Strasse:<br />

"Ernst‐Kuzorra‐Weg 1", PLZ: 45891, Stadt:<br />

"Gelsenkirchen"}] })<br />

07 > db.clubs.save({ Name:"St. Pauli", Farben:"BraunWeiß",<br />

Mitglieder:15000, Anschrift:[{Strasse:<br />

"Heiligengeistfeld 1", PLZ: 20359, Stadt:<br />

"Hamburg"}] })<br />

08 > db.clubs.save({ Name:"FC Nürnberg", Farben:"RotWeiß",<br />

Anschrift:[{Strasse:"Valznerweiherstrasse 200", PLZ:<br />

90480, Stadt: "Nürnberg"}] }<br />

Anzeige<br />

Die heute führenden Spezialisten stammen oft aus der "Freie Software-Szene" und schulen seit<br />

Jahren im <strong>Linux</strong>hotel. Das erklärt die Breite und Qualität unseres Schulungsangebotes:<br />

AJAX * Amavis * Android * Angriffstechniken * Apache * Asterisk * BaseX * BayesianAnalysis * Bind * C/C++ * Cassandra *<br />

CiviCRM * Cloud * Cluster * ClusterFS * CouchDB * CSS3 * CUPS * Debian * DHCP * DNS * DNSSEC * Echtzeit <strong>Linux</strong> *<br />

Embedded <strong>Linux</strong> * eXist-db * Faces * FAI * Firewall * Forensik * FreeBSD * FreeRADIUS * GeoExt * Git * Grails * GRASS *<br />

Groovy * hadoop * Hochverfügbarkeit * HTML5 * Hudson * iSCSI * IPv6 * ITSM * Java * JavaScript * Jenkins * Kernel * KVM<br />

* LDAP * LibreOffice * <strong>Linux</strong> * LPI * m23 * MacOSX * MapFish * Mapserver * Maven * Mikrocontroller * MVS/380 * MySQL *<br />

Nagios * Node.js * OpenBSD * OpenLayers * OpenOffice * openQRM * OpenVPN * OPSI * OSGi * OTRS * Perl * PHP *<br />

Postfix * PostgreSQL * Puppet * Python * QuantumGIS * R * Rails * RedHat * Routing * Request-Tracker RT * Ruby * Samba<br />

* SAN * Scala * Scribus * Shell * Sicherheit * SNMP * Spacewalk * Spamfilter * SQL * Struts * Subversion * SuSE * TCP/IP *<br />

Tomcat * Treiber * TYPO3 * Ubuntu * UML * Unix * Univention * Virenfilter * Virtualisierung * VoIP * WebGIS * Webservices *<br />

Windows Autoinstall * Windowsintegration * x2go * xen * XML * Xpath * Xquery * z/OS * Zabbix * Zend<br />

Fast 100% der Teilnehmer empfehlen uns weiter. Siehe www.linuxhotel.de<br />

Ja, wir geben es zu und haben überhaupt kein schlechtes Gewissen dabei: Unsere Schulungen machen auch Spaß ;-)<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

21


Login<br />

Admin-Story<br />

Einsatz. Um die Funktionen zu demonstrieren,<br />

greift die Beispielanwendung auf<br />

Templates und Views zurück, auch wenn<br />

dies hier nicht zwingend erforderlich ist.<br />

Pymongo stellt die Schnittstelle zwischen<br />

Framework und Datenbank her und überträgt<br />

die Dokumente im BSON-Format<br />

über das Netz.<br />

Views<br />

Meine Anwendung besteht aus einer<br />

Steuerungsdatei (Listing 2) und 2 View-<br />

Dateien, die als Templates definiert sind<br />

(Listing 3 und 4). Bottle erwartet die<br />

View-Dateien dabei im Ordner »views«<br />

unterhalb der eigentlichen Anwendung.<br />

In der Datei »survey.py« erzeugt der Aufruf<br />

in Zeile 6 ein »connection«-Objekt<br />

zur Kommunikation mit dem MongoDB-<br />

Service auf dem gleichen System, auf<br />

dem auch das Webframework läuft.<br />

Listing 3: »views/​main.tpl«<br />

01 <br />

02 <br />

03 <br />

04 <br />

05 My little Bottle example<br />

06 <br />

07 <br />

08 <br />

09 Hi World..here is my little survey!<br />

10 <br />

Listing 2: »survey.py«<br />

01 #!/usr/bin/python<br />

02 <br />

03 import bottle<br />

04 import pymongo<br />

05 <br />

06 connection = pymongo.Connection('localhost',<br />

27017)<br />

07 db = connection.survey<br />

08 clubs = db.clubs<br />

09 <br />

10 @bottle.route('/')<br />

11 def index():<br />

12 return bottle.template('main')<br />

13 <br />

14 @bottle.post('/survey')<br />

In den Zeilen 7-8 wird dann ein Handler<br />

für die Datenbank und die gewünschte<br />

Collection definiert. In Zeile 10 und Zeile<br />

14 wird jeweils eine Route, sprich, eine<br />

URL mit dem dazugehörigen Code definiert.<br />

Die Einsprungsseite (»/«) gibt<br />

lediglich ein Template zurück, das dem<br />

Benutzer eine einfach Umfrageseite präsentiert<br />

(»main.tpl«). Die daraus resultierende<br />

Post-Anweisung wird über die<br />

zweite URL (»/survey«) verarbeitet. Hier<br />

wird das Ergebnis der Umfrage in einem<br />

Dokument mit einem einzigen Feld<br />

(»club«) in der Datenbank gespeichert,<br />

und der Benutzer bekommt einer Ausgabe,<br />

welchen Verein er denn als seinen<br />

Lieblingsverein angegeben hat, und wie<br />

oft dieser schon von anderen Benutzern<br />

angegeben wurde.<br />

Das zweite Template bekommt dabei eine<br />

Variable »club« und »results« übergeben<br />

(Zeile 25). »club« wird dabei der Inhalt<br />

15 def survey():<br />

16 club = bottle.request.forms.get("club")<br />

17 if (club == None or club == ""):<br />

18 club="No club defined..."<br />

19 <br />

20 clubs.save({"club":club})<br />

21 results= clubs.find({"club":club})<br />

22 results = results.count()<br />

23 <br />

24 <br />

25 return bottle.template('result', {"club":club,<br />

"results":results})<br />

26 <br />

27 bottle.run(host='localhost', port=8080,<br />

debug=1)<br />

11 <br />

12 What is your favorite club?<br />

13 <br />

14 input type="submit" value="Submit"><br />

15 <br />

16 <br />

17 <br />

18 <br />

19 <br />

des Eingabebox aus dem ersten Template<br />

und enthält den angegeben Lieblingsverein.<br />

»results« ist das Ergebnis einer Suche<br />

in der Datenbank, wie oft dieser Verein<br />

dort schon aufgeführt ist. Beide Variable<br />

werden dann in dem View-Template<br />

( Listing 4) in Zeile 9 und Zeile 10 verwendet.<br />

Die Anwendung sieht im Webbrowser<br />

dann so aus wie in Abbilung 1<br />

und Abbildung 2 dargestellt.<br />

Zusammenspiel<br />

Das Beispiel zeigt, wie simpel es ist, mit<br />

der Kombination aus Python, MongoDB,<br />

Bottle und Pymongo eine Webanwendung<br />

zu entwickeln. Das Beispiel ist natürlich<br />

bewusst einfach gehalten, aber<br />

zeigt, wie die einzelnen Komponenten<br />

zusammenarbeiten. Das Beispiel geht<br />

auch davon aus, dass MongoDB nur auf<br />

einem einzelnen Server läuft, und dass<br />

der in Bottle eingebaute Webserver zum<br />

Einsatz kommt. In produktiven Umgebungen<br />

sollte dies natürlich anders sein,<br />

aber für Entwicklungsarbeiten eignet sich<br />

das hier vorgestellte Setup sehr gut.<br />

Mittlerweile bin ich dazu übergegangen,<br />

Test-Anwendungen als PaaS-Apps in<br />

Openshift laufen zu lassen. Hier verweise<br />

ich auf einen anderen Artikel von mir<br />

zu der Thematik [1]. Mittlerweile kennt<br />

Openshift auch eine Cartridge, mit der<br />

sich MongoDB als Erweiterung installieren<br />

lässt.<br />

Wer sich nun näher mit dem Thema auseinandersetzen<br />

möchte, findet unter [2]<br />

jede Menge hilfreiche Dokumentation.<br />

Dort gibts auch genaue Beschreibung,<br />

wie eine Installation von MongoDB unter<br />

Openshift funktioniert. (ofr)<br />

n<br />

Infos<br />

[1] Thorsten Scherf, Auf Knopfdruck, <strong>ADMIN</strong><br />

05/​2011, [http:// www. admin‐magazin. de/ Das‐<br />

Heft/ 2011/ 05/ Tagebuch‐eines‐IT‐Nomaden/]<br />

[2] MongoDB: [http:// mongodb.org]<br />

Listing 4: »views/​result.tpl«<br />

01 <br />

02 <br />

03 <br />

04 <br />

05 Results<br />

06 <br />

07 <br />

08 <br />

09 Favorite club: {{club}}<br />

10 It has mentioned {{results}} times far.<br />

11 <br />

12 <br />

13 <br />

Der Autor<br />

Thorsten Scherf arbeitet als Senior Consultant für<br />

Red Hat EMEA. Er ist oft als<br />

Vortragender auf Konferenzen<br />

anzutreffen. Wenn neben<br />

Arbeit und Familie noch<br />

Zeit bleibt, nimmt er gerne<br />

an Marathonläufen teil.<br />

22 Ausgabe 01-2013 Admin www.admin-magazin.de


Open Source goes<br />

Präsentieren auch Sie sich auf der größten Sonderausstellung<br />

der CeBIT 2013 in Halle 6 zum Thema <strong>Linux</strong> und freie Software.<br />

Kleine und mittlere Unternehmen treffen hier auf hochrangige<br />

Entscheider. Nirgendwo sonst finden Sie eine bessere Business-<br />

Umgebung für Ihre Open Source Lösungen.<br />

Ein rundum perfekter Messeauftritt ‒<br />

maximaler Erfolg mit minimalem Aufwand:<br />

• individuelle Standgrößen ab 4 m²<br />

• Alles-inklusive-Service (Standbau, Catering, Konferenzräume, u.v.m.)<br />

• direkte Ansprache zahlreicher Neukunden<br />

• ausgewählte Fachvorträge und Keynotes im Open Source Forum<br />

• Kontakt zur internationalen Open Source Community<br />

Jetzt anmelden!<br />

www.open-source-park.de<br />

oder 0 26 1 - 20 16 902<br />

Wir sind dabei!<br />

83degrees South Ltd., agorum®<br />

Software GmbH, Alfresco Software Ltd.,<br />

All for Accounting GmbH, Ancud IT-Beratung<br />

GmbH, B1 Systems GmbH, CADEMIA-Consult<br />

GmbH, FOSS Group GmbH, GRAU DATA AG,<br />

Heinlein Support GmbH, IFE GmbH, Inmedias.it<br />

GmbH, ITOMIG GmbH, Mathias Kettner GmbH,<br />

Metaways Infosystems GmbH, NETWAYS GmbH,<br />

Opensides Sprl, Open Source Press GmbH,<br />

Pentaprise GmbH, Synetics gesellschaft für<br />

systemintegration mbh, uib gmbh, visual4<br />

GmbH, Würth Phoenix GmbH<br />

und viele mehr...<br />

Veranstalter:<br />

pluspol.de<br />

Marketing Kommunikation Internet<br />

In Kooperation mit:<br />

MEDIALINX AG


Netzwerk<br />

Nagios und VoIP<br />

© Natalia Lukiyanova, 123RF<br />

Nagios-Alarme via VoIP einfach realisiert<br />

Nagios am Apparat<br />

Von Hause aus kann Nagios bei Ausfall eines Dienstes die Admins nur per E-Mail alarmieren. Doch diese Mails<br />

können leicht übersehen werden. Ein Anruf wirkt da nachhaltiger. Benjamin Fleckenstein<br />

Ein klingelndes Telefon ist schwer zu<br />

überhören, und so liegt es nahe, Nagios<br />

das Telefonieren beizubringen, damit es<br />

wahrgenommen wird. Das gelingt beispielsweise<br />

mit einer Kombination von<br />

Nagios und Asterisk. Asterisk ist allerdings<br />

nicht trivial zu konfigurieren, und<br />

eine ganze Telefonanalage nur für das<br />

Monitoring aufbauen und betreuen zu<br />

müssen, ist womöglich doch etwas zu<br />

viel des Guten.<br />

Mithilfe eines SIP-Accounts, den man<br />

für wenig Geld im Internet bekommt,<br />

eines CLI-SIP Clients und eines einfachen<br />

Shellskriptes lässt sich das Gleiche mit<br />

weniger Aufwand realisieren.<br />

Zunächst der SIP Account: Hier hat man<br />

die Qual der Wahl, welchen Anbieter<br />

man verwenden möchte. Prinzipiell geht<br />

es mit jedem VoIP-Anbieter. Die Einrichtung<br />

des Accounts ist trivial, man füllt<br />

das entsprechende Online-Formular aus,<br />

wartet auf die Bestätigungsmail und richtet<br />

sich ein Konto ein.<br />

Der passende SIP-Client<br />

Nun der CLI-SIP-Client: Hier wird es etwas<br />

komplizierter. Es gibt zwar einige<br />

VoIP-Clients, die meisten sind jedoch<br />

für den Desktop gedacht und lassen sich<br />

schlecht bis gar nicht per Skript steuern.<br />

Letzlich erwies sich PJSUA als beste<br />

Wahl. PJSUA ist die Referenzimplementierung<br />

von PJSIP, was wiederum eine<br />

Kommunikationsbibliothek für SIP, RTP,<br />

STUN und einige weitere VoIP-bezogene<br />

Protokolle darstellt.<br />

Abbildung 1: Wie zu sehen, fungiert als Kommando, das die Benachrichtigung übernimmt, hier das E-Mail-Skript.<br />

Leider gibt es keine Pakete von PJSUA,<br />

sodass man es sich selbst aus den Quelle<br />

kompilieren muss, was aber zum Glück<br />

leicht gelingt. Die Quellen von PJSIP/​<br />

PJSUA besorgt man sich via:<br />

wget http://www.pjsip.org/release/2.0.U<br />

/pjproject‐2.0.1.tar.bz2<br />

In dem Verzeichnis, in dem man sie entpackt<br />

hat, reicht dann:<br />

./configure<br />

make dep<br />

make<br />

Nun liegt im Verzeichniss »pjsip‐apps/<br />

bin« eine Datei, die mit »pjsua« beginnt.<br />

Das ist der SIP Client. Ihn kopiert man<br />

sich an eine beliebige Stelle des Systems<br />

und macht ihn dort ausführbar. Nun benötigt<br />

man noch eine Konfigurationsdatei<br />

für den Client, in der man die Zugangsdaten<br />

zum SIP-Provider angibt.<br />

Dafür erstellt man eine Textdatei mit den<br />

Inhalt aus Listing 1. Die Daten muss man<br />

natürlich an den eigenen SIP-Provider<br />

24 Ausgabe 01-2013 Admin www.admin-magazin.de


<strong>ADMIN</strong><br />

Netzwerk & Security<br />

Inklusive:<br />

Der komplette<br />

Jahrgang 2012!<br />

JAHRES-DVD 2012<br />

Alle Artikel des Jahres auf einer DVD<br />

INHALT<br />

■ Artikel zu Storage, Backup,<br />

Security, Monitoring,<br />

Virtualisierung u.v.m.<br />

■ Zum Lesen am Bildschirm<br />

oder Ausdrucken: PDF und<br />

HTML-Format<br />

■ Search Engine für<br />

Artikel-Volltext-Suche<br />

Außerdem auf der DVD:<br />

die admin-toolbox!<br />

Jetzt gleich bestellen!<br />

www.admin-magazin.de/DVD2012 oder 089 - 99 34 11 - 00


Netzwerk<br />

Nagios und VoIP<br />

anpassen, was nicht immer ganz einfach<br />

ist, da die Provider gerne eigene<br />

Bezeichnungen für ID und Realm verwenden.<br />

Im Zweifelsfall hilft die Hotline<br />

des Provider wahrscheinlich gerne weiter.<br />

»‐‐null‐audio« sorgt dafür, dass der Server<br />

keine Audioausgabe verwendet und so<br />

der Rechner das Gespräch nicht über die<br />

Lautsprecher ausgibt.<br />

Das Anruf-Skript<br />

Jetzt braucht man noch ein Skript, das<br />

Nagios im Fall der Fälle aufrufen kann.<br />

Dieses Skript sorgt auch dafür, dass sich<br />

die Benachrichtigungen nicht gegenseitig<br />

in die Quere kommen. Wenn Nagios zwei<br />

Telefonate kurz nacheinander absetzen<br />

muss, so sorgt das Skript dafür, dass der<br />

Listing 1: Provider-Daten<br />

01 ‐‐null‐audio<br />

02 ‐‐registrar sip:sipgate.de<br />

03 ‐‐realm=sipgate.de<br />

04 ‐‐id sip:username@sipgate.de<br />

05 ‐‐username sipgateusername<br />

06 ‐‐password sipgatepasswort<br />

Listing 3: »resource.cfg«<br />

01 # Additional commands, so that nagios can call the<br />

sysadmins<br />

02 define command {<br />

03 command_name notify‐host‐by‐phone<br />

04 command_line /opt/pjsua_wrapper<br />

05 }<br />

06 <br />

07 define command {<br />

08 command_name notify‐service‐by‐phone<br />

09 command_line /opt/pjsua_wrapper<br />

10 }<br />

erste Anruf beendet ist, bevor es den<br />

zweiten startet. Sonst würde der Client<br />

den Dienst verweigern, weil die Leitung<br />

belegt ist, und die zweite Benachrichtigung<br />

würde verloren gehen.<br />

Das Skript benötigt noch zwei weitere<br />

Tools: »expect«, damit es »pjsua« steuern<br />

kann und »text2wave«, damit es aus<br />

einer Textzeile eine WAV Datei erzeugen<br />

kann. Das Tool »text2wave« ist Bestandteil<br />

von Festival, einem Programm zur<br />

Sprachsynthese. Beide Pakete kann man<br />

wieder über die Paketverwaltung installieren.<br />

Danach macht man das Skript aus<br />

Listing 2 ausführbar.<br />

Den Wert von »NUMBER« stellt man auf<br />

die Telefonnummer ein, die Nagios anrufen<br />

soll. »MESSAGE« enthält das, was<br />

der Angerufene zu hören bekommt. Wer<br />

die Telefonnummer nicht fest im Skript<br />

verdrahten möchte, kann Nagios die<br />

Nummer auch übergeben lassen. Über<br />

»DURATION« kann man einstellen, wie<br />

lange der Anruf maximal dauern soll.<br />

Geht in dieser Zeit keiner ans Telefon,<br />

legt das Skript wieder auf. Bei Anrufannahme<br />

spielt es die Nachricht in einer<br />

Schleife ab. In der Zeile, die mit »spawn«<br />

beginnt, muss man gegebenfalls das<br />

letzte Argument an den eigenen SIP Provider<br />

anpassen.<br />

Auf Kommando<br />

Schlussendlich muss man noch Nagios<br />

umkonfigurieren, sodass es das Skript<br />

im Alarmfall aufruft. Zunächst definiert<br />

man dazu ein neues Kommando. Nutzt<br />

man Ubuntu 12.04 und Nagios3, dann<br />

liegt unter »/etc/nagios3/resource.cfg«<br />

die passende Datei. Bei anderen Distributionen<br />

dürfte der Pfad nur geringfühig<br />

unterschiedlich sein. Dort fügt man den<br />

Inhalt von Listing 3 ein.<br />

In Listing 3 ist »/opt/pjsua_wrapper« ist<br />

der Pfad, unter dem das Skript gefunden<br />

werden kann. Gegebenenfalls muss<br />

man ihn anpassen. Anschließend ist nur<br />

noch die »contact«-Definition des Admins<br />

in Nagios anzupassen. Überlicherweise<br />

sieht die Konfiguration etwa so aus:<br />

define contact {<br />

...<br />

service_notification_commands U<br />

notify‐service‐by‐email<br />

host_notification_commands U<br />

notify‐service‐by‐email<br />

...<br />

}<br />

Die beiden Parameter erweitert man einfach<br />

um die neuen Kommandos:<br />

define contact { ...<br />

service_notification_commands<br />

notify-service-by-email,notify-host- U<br />

by-phone host_notification_commands U<br />

notify-service-by-email,<br />

notify-service-by-phone … }<br />

Anschließend Nagios neu starten, und<br />

schon wird der Admin angerufen. (jcb)n<br />

Der Autor<br />

Benjamin Fleckenstein ist Sysadmin bei einem<br />

Hosting und Telekommunikationsunternehmen in<br />

Frankfurt und kümmert sich dort um die Server<br />

namhafter Kunden. In seiner Freizeit beschäftigt<br />

er sich mit Open-Source-Gebäudeautomation und<br />

baut aktuell das notwendige Gebäude.<br />

Listing 2: Anruf-Skript<br />

01 #! /bin/bash<br />

02 <br />

03 EXPECT=/usr/bin/expect<br />

04 PJSUA=/opt/pjsua<br />

05 PJSUACONFIG=/opt/pjsua.conf<br />

06 SOUNDFILE=/tmp/alert.wav<br />

07 TEXT2WAVE=/usr/bin/text2wave<br />

08 DURATION=20<br />

09 NUMBER=01234567890<br />

10 MESSAGE="Monitoring Alert"<br />

11 <br />

12 # Setting a lock file<br />

13 # We can't make more than one call<br />

14 # at a time, because pjsua blocks the port<br />

15 # so we have to make sure that nobody else<br />

tries to call<br />

16 # If there is already a call we have to wait.<br />

17 <br />

18 locked=false<br />

19 while [[ $locked == false ]]; do<br />

20 if [[ ! ‐f /tmp/caller.lock ]]; then<br />

21 touch /tmp/caller.lock<br />

22 locked=true<br />

23 else<br />

24 sleep 5<br />

25 fi<br />

26 done<br />

27 <br />

28 # Generating the message<br />

29 $TEXT2WAVE ‐o $SOUNDFILE ‐f 8000


Netzwerk<br />

IPv6-Migration<br />

© Don Garcia, 123RF<br />

IPv6-Tunneltechnologien<br />

Rausgegraben<br />

Nachdem IPv6 nun das offizielle Internet-Protokoll ist, bleibt nur noch die<br />

Kleinigkeit, alle Rechner im Internet umzustellen. Bis das passiert, verschaffen<br />

Tunneltechnologien eine Übergangslösung. Eric Amberg<br />

Die Migration auf IPv6 nimmt Fahrt auf.<br />

Im Herbst 2012 ließ die Deutsche Telekom<br />

verlauten, dass DSL-Neukunden jetzt mit<br />

Dualstack-Anschlüssen (IPv4+IPv6) angebunden<br />

werden. Auch andere Provider<br />

werden in den nächsten Monaten nachziehen.<br />

In vielen größeren Unternehmen<br />

ist die Umstellung jedoch keine Sache<br />

von wenigen Tagen, sondern von Jahren.<br />

Bereits im Design berücksichtigten die<br />

IPv6-Entwickler, dass die Einführung von<br />

IPv6 in vorhandene IPv4-Netzwerke eine<br />

zum Teil lange Übergangszeit erfordert,<br />

in der beide Technologien nebeneinander<br />

existieren werden. Dieser Artikel erläutert<br />

die verschiedenen Tunneltechnologien<br />

von IPv6.<br />

In der Übergangsphase muss sichergestellt<br />

sein, dass IPv6-Systeme sowohl untereinander<br />

als auch mit IPv4-Systemen<br />

kommunizieren können. Der Begriff<br />

„Knoten“ beschreibt in der IETF-Terminologie<br />

ein aktives System im Netzwerk,<br />

das über IPv4 oder IPv6 kommuniziert.<br />

Dies umfasst neben normalen Workstations<br />

und Servern unter anderem auch<br />

Router. Der RFC 4213 (Transition Mechanisms<br />

for IPv6 Hosts and Routers)<br />

beschreibt folgende Knoten-Typen:<br />

n IPv4-Only-Knoten: Auf dem System<br />

läuft ausschließlich IPv4.<br />

n IPv6-Only-Knoten: Auf dem System<br />

läuft ausschließlich IPv6.<br />

n IPv6/​IPv4-Knoten: Auf dem System<br />

laufen beide IP-Stacks parallel.<br />

n IPv4-Knoten: Das System kommuniziert<br />

mit IPv4. Dies kann entweder<br />

ein IPv4-Only-Knoten oder ein IPv6/​<br />

IPv4-Knoten sein.<br />

n IPv6-Knoten: Das System kommuniziert<br />

mit IPv6. Dies kann entweder<br />

ein IPv6-Only-Knoten oder ein IPv6/​<br />

IPv4-Knoten sein.<br />

Im Folgenden geht es um die Frage, wie<br />

man IPv6 schrittweise und parallel zu<br />

IPv4 einführen kann. Die Herausforderung<br />

dabei besteht in der Überbrückung<br />

und Zusammenführung der beiden Welten.<br />

Hierzu gibt es grundsätzlich die folgenden<br />

Ansätze:<br />

n Dual-Stack: Auf den Systemen im<br />

Netzwerk laufen sowohl IPv4 als auch<br />

IPv6.<br />

n Tunnelmechanismen: In der Regel geht<br />

es hierbei darum, IPv6-Kommunikation<br />

durch IPv4-Bereiche zu tunneln.<br />

Hier werden IPv6-Inseln miteinander<br />

verbunden.<br />

n Translationsmechanismen: Analog<br />

zum NAT-Prinzip kommunizieren<br />

IPv4-Systeme über entsprechende<br />

Mechanismen mit IPv6-Systemen und<br />

umgekehrt.<br />

Während Dual-Stack-Implementationen<br />

die bevorzugte Wahl bei der parallelen<br />

Einführung von IPv6 in ein vorhandenes<br />

IPv4-Netzwerk darstellen, bieten Translationstechnologien<br />

einen Übergang von<br />

einem IP-Stack in den anderen. Jedoch<br />

sind nur Tunneltechnologien in der Lage,<br />

IPv6-Knoten über IPv4-Only-Infrastrukturen<br />

so miteinander zu verbinden, dass<br />

sie direkt über IPv6 miteinander kommunizieren<br />

können.<br />

Tunnel graben<br />

IPv6 wird in vielen Netzwerken schrittweise<br />

und nicht sofort flächendeckend<br />

eingeführt. Ein typisches Szenario in der<br />

Übergangszeit ist also die Kommunikation<br />

von IPv6-Knoten, die über ein IPv4-<br />

Netzwerk miteinander kommunizieren.<br />

Somit muss die IPv6-Kommunikation<br />

über IPv4 transportiert werden, also IPv6<br />

in IPv4 getunnelt. Das bedeutet, dass<br />

das IPv6-Datenpaket in einen IPv4-Header<br />

eingekapselt wird. Der IPv6-Knoten<br />

selbst oder ein Gateway verpackt das<br />

IPv6-Paket in IPv4 und schickt es auf<br />

den Weg. Dabei setzt er das Protocol-Feld<br />

des IPv4-Headers auf den Wert 41. Dies<br />

28 Ausgabe 01-2013 Admin www.admin-magazin.de


IPv6-Migration<br />

Netzwerk<br />

steht laut Standard für „IPv6<br />

in IPv4“ (Abbildung 1).<br />

Der IPv6-Header enthält die<br />

IPv6-Adressen der Ende-zu-<br />

Ende-Kommunikation, also<br />

der kommunizierenden Endpunkte.<br />

Der IPv4-Header enthält<br />

die Quell- und Zieladresse<br />

der Endpunkte innerhalb des<br />

IPv4-Netzwerks. Diese Endpunkte<br />

können bei bestimmten Tunnelmechanismen<br />

den „echten“ Endpunkten<br />

der IPv6-Kommunikation entsprechen.<br />

Meistens wird die Einkapselung jedoch<br />

durch Tunnel-Gateways vorgenommen.<br />

Dies sind regelmäßig die Border-Router<br />

beziehungsweise Firewalls an den Grenzen<br />

des lokalen Netzwerks.<br />

Aus Sicht eines IPv6-Pakets ist die IPv4-<br />

Einkapselung nichts anderes als eine gewöhnliche<br />

Verkapselung auf Link-Layer-<br />

Ebene, analog zu Ethernet. In solchen<br />

Tunnelszenarien kann demnach auf IPv6-<br />

Ebene eine komplett andere Netzstruktur<br />

vorhanden sein als auf IPv4-Ebene. Somit<br />

kann zum Beispiel eine ganze IPv4-Infrastruktur,<br />

bestehend aus vielen Routern<br />

und Netz-Segmenten, aus IPv6-Sicht in<br />

einem „Hop“ zwischen Quelle und Ziel<br />

übersprungen werden.<br />

Der Vorteil von Tunnellösungen liegt in<br />

der Flexibilität, einzelne IPv6-Inseln im<br />

„IPv4-Meer“ zu verbinden. Dennoch sind<br />

Tunneltechnologien gegenüber nativer<br />

IPv6-Kommunikation immer nur zweite<br />

Wahl, da sie zum einen teilweise komplex<br />

zu konfigurieren und zum anderen<br />

fehleranfällig sind. So gilt der Tunnelmechanismus<br />

Teredo als nur bedingt nutzbar,<br />

da er in der überwiegenden Anzahl<br />

aller Fälle nicht korrekt funktioniert [1].<br />

Ähnlich wie VPN-Tunnel lassen sich IPv6-<br />

Tunnel zwischen verschiedenen Punkten<br />

erstellen. RFC 4213 sieht folgende Tunnelkonfigurationen<br />

vor:<br />

n Router-to-Router<br />

n Host-to-Router und Router-to-Host<br />

n Host-to-Host<br />

Dabei verbinden Router-to-Router-Tunnel<br />

IPv6-Infrastrukturen über einen einzige<br />

virtuellen Hop über eine IPv4-Only-Infrastruktur<br />

miteinander. Dies ist der einfachste<br />

und häufigste Fall eines Tunnels,<br />

da die Tunnelkonfiguration nur auf einem<br />

oder wenigen Systemen des Netzwerks<br />

stattfinden muss und die IPv6-Knoten davon<br />

nichts wissen müssen. Ein typisches<br />

Abbildung 1: IPv6 in IPv4 gekapselt: Das IPv6-Paket wird in ein IPv4-Paket<br />

gepackt und wie normale Nutzdaten verschickt.<br />

Beispiel für Router-to-Router-Tunnel ist<br />

ein 6to4-Tunnel. In vielen Fällen verbindet<br />

der Tunnel zwei entsprechende<br />

Router über das IPv4-Internet, um IPv6-<br />

Netzwerke standortübergreifend zu verbinden<br />

(Abbildung 2).<br />

Der Host-to-Router-Tunnel verbindet<br />

einen IPv6/​IPv4-Knoten in einem IPv4-<br />

Only-Netzwerk mit einem IPv6/​IPv4-<br />

Router (Abbildung 3). Hierzu nutzt der<br />

Host ein Tunnel-Interface und entsprechende<br />

Routing-Einträge (zum Beispiel<br />

in Form des Standard-Gateways), die den<br />

entsprechenden Traffic zum Tunnel-Interface<br />

routen. Das Tunnel-Interface verpackt<br />

die IPv6-Pakete in IPv4-Pakete und<br />

sendet sie zum IPv6/​IPv4-Router, der die<br />

IPv6-Pakete zum IPv6-Ziel weiterleitet.<br />

Der Weg zurück (Router-to-Host) funktioniert<br />

analog. ISATAP ist eine Tunneltechnologie,<br />

die nach diesem Prinzip arbeitet.<br />

Dieser Tunnel-Typ dient vorwiegend der<br />

Verbindung von IPv6-Knoten innerhalb<br />

eines Netzwerks einer Organisation.<br />

Ein Host-to-Host-Tunnel verbindet die<br />

kommunizierenden Endpunkte direkt<br />

miteinander über einen IPv4-Tunnel.<br />

Erst am Endpunkt der Kommunikation<br />

wird das gekapselte IPv6-Paket wieder<br />

entpackt. Dieses Prinzip kommt ebenfalls<br />

bei der ISATAP-Tunneltechnologie zum<br />

Einsatz und dient der Kommunikation<br />

zwischen zwei IPv6-Knoten<br />

innerhalb eines IPv4-Unternehmensnetzwerks.<br />

Tunnel-Typen<br />

Es gibt grundsätzlich zwei<br />

verschiedene Arten von IPv6-<br />

Tunnels: konfigurierte Tunnel<br />

und automatische Tunnel. Bei<br />

konfigurierten Tunneln muss der Administrator<br />

die Tunnel manuell auf den jeweiligen<br />

Tunnel-Endpunkten einrichten.<br />

Hierbei wird die IPv4-Zieladresse des<br />

Remote-Endpunkts nicht in der IPv6-<br />

Adresse eingebettet, wie das bei automatischen<br />

Tunneln in der Regel der Fall<br />

ist. Konfigurierte Tunnel nutzen manuell<br />

erstellte Tunnel-Interfaces, die eine feste<br />

Quell- und Zieladresse definieren.<br />

Bei automatischen Tunneln ist keine manuelle<br />

Konfiguration erforderlich. Die<br />

Tunnel werden dynamisch bei Bedarf aufgebaut,<br />

die IPv4-Zieladressen sind meistens<br />

in der IPv6-Adresse eingebettet. Es<br />

gibt verschiedene Tunneltechnologien:<br />

n 6to4: wird für die Verbindung zwischen<br />

IPv6-Knoten über das IPv4-Internet<br />

verwendet.<br />

n 6rd: eine Weiterentwicklung von 6to4<br />

ohne die Einschränkung der fest definierten<br />

6to4-Präfixe.<br />

n ISATAP: für die Verbindung zwischen<br />

IPv6-Knoten in einem IPv4-Intranet.<br />

n Teredo: Ermöglicht die Verbindung<br />

von IPv6-Knoten über NAT.<br />

6to4 – fürs Internet<br />

6to4 kann als Router-to-Router-, Hostto-Router-<br />

und Router-to-Host-Tunnel<br />

dienen [2]. In der Regel baut man den<br />

Abbildung 2: Router-zu-Router-Tunnel verbinden zum Beispiel zwei IPv6-fähige Standorte.<br />

Abbildung 3: Ein Host-zu-Router-Tunnel bindet einen IPv6-fähigen Rechner über ein IPv4 an einen IPv6-<br />

Router an, etwa im Firmennetz.<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

29


Netzwerk<br />

IPv6-Migration<br />

Abbildung 4: Ein 6to4-Tunnel kann als Router-to-Router-, Host-to-Router- und<br />

Router-to-Host-Tunnel dienen.<br />

Tunnel jedoch als Router-to-<br />

Router-Konfiguration auf.<br />

Dabei behandelt 6to4 das gesamte<br />

IPv4-Internet als einen<br />

einzigen Link. Das Präfix von<br />

6to4 lautet 2002::/​16, beginnt<br />

also immer mit 2002. Daran<br />

ist eine 6to4-Tunneladresse zu erkennen.<br />

Die nächsten 32 Bit der Adresse enthalten<br />

die hexadezimale IPv4-Adresse des Remote-Endpunkts<br />

des Tunnels, also in der<br />

Regel ein 6to4-Router beziehungsweise<br />

6to4-Relay im Internet. Dann folgen die<br />

16 Bit lange Subnet-ID und die Interface-<br />

ID des Zielsystems (Abbildung 4).<br />

Windows-Systemen ab Windows Vista<br />

erstellen automatisch ein 6to4-Tunnelinterface,<br />

wenn das System auf einer<br />

seiner Schnittstellen eine öffentliche<br />

IPv4-Adresse verwendet und keine andere<br />

IPv6-Konnektivität (nativ oder über<br />

ISATAP) feststellt. In diesem Fall erhält<br />

das 6to4-Tunnelinterface die IPv6-Adresse<br />

2002:WWXX:YYZZ::WWXX:YYZZ,<br />

wobei WWXXYYZZ für die öffentliche<br />

IPv4-Adresse steht. Ist die öffentliche<br />

IPv4-Adresse eines Windows Server<br />

2012-Computers also zum Beispiel<br />

131.107.1.1, so lautet die 6to4-Tunneladresse<br />

2002:836B:101::836B:101.<br />

6to4 nutzt einige Komponenten, die unterschiedliche<br />

Aufgaben übernehmen:<br />

n 6to4-Host: ein nativer IPv6-Host, der<br />

mindestens eine 6to4-Adresse besitzt<br />

(Präfix 2002::/​16), über die er erreichbar<br />

ist. Er hat jedoch kein 6to4-Tunnel-Interface,<br />

da er nicht über IPv4<br />

kommuniziert. Er ist der Endpunkt<br />

einer IPv6-Kommunikation, die über<br />

einen 6to4-Tunnel geleitet wird.<br />

n 6to4-Router: ein IPv6/​IPv4-Router, der<br />

ein 6to4-Tunnel-Interface hat, über das<br />

er Traffic zwischen 6to4-Hosts zu einem<br />

anderen 6to4-Router, 6to4-Relay<br />

oder 6to4-Host weiterleitet. 6to4-Router<br />

müssen entsprechend konfiguriert<br />

werden – egal auf welcher Plattform.<br />

n 6to4-Host/​Router: ein IPv6/​IPv4-Host,<br />

der direkt ans Internet angeschlossen<br />

ist. Im Gegensatz zum 6to4-Router<br />

leitet er nur seinen eigenen Traffic<br />

über 6to4 zu anderen IPv6-Knoten<br />

weiter, nicht aber den Traffic anderer<br />

Systeme.<br />

n 6to4-Relay: im Gegensatz zu 6to4-Routern<br />

leitet ein 6to4-Relay den Traffic<br />

direkt in das IPv6-Internet. Das bedeutet,<br />

dass ein 6to4-Relay über BGP an<br />

das Internet angeschlossen sein muss,<br />

während 6to4-Router ein bestimmtes<br />

IPv6-Unternehmensnetzwerk verbinden.<br />

So funktioniert 6to4<br />

Jede 6to4-Site besitzt ein eigenes 6to4-<br />

Präfix (2002:WWXX:YYZZ::/​48). Der<br />

Rest der 6to4-Adresse definiert das Subnetz<br />

und die Interface-ID des Hosts in der<br />

Site. Aus Sicht eines 6to4-Host/​Routers<br />

besteht die gesamte 6to4-Site aus einem<br />

einzigen Computer: ihm selbst. Für einen<br />

6to4-Router kann die 6to4-Site aus bis<br />

zu 65 536 Subnetzen bestehen. In jedem<br />

Fall sieht er sämtliche Subnetze der Site.<br />

Eine 6to4-Site kann andererseits aus einer<br />

einzigen IPv4-Adresse bestehen, über die<br />

die Site erreichbar ist. Der 6to4-Router<br />

propagiert in seinen Router Advertisements<br />

das 6to4-Präfix an die internen<br />

Knoten, sodass 6to4 auch problemlos mit<br />

Autoconfiguration funktioniert.<br />

Der Trick ist nun, dass die IPv4-Adresse<br />

der Site des Zielhosts in der 6to4-Zieladresse<br />

enthalten ist. Die beteiligten Systeme<br />

extrahieren diese Adresse und nutzen<br />

sie, um den IPv4-Teil der Wegstrecke<br />

zu überbrücken. Im Beispielszenario von<br />

Abbildung 5: WKS1 möchte mit WKS2<br />

Abbildung 5: Ein Beispiel-Szenario für den Einsatz von 6to4.<br />

kommunizieren und löst den<br />

FQDN (Fully Qualified Domain<br />

Name) von WKS2 auf.<br />

Der DNS-Server liefert die<br />

Adresse 2002:9D3C:101:F::1<br />

zurück. Aus dem Präfix entnimmt<br />

WKS1 zunächst, dass<br />

es sich hierbei um eine 6to4-Adresse<br />

handelt. Da er als 6to4-Host/​Router mit<br />

einer öffentlichen IPv4-Adresse selbst in<br />

der Lage ist, das IPv6-Paket in IPv4 zu<br />

tunneln, identifiziert er durch die Bits<br />

17 bis 48 des Präfixes die IPv4-Adresse<br />

des 6to4-Routers als 157.60.1.1. Das getunnelte<br />

Paket wird nun an den 6to4-<br />

Router gesendet, der das Paket wieder<br />

entpackt und entsprechend nach intern<br />

weiterleitet. Da WKS1 seinerseits als Absenderadresse<br />

seine 6to4-Tunneladresse<br />

2002:836B:101::836B:101 verwendet hat,<br />

kann der 6to4-Router das Antwortpaket<br />

von WKS2 an die korrekte IPv4-Adresse<br />

131.107.1.1 zustellen, die er dem Präfix<br />

von WKS1 entnimmt.<br />

Suche Relay<br />

Sollen native IPv6-Adressen im IPv6-Internet<br />

angesprochen werden, sucht der<br />

6to4-Router beziehungsweise 6to4-Host<br />

ein nahes 6to4-Relay. Hierfür existiert die<br />

IPv4-Anycast-Adresse 192.88.99.1. IPv6-<br />

Pakete an native IPv6-Adressen werden<br />

also von 6to4-aktivierten Knoten ebenfalls<br />

eingekapselt, wobei die Zieladresse<br />

des IPv4-Headers 192.88.99.1 ist. Diese<br />

Pakete landen beim nächstgelegenen<br />

6to4-Relay und werden gemäß normaler<br />

IPv6-Routing-Mechanismen zugestellt.<br />

30 Ausgabe 01-2013 Admin www.admin-magazin.de


IPv6-Migration<br />

Netzwerk<br />

Die Rückantwort des IPv6-Only-Knotens<br />

wird ebenfalls über ein 6to4-Relay geroutet,<br />

wobei dies nicht zwangsläufig dasselbe<br />

sein muss wie auf dem Hinweg.<br />

Dies kann in der Praxis zu den typischen,<br />

durch asymmetrisches Routing verursachten<br />

Problemen führen, zum Beispiel<br />

bei Stateful-Firewalls, die Antwortpakete<br />

nicht zuordnen können. In diesem Zusammenhang<br />

muss auch sichergestellt<br />

sein, dass die Knoten im IPv6-Internet<br />

eine Route zu einem 6to4-Relay kennen<br />

– dies ist jedoch derzeit nicht immer der<br />

Fall. Daneben hat 6to4 den Nachteil, dass<br />

NAT nur dann unterstützt wird, wenn<br />

der 6to4-Router beziehungsweise das<br />

6to4-Relay gleichzeitig das NAT-Device<br />

ist. 6to4 wird von den meisten gängigen<br />

Betriebssystem-Plattformen unterstützt.<br />

6rd – die Evolution<br />

Die Tunneltechnologie 6rd [3] basiert auf<br />

6to4 und wurde von Rémi Després entworfen.<br />

6rd und 2007 vom französischen<br />

Provider FREE in wenigen Monaten eingeführt.<br />

Die Buchstaben „RD“ stehen einerseits<br />

für Rapid Deployment und andererseits<br />

für die Initialen des Entwicklers.<br />

Im Gegensatz zu 6to4 arbeitet 6rd mit den<br />

Präfixen der Endkunden, statt ein eigenes<br />

Präfix zu nutzen. Dies vereinfacht die<br />

Einführung deutlich. Nachdem zunächst<br />

ein von Després selbst geschriebener<br />

Informational-RFC veröffentlicht wurde,<br />

bereitet die IETF die Standardisierung<br />

nun im Standard-RFC 5969 vor.<br />

Im Gegensatz zu 6to4 wandern die Daten<br />

für die Kommunikation zwischen in-<br />

Ein Windows-System erstellt für jedes<br />

LAN-Interface, das ein eigenes DNS-Suffix<br />

erhält (und damit in einem eigenen<br />

Subnetz ist), ein separates ISATAP-Tunternen<br />

IPv6-Only-Knoten und externen<br />

IPv6-Only-Knoten, die über das IPv4-<br />

Internet verbunden sind, über Providereigene<br />

6rd-Relays. Der Provider behält<br />

die vollständige Kontrolle über die IPv6-<br />

Kommunikation, die über ihn läuft und<br />

kann daher auch seine eigenen Präfixe<br />

nutzen. Da auch hier die öffentliche<br />

IPv4-Adresse des 6rd-Relays kommuniziert<br />

werden muss, ist sie ebenfalls in die<br />

IPv6-Adresse integriert.<br />

Eine Besonderheit bei 6rd ist allerdings,<br />

dass das einem Provider zugewiesene<br />

Präfix flexibel ist und somit bei längeren<br />

Präfixen nicht mehr genügend Bits in<br />

der IPv6-Adresse zur Verfügung stehen.<br />

Erhält der Provider ein Standard-Präfix<br />

(/​32) von der Regional Internet Registry<br />

(RIR), so kann er zwar die IPv4-Adresse<br />

in den folgenden 32 Bits unterbringen,<br />

dem Kunden aber dann nur noch ein<br />

einzelnes Subnetz zur Verfügung stellen,<br />

da die hinteren 64 Bits der IPv6-Adresse<br />

für die Interface-ID reserviert sind.<br />

Im Fall von FREE erhielt der Provider<br />

später ein /26-Präfix. Die Adresse wurde<br />

so aufgeteilt, dass nach dem Präfix die<br />

IPv4-Adresse hexadezimal eingebettet<br />

ist, dann zwei reservierte Bits folgen<br />

und schließlich die 4 Bit lange Subnet-<br />

ID. Eine andere Variante, um bei längeren<br />

Provider-Präfixen festgelegte Bits zu<br />

sparen, besteht darin, redundante Teile<br />

der IPv4-Adresse auszulassen. Nutzt ein<br />

Provider für seine Kunden zum Beispiel<br />

immer ein bestimmtes /18-Subnetz, kann<br />

er die vorderen 18 Bits der IPv4-Adresse<br />

weglassen, ohne relevante Informationen<br />

zu verlieren. 6rd ist ein interessanter An-<br />

satz mit dem Potenzial, das alte 6to4<br />

mittelfristig weitgehend abzulösen.<br />

ISATAP – fürs Intranet<br />

Das Intra-Site Automatic Tunnel Addressing<br />

Protocol (ISATAP) kommt bei Hostto-Host-,<br />

Host-to-Router- und Router-to-<br />

Host-Verbindungen zum Einsatz. Router-to-Router-Verbindungen<br />

sind nicht<br />

vorgesehen. ISATAP wird genutzt, um<br />

in einem Organisationsnetzwerk IPv6/​<br />

IPv4-Knoten über eine IPv4-Infrastruktur<br />

miteinander zu verbinden. Es ist nicht für<br />

die Verbindung über das Internet konzipiert.<br />

ISATAP sollte nicht in produktiven<br />

Netzwerken eingesetzt werden sollte,<br />

weil es in erster Linie Testzwecken dient<br />

(Abbildung 7).<br />

ISATAP ist in RFC 5214 festgelegt und<br />

erfordert auf den Hosts keine manuelle<br />

Konfiguration. Es wurde von Cisco und<br />

Microsoft entwickelt, wird aber auch von<br />

<strong>Linux</strong> unterstützt [4]. Wie auch 6to4<br />

nutzt ISATAP ein virtuelles Tunnel-Interface,<br />

das automatisch angelegt und mit<br />

einer IPv6-Adresse versehen wird. Dabei<br />

kann ein beliebiges Unicast-/​64-Präfix<br />

genutzt werden (also auch Link-Local).<br />

Die IPv4-Adresse des jeweiligen LAN-<br />

Interfaces wird am Ende der Interface-ID<br />

eingebunden. Je nachdem, ob es sich<br />

um eine globale IPv4-Adresse oder eine<br />

private IPv4-Adresse nach RFC 1918<br />

handelt, haben ISATAP-Adressen das folgende<br />

Format:<br />

n Globale IPv4-Adressen: 64-Bit-Unicast-<br />

Präfix:200:5EFE:w.x.y.z<br />

n Private IPv4-Adressen: 64-Bit-Unicast-<br />

Präfix:0:5EFE:w.x.y.z<br />

Hierbei steht w.x.y.z für eine IPv4-Adresse<br />

in normaler Punktnotation. Eine<br />

mögliche ISATAP-Adresse wäre dann zum<br />

Beispiel 2001:db8:200:5EFE:85.25.66.51.<br />

Das ISATAP-Tunneling-Interface betrachtet<br />

den IPv4-Teil des Netzwerks übrigens<br />

als ein einziges Link-Layer-Segment, analog<br />

zu Ethernet. Die Link-Layer-Verkapselung<br />

geschieht demnach aus Sicht von<br />

ISATAP durch IPv4.<br />

So funktioniert ISATAP<br />

Abbildung 6: Bei 6rd wandern die Daten für die Kommunikation zwischen internen IPv6-Only-Knoten über<br />

Provider-eigene 6rd-Relays.<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

31


Netzwerk<br />

IPv6-Migration<br />

neling-Interface. Diese ISATAP-Interfaces<br />

befinden sich ab Vista SP1 zunächst im<br />

Status „Disconnected“, solange der Name<br />

ISATAP nicht aufgelöst werden kann. Hinter<br />

diesem DNS-Namen verbirgt sich die<br />

IPv4-Adresse eines ISATAP-Routers. Kann<br />

der Name „ISATAP“ aufgelöst werden,<br />

geschieht Folgendes:<br />

n Die ISATAP-Interfaces weisen<br />

sich eine Link-local-Adresse zu:<br />

FE80::5EFE:w.x.y.z beziehungsweise<br />

FE80::200:5EFE:w.x.y.z.<br />

n Die ISATAP-Hosts senden über das<br />

ISATAP-Tunneling-Interface per IPv4<br />

eine Router-Solicitation-Nachricht unicast<br />

an die IPv4-Adresse des ISATAP-<br />

Routers<br />

n Der ISATAP-Router antwortet mit einer<br />

IPv4-Router-Advertisement-Nachricht<br />

unicast an die IPv4-Adresse des ISA-<br />

TAP-Hosts, in der er sich selbst als<br />

Standardgateway ankündigt und das<br />

Präfix für das ISATAP-Subnetz propagiert.<br />

Dies kann ein Global-Unicastoder<br />

ein Unique-Local-Präfix sein.<br />

Die Kommunikation mit dem Router<br />

geschieht per IPv4-Unicast, da der normale<br />

Weg per IPv6-Multicast nicht zur<br />

Verfügung steht, um Router Solicitationund<br />

Router-Advertisement-Nachrichten<br />

auszutauschen. IPv4 Multicast kann hier<br />

nicht verwendet werden, da dies eine<br />

subnetzübergreifende IPv4-Multicast-<br />

Infrastruktur erfordern würde.<br />

Der ISATAP-Router ist in einem ISATAP-<br />

Netzwerk zur initialen Aktivierung der<br />

ISATAP-Tunneling-Interfaces nötig. Er<br />

muss aber nicht unbedingt Präfixe zuweisen,<br />

da in einem lokalen ISATAP-<br />

Segment die ISATAP-Hosts untereinander<br />

über ihre Link-Local-Adressen kommunizieren<br />

können. Der ISATAP-Router kann<br />

darüber hinaus jedoch ISATAP-Hosts mit<br />

dem nativen IPv6-Teil des Unternehmens-<br />

Netzwerks verbinden. Dazu ist allerdings<br />

ein Global-Unicast- oder Unique-Local-<br />

Präfix nötig, das über die Router Advertisements<br />

zugewiesen werden muss. In<br />

diesem Fall können die ISATAP-Hosts<br />

über die per Autoconfiguration gebildeten<br />

Adressen auch mit IPv6-Knoten außerhalb<br />

des eigenen ISATAP-Subnetzes<br />

kommunizieren, in dem sie den ISATAP-<br />

Router als Standardgateway verwenden.<br />

Im Gegensatz zu den ISATAP-Hosts muss<br />

der ISATAP-Router entsprechend manuell<br />

konfiguriert werden.<br />

Abbildung 7: Das ISATAP-Protokoll konfiguriert Rechner automatisch. Der Einsatz ist jedoch aufs Intranet<br />

beschränkt und dient vorwiegend Testzwecken.<br />

ISATAP hat unter Windows den Vorteil,<br />

schnell implementiert werden zu können.<br />

Der Nachteil besteht darin, dass die<br />

Kommunikation auf das Unternehmensnetzwerk<br />

beschränkt ist und nicht für die<br />

Kommunikation mit Systemen im Internet<br />

ausgelegt ist. Weiterhin ist ISATAP in<br />

vielen NAT-Szenarien nicht nutzbar.<br />

Teredo<br />

6to4 bietet IPv6-Tunnel über das IPv4-<br />

Internet, hat jedoch den Nachteil, dass<br />

die 6to4-Router immer eine offizielle<br />

IPv4-Adresse benötigen. Liegen sie hinter<br />

einem NAT-Device, funktioniert 6to4<br />

nicht. Hier setzt Teredo an. Dabei handelt<br />

es sich um eine Tunneltechnologie, die<br />

von Mircosoft entwickelt wurde und insbesondere<br />

dort zum Einsatz kommt. Es<br />

gibt jedoch auch eine Implementation für<br />

<strong>Linux</strong> [5]. Der Name leitet sich übrigens<br />

von „Teredo navalis“ ab und ist die Bezeichnung<br />

für einen Schiffsbohrwurm.<br />

Teredo ist in den RFCs 4380 und 5991<br />

definiert und bietet IPv6-Tunnel für IPv6-<br />

Knoten an, die sich hinter NAT-Devices<br />

befinden, die keine 6to4-Router sind.<br />

Dazu tunnelt Teredo die IPv6-Pakete<br />

nicht nur in IPv4, sondern zusätzlich in<br />

UDP. Das bedeutet, dass das originale<br />

IPv6-Paket als Payload von UDP transportiert<br />

wird. Dies erhöht die Chance, durch<br />

NAT-Devices hindurchzukommen. Dabei<br />

kann das getunnelte Paket grundsätzlich<br />

auch problemlos mehrere NAT-Stufen<br />

durchqueren.<br />

Dabei spielen die NAT-Typen eine wichtige<br />

Rolle. Nach RFC 3489 wird unterschieden<br />

in:<br />

n Cone-NAT: Es existiert eine 1-zu-1-<br />

Zuordnung zwischen internen und<br />

externen Adressen, die dementsprechend<br />

auch von extern angesprochen<br />

werden können.<br />

n Restricted-NAT: Die Kontaktaufnahme<br />

von außen kann nur dann geschehen,<br />

wenn von innen bereits eine Verbindung<br />

zuvor aufgebaut wurde.<br />

n Symmetric-NAT: Die interne Adresse<br />

kann verschiedenen externen Adressen<br />

zugewiesen werden und ist daher<br />

von außen nicht eindeutig identifizierbar.<br />

In der Praxis ist diese Unterscheidung jedoch<br />

nur ein Anhaltspunkt, da viele NAT-<br />

Router Mischformen verwenden. Teredo<br />

funktioniert grundsätzlich mit Cone-NAT<br />

und Restricted-NAT. Teredo definert die<br />

folgenden Komponenten:<br />

n Teredo-Clients: Dies sind IPv6/​IPv4-<br />

Knoten, die Teredo-Tunneling-Interfaces<br />

unterstützen (ab Windows XP<br />

SP1).<br />

n Teredo-Server: IPv6/​IPv4-Knoten, die<br />

sowohl an das IPv4- als auch an das<br />

IPv6-Internet angeschlossen sind. Sie<br />

weisen Teredo-Präfixe zu und unterstützen<br />

die Teredo-Clients bei der<br />

Kontaktaufnahme zu anderen Teredo-<br />

Clients oder IPv6-Only-Knoten. Teredo-Server<br />

lauschen per Default auf<br />

Port 3544/​udp.<br />

n Teredo-Relays: IPv6/​IPv4-Router, die<br />

Pakete von Teredo-Clients aus dem<br />

IPv4-Internet in das IPv6-Internet<br />

weiterleiten. Sie arbeiten teilweise mit<br />

Teredo-Servern zusammen.<br />

n Host-spezifisches Teredo-Relay: Dieses<br />

Relay ist ebenfalls im IPv6- und<br />

32 Ausgabe 01-2013 Admin www.admin-magazin.de


IPv6-Migration<br />

Netzwerk<br />

IPv4-Internet angeschlossen. Ist ein<br />

IPv6-Knoten auch IPv4-fähig, kann er<br />

über ein Host-spezifisches Teredo-Relay<br />

direkt über IPv4 mit dem Teredo-<br />

Client kommunizieren. In diesem Fall<br />

ist kein Teredo-Relay notwendig und<br />

damit keine Kommunikation über das<br />

IPv6-Internet.<br />

Die Teredo-Adresse besteht aus einem<br />

32-Bit-Präfix (2001::/​32), gefolgt von der<br />

hexadezimalen IPv4-Adresse des Teredo-<br />

Servers. Die hinteren 64-Bits teilen sich<br />

in drei Bestandteile auf. Die Flags (16<br />

Bits) definieren insbesondere die Art des<br />

NAT. Der chiffrierte externe Port (16 Bits)<br />

gibt den Port an, über den der interne<br />

Teredo-Client durch das NAT-Device von<br />

außen erreichbar ist. Diesen bestimmt<br />

der Teredo-Server durch die Analyse des<br />

Source-Ports der Pakete, die vom Client<br />

bei ihm ankommen und nennt ihn dem<br />

Client im Antwortpaket. Da einige NAT-<br />

Geräte versuchen, eine im Payload enthaltende<br />

Port-Angabe auf die interne<br />

Portnummer zu übersetzen, wird dieser<br />

Wert mit XOR verschlüsselt. Die letzten<br />

32 Bits enthalten die chiffrierte externe<br />

IPv4-Adresse, über die der Client<br />

erreichbar ist.<br />

IPv6-Blase<br />

Teredo-Adressen dieser Art werden ausschließlich<br />

den Teredo-Clients zugewiesen.<br />

Teredo-Server und ‐Relays erhalten<br />

nur native IPv4- beziehungsweise IPv6-<br />

Adressen. Die Kommunikation wird nun<br />

von den Teredo-Clients über die Teredo-<br />

Server initiiert, die den Teredo-Clients<br />

mitteilen, über welche offiziellen IP-<br />

Adressen und Ports sie zu sehen sind.<br />

Mit diesen Informationen macht Teredo<br />

sich die NAT-Session-Einträge zunutze,<br />

um die internen Systeme auch von außen<br />

ansprechen zu können.<br />

Um die NAT-Verbindungen aufrechtzuerhalten,<br />

senden Teredo-Clients in regelmäßigen<br />

Abständen sogenannte Bubble-Pakete<br />

an den Teredo-Server. Dabei handelt<br />

es sich um „leere“ IPv6-Pakete, die in<br />

einem IPv4-UDP-Paket eingekapselt sind.<br />

Möchten zwei Teredo-Clients am selben<br />

Link miteinander kommunizieren, so<br />

nutzen sie Bubble-Pakete als Ersatz für<br />

den Neighbor Discovery-Prozess, um die<br />

Kommunikation zu initiieren. Möchte ein<br />

Teredo-Client mit einem anderen Teredo-<br />

Client einer Remote-Site sprechen, hängt<br />

die Kommunikation vom NAT-Typ ab.<br />

Befinden sich beide Knoten hinter einem<br />

Cone-NAT, können die Systeme<br />

direkt miteinander in Verbindung treten,<br />

da die Verbindungsaufnahme nach<br />

der Definition von Cone-NAT von jeder<br />

Source-IP-Adresse aus möglich ist.<br />

Befinden sich die Knoten jedoch hinter<br />

Routern, die Restricted-NAT verwenden,<br />

so werden zunächst Bubble-Pakete zu<br />

den Remote-Sites und zum Teredo-Server<br />

gesendet, der die Verbindung initiiert. Die<br />

eigentliche Kommunikation geht nach<br />

der initialen Öffnung der Verbindung direkt<br />

zwischen den beiden Kommunikationspartnern,<br />

der Teredo-Server hilft hier<br />

nur beim Verbindungsaufbau.<br />

Im Falle der Verbindung eines Teredo-<br />

Clients mit einem nativen IPv6-Knoten<br />

im IPv6-Internet dient der Teredo-Server<br />

jedoch auch als Router in das IPv6-Internet.<br />

Verbindungen, die vom IPv6-Internet<br />

zu einem Teredo-Client aufgebaut werden<br />

sollen, werden mithilfe des nächstgelegenen<br />

Teredo-Relays beziehungsweise<br />

Host-spezifischen Relays realisiert.<br />

Durch diese komplexen Mechanismen ist<br />

Teredo zum einen sehr langsam beim<br />

Verbindungsaufbau (unter anderem wegen<br />

Timeouts) und zum anderen unzuverlässig,<br />

weil die Verbindungen nur unter<br />

bestimmten Bedingungen überhaupt<br />

aufgebaut werden können. Für einen<br />

produktiven Einsatz ist Teredo derzeit<br />

eher nicht geeignet.<br />

Fazit und Ausblick<br />

Wer die Wahl hat, sollten immer native<br />

IPv6-Verbindungen verwenden. Leider ist<br />

das aber bisher in den seltensten Fällen<br />

möglich. Daher sind IPv6-Tunnel der-<br />

Abbildung 8: Eine Teredo-Adresse kodiert neben dem Teredo-Server die NAT-Flags, den Port und die externe<br />

Adresse. Der Verbindungsaufbau dauert aber seine Zeit.<br />

zeit oft die einzige Möglichkeit, IPv6-<br />

Systeme miteinander zu verbinden. Je<br />

nach Anwendungsgebiet gibt es hierfür<br />

verschiedene, in diesem Artikel vorgestellte<br />

Tunnel-Technologien, von denen<br />

jede ihre Vor- und Nachteile besitzt.<br />

Grundsätzlich ist jedoch kein einziger<br />

Tunnelmechanismus dafür ausgelegt, auf<br />

Dauer zu bestehen – letztlich sollen alle<br />

Tunnel irgendwann durch native IPv6-<br />

Verbindungen ersetzt werden. Dies sollte<br />

man auch bei der Planung der Migration<br />

berücksichtigen. Denn der Abbau eines<br />

etablierter Tunnelmechanismus bedeutet<br />

in einigen Jahren unter Umständen zusätzlichen<br />

Aufwand.<br />

Neben den hier vorgestellten Technologien<br />

existieren zusätzlich sogenannte<br />

Tunnelbroker (wie zum Beispiel SixXS),<br />

die für Enduser die Möglichkeit schaffen,<br />

über verschiedene, teils proprietäre<br />

Technologien inklusive Tunnel-Client-<br />

Software, aus dem internen Netz IPv6-<br />

Systeme im Internet ansprechen zu<br />

können. Doch auch diese Lösungen<br />

sind letztlich Provisorien, die den Zeitraum<br />

bis zur Bereitstellung nativer IPv6-<br />

Anbindungen überbrücken sollen. Die<br />

Erfahrung zeigt aber: Manchmal sind<br />

Provisorien die besten Dauerlösungen<br />

(ofr)<br />

n<br />

Infos<br />

[1] Untersuchung der Effektivität von Teredo:<br />

[http:// www. sigcomm. org/ sites/​<br />

default/ files/ ccr/ papers/ 2012/ October/​<br />

2378956‐2378959. pdf]<br />

[2] 6to4 siehe RFC 3056 (Connection of IPv6<br />

Domains via IPv4 Clouds)<br />

[3] 6rd für <strong>Linux</strong>: [http:// www. litech. org/ 6rd/]<br />

[4] ISATAP für <strong>Linux</strong>: [http:// www.​<br />

saschahlusiak. de/ linux/ isatap. htm]<br />

[5] Teredo für <strong>Linux</strong>:<br />

[http:// www. remlab. net/ miredo/]<br />

Der Autor<br />

Eric Amberg ist Geschäftsführer der ATRACON<br />

GmbH ([http:// www. atracon. de]), seit vielen<br />

Jahren im Bereich IT-Infrastruktur als Trainer<br />

und Consultant tätig und verfügt über langjährige<br />

Projekterfahrung. Sein<br />

besonderer Fokus liegt auf<br />

Netzwerk-Themen. In seinen<br />

Seminaren legt er großen<br />

Wert auf eine praxisnahe<br />

Schulung.<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

33


<strong>Enterprise</strong>-<strong>Linux</strong><br />

<strong>Enterprise</strong>-Distributionen<br />

© Wojciech Kaczkowski, 123RF<br />

<strong>Enterprise</strong>-<strong>Linux</strong>-Distributionen<br />

Kurs halten<br />

Red Hat <strong>Enterprise</strong> <strong>Linux</strong> dient als Blaupause für Klone wie Oracle <strong>Linux</strong> oder CentOS. Suse geht dagegen seinen<br />

eigenen Weg. Wir durchforsten den Angebotsdschungel der <strong>Enterprise</strong>-<strong>Linux</strong>e und beleuchten technische Unterschiede,<br />

Subskriptionsmodelle und Kosten. Thomas Drilling<br />

Wer <strong>Linux</strong> schon seit 1995 verwendet,<br />

wird sich vielleicht fragen, was das sein<br />

soll, eine <strong>Enterprise</strong>-Distribution. Der<br />

Name rührt daher, dass sich <strong>Enterprise</strong>-<br />

Betriebssysteme an den mutmaßlichen<br />

Anforderungen von Unternehmen orientieren.<br />

Das sind: Stabilität und möglichst<br />

lange Produktlebenszyklen, innerhalb<br />

derer Unternehmen in Abhängigkeit des<br />

Umfangs der erworbenen Subscription<br />

Unterstützung in Form von Programm-,<br />

System- und Sicherheits-Updates, sowie<br />

Fehlerkorrekturen erhalten. Zudem sind<br />

viele, ebenfalls „<strong>Enterprise</strong>-taugliche“<br />

Software-Pakete wie etwa Oracle-Datenbanken,<br />

nur für <strong>Enterprise</strong>-<strong>Linux</strong>e zertifiziert.<br />

Mit seinem Red Hat <strong>Enterprise</strong> <strong>Linux</strong><br />

(RHEL, Abbildung 1) ist Red Hat heute<br />

Weltmarktführer in dieser Sparte. RHEL<br />

bietet standardmäßig sieben Jahre Unterstützung<br />

für das jeweils aktuelle Release,<br />

das sich ab RHEL 6 nach Bedarf auch<br />

auf 10 Jahre uneingeschränktem Support<br />

ausdehnen lässt. Die Konkurrenz zieht<br />

damit aber gleich: Der Support für Suses<br />

<strong>Enterprise</strong> Server (SLES) lässt sich auf<br />

Wunsch ebenfalls auf bis zu 10 Jahre<br />

ausdehnen.<br />

E Red Hat<br />

Red Hat ist aus wirtschaftlicher Sicht<br />

heute das Vorzeigeunternehmen im <strong>Linux</strong>-Sektor<br />

und verbuchte im Geschäftsjahr<br />

2011/​2012 einen Gesamtumsatz von<br />

1,13 Milliarden US-Dollar. Dass ein großer<br />

Anteil an Red Hats Einnahmen aus<br />

dem Subskriptions-Geschäft resultiert,<br />

zeigt, welchen Stellenwert Red Hat <strong>Enterprise</strong><br />

<strong>Linux</strong> im eigenen Unternehmen genießt,<br />

trotz anderer Red-Hat-Produkte im<br />

Cloud-Sektor, dem Middleware-Bereich<br />

oder dem Storage-Segment.<br />

Gelegentlich hilft Red Hat bei der Weiterentwicklung<br />

neuer Produkte und Technologien<br />

zuweilen auch mit der Akquisition<br />

von Unternehmen und Technologien<br />

nach, etwa bei der JBoss-Middleware<br />

oder im Bereich Virtualisierung. Zumal<br />

Red Hat Schlüsseltechnologien wie KVM<br />

oder Spice nach der Anpassung durch<br />

eigene Entwickler wieder als freie Software<br />

veröffentlicht. Darüber hinaus sind<br />

viele von Red Hat bezahlte Entwickler<br />

in anderen Open-Source-Projekten aktiv,<br />

neben dem Fedora-Projekt auch in der<br />

<strong>Linux</strong>-Kernel-Entwicklung, namentlich<br />

bei den KVM-Komponenten.<br />

In diesem Zusammenhang ist bemerkenswert,<br />

dass sich Red Hat wiederholt<br />

in der Top-10-Unternehmensliste der<br />

<strong>Linux</strong> Foundation platziert hat, deren<br />

Entwickler die meisten Commits zum<br />

<strong>Linux</strong>-Kernel lieferten. So stammten im<br />

Jahr 2010 12,4 Prozent der Arbeiten am<br />

<strong>Linux</strong>-Kernel von Red-Hat-Entwicklern,<br />

Platz 2 hinter „unbekannten Beitragenden“.<br />

Erst im April letzten Jahres ist Red<br />

Hat (in Deutschland auch Gründungsmitglied<br />

der Open Source Business Alliance)<br />

dem Open-Stack-Projekt beigetreten.<br />

36 Ausgabe 01-2013 Admin www.admin-magazin.de


<strong>Enterprise</strong>-Distributionen<br />

<strong>Enterprise</strong>-<strong>Linux</strong><br />

Red Hat stellt sämtliche Quellpakete seiner<br />

RHEL-Distributionen (Server, Desktop,<br />

Workstation) gemäß der GPL-Richtlinien<br />

im Quellcode frei zur Verfügung<br />

[1], allerdings keine Binärpakete und<br />

keine Installations-Images. Nach einmaligem<br />

Registrieren im „Red Hat Customer<br />

Portal“ darf der Anwender aber eine<br />

60-Tage-Testversion von RHEL herunterladen.<br />

Red Hat <strong>Enterprise</strong> <strong>Linux</strong> lässt sich<br />

ausschließlich in Form von Abonnementund<br />

Support-Verträgen (Subscriptions)<br />

nutzen.<br />

Auch als Desktop<br />

Für den Desktop-Bereich offeriert Red<br />

Hat die Abonnement-Varianten Workstation<br />

und Desktop. Die Workstation-<br />

Version schlägt mit 179 US-Dollar in der<br />

sogenannten „Self-support-Subscription“<br />

und mit 299 US-Dollar pro Jahr in der<br />

Standard-Subscription zu Buche. Für<br />

die meisten Unternehmen dürfte eher<br />

die Server-Version von Interesse sein.<br />

Die beginnt für x86-(32/​64)-Systeme bei<br />

349 US-Dollar in der 2-Socket-Version<br />

inklusive Unterstützung für lediglich einen<br />

virtuellen Gast und endet bei der<br />

Premium-Subscription für 6498 US-Dollar<br />

im Jahr für 4-Socket-Systeme und eine<br />

unbegrenzte Anzahl virtueller Gäste.<br />

Eine Übersicht aller Varianten liefert die<br />

zugehörige Seite [2] im Red Hat Store.<br />

Die Subscriptions sind bei Red Hat übrigens<br />

nicht versionsspezifisch, sondern<br />

gelten stets gleichermaßen für alle aktuell<br />

gepflegten Varianten, derzeit RHEL 5 und<br />

RHEL 6.<br />

Installiert der Admin unter RHEL Pakete<br />

aus auf RPM basierenden Fremdquel-<br />

Abbildung 1: Red Hat ist unter Herstellern von <strong>Linux</strong>-<strong>Enterprise</strong>-Distributionen am längsten im Geschäft.<br />

len, wie RPM Fusion oder RPM Forge,<br />

verliert er den Support-Anspruch. Das<br />

macht aber auch wenig Sinn bei einer<br />

<strong>Enterprise</strong>-Distribution, denn deren Wert<br />

liegt gerade in der auf den angebotenen<br />

Paketen basierenden Stabilität. Red Hat<br />

<strong>Enterprise</strong> <strong>Linux</strong> verwaltet sämtliche mit<br />

RHEL gelieferte Pakete, sowie Aktualisierungen<br />

in sogenannten „Channels“ im<br />

„Red Hat Network“ (RHN), dem weltweit<br />

verfügbaren Software-Repository von Red<br />

Hat <strong>Enterprise</strong> <strong>Linux</strong>.<br />

Nur wer eine Subscription erwirbt, hat<br />

nach erstmaliger Registrierung Zugriff<br />

auf das RHN. Die einzelnen Channels<br />

unterscheiden sich je nach erworbener<br />

Subskription. Das gilt auch für die Installationsmedien.<br />

Wer eine Desktop-Subskription<br />

erwirbt, hat auch nur Zugriff<br />

auf den zugehörigen Channel. Außerdem<br />

ist es im Firmennetzwerk jederzeit möglich,<br />

einen eigenen Satellite-Server für<br />

RHN aufzusetzen und zu betreiben. Das<br />

Software-Management selbst basiert auf<br />

RPM-Raketen, mit Yum als Kommandozeilen-Frontend,<br />

das sich auch um das<br />

Auflösen von Abhängigkeiten kümmert.<br />

Von lizenzrechtlich bedingten und gewollten<br />

Unterschieden der einzelnen<br />

RHEL-Versionen, die sich aus der Paketauswahl<br />

in den Channels ergeben, abgesehen,<br />

verwendet RHEL einen von den<br />

Red-Hat-Entwicklern stark modifizierten<br />

Kernel 2.6.32. Der integriert unter anderem<br />

die von Red Hat entwickelte Kernel-<br />

Erweiterung SE <strong>Linux</strong>.<br />

Dass Red Hat seit der RHEL-Version 6 bestrebt<br />

ist, seine Kernel-Patches möglichst<br />

Redpatch und Ksplice<br />

Red Hat liefert seit der RHEL-Version 6 Anfang<br />

2011 seine Änderungen am <strong>Linux</strong>-Kernel nur<br />

noch in Form eines einzigen großen kumulierten<br />

Pakets aus, in dem sämtliche von Red Hat<br />

vorgenommene Anpassungen vermischt sind.<br />

Die Strategieänderung soll vermutlich der Konkurrenz<br />

von Oracle und Novell/​Suse die Arbeit<br />

erschweren. Die müssen seitdem sämtliche Änderungen<br />

selbst ausfindig machen, denn laut<br />

Red Hat bieten Unternehmen wie Oracle und<br />

Novell auch Support für RHEL-Kunden an. Suse<br />

offeriert etwa auf seinen SLES-Produktseiten<br />

einen Migrationspfad für RHEL beziehungsweise<br />

ein Support-Paket, das auch Unterstützung für<br />

Red-Hat-Produkte einschließt [13].<br />

Laut Red-Hat-Chef Brian Stevens könne das<br />

Unternehmen mit der Änderung solchen Tendenzen<br />

entgegensteuern und für das Anbieten<br />

von Support-Leistungen essenzielle Informationen<br />

verbergen, ohne den Grundgedanken von<br />

freier Software zu verletzen. Offenbar betraf die<br />

Änderung aber nicht nur Unternehmen wie Novell,<br />

sondern auch Projekte wie das von Oracle<br />

übernommene Ksplice-Projekte. Da Ksplice auf<br />

das Vorhandensein der einzelnen Patches am<br />

RHEL-Kernel angewiesen ist, hatten die Ksplice-<br />

Entwickler laut Oracle schon kurz nach der Bekanntgabe<br />

von Red Hats Maßnahme ein eigenes<br />

Respository gestartet, das die Änderungen am<br />

RHEL-Kernel in Einzelteile zerlegt.<br />

Seit Kurzem macht Oracle die einzelnen Änderungen<br />

im Rahmen seines Redpatch-Projekt<br />

auch allgemein verfügbar und pflegt im dazu<br />

im eigens aufgesetzten Redpatch-Repository<br />

[14] den Quellcode des RHEL-Kernel in Form<br />

eines öffentlich zugänglichen Git-Depots [15],<br />

das sämtliche von Red Hat vorgenommenen<br />

Änderungen wieder als einzelne Patches zur<br />

Verfügung stellt. Ksplice ist eine von Oracle erworbene<br />

Technologie, die das Anwenden von<br />

Patches auf den <strong>Linux</strong>-Kernel ohne Neustart ermöglicht.<br />

So kann Ksplice beispielsweise viele<br />

Fehler und Sicherheitslücken zur Laufzeit korrigieren.<br />

Oracle verkauft Ksplice übrigens auch als<br />

Service-Dienstleistung an RHEL-Anwender.<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

37


<strong>Enterprise</strong>-<strong>Linux</strong><br />

<strong>Enterprise</strong>-Distributionen<br />

schwer nachvollziehbar zu machen, sorgt<br />

übrigens seit einiger Zeit für Unmut in<br />

der Community und hat Konkurrent<br />

Oracle veranlasst, die Kernel-Patches von<br />

RHEL 6 wieder aufzudröseln und in Form<br />

eines eigenen, öffentlich zugänglichen<br />

Repositories (Redpatch-Projekt) der Gemeinschaft<br />

zugänglich zu machen (siehe<br />

Kasten „Redpatch und Ksplice“).<br />

RHEL lässt sich ebenso wie Fedora mithilfe<br />

des grafischen Anaconda-Installers<br />

installieren, unterstützt via Kickstart aber<br />

auch ein automatisiertes Deployment.<br />

Zur Konfiguration stehen neben der Kommandozeile<br />

eine Auswahl von speziell<br />

von Red Hat entwickelten Werkzeugen<br />

zur Verfügung, die allesamt dem Bezeichnungsschema<br />

»system‐config‐name« folgen<br />

und nach den für Red Hat und Fedora<br />

gültigen Prinzipien entwickelt wurden.<br />

Das bedeutet, dass Management-Werkzeuge<br />

zur Systemverwaltung stets nur<br />

eine einzige Aufgabe erfüllen und zudem<br />

keine exklusive Kontrolle über Konfigurationsdateien<br />

benötigen. Trotzdem ist<br />

es unter RHEL unerlässlich, dass Administratoren<br />

in der Lage sind, das System<br />

manuell durch das Bearbeiten von Konfigurationsdateien<br />

zu verwalten.<br />

RHEL: Virtualisierung und<br />

Cluster-Suite<br />

Erwähnenswert im Bereich der Virtualisierungsfunktionen<br />

ist, dass RHEL seit<br />

der Version 6.3 in Gästen 160 statt wie<br />

bisher 64 virtuelle CPUs unterstützt. Ferner<br />

enthält RHEL seit der Version 6.3 das<br />

neue Werkzeug »virt‐v2v«, das es dem<br />

Admin ermöglicht, auf anderen Systemen<br />

wie beispielsweise Xen und VMware ESX<br />

erstellte virtuelle Maschinen zu importieren<br />

beziehungsweise konvertieren.<br />

Mit RHEL 6 wandte sich Red Hat vom<br />

noch in RHEL 5 favorisierten Xen-Hypervisor<br />

zugunsten des aus dem eigenen<br />

Hause stammenden KVM ab, was aber<br />

nicht bedeutet, dass RHEL 6 nicht als<br />

Gastsystem unter Xen läuft. Detaillierte<br />

Informationen zu den Virtualisierungsfunktionen<br />

finden sich unter [3]. Ferner<br />

erlaubt die in RHEL enthaltene Cluster-<br />

Suite ab RHEL 6.3, die HA-Infrastruktur<br />

auch für ein Failover virtueller Maschinen<br />

zu verwenden. RHEL 6 kann zudem auch<br />

als iSCSI-Initiator und Storage-Server arbeiten.<br />

Abbildung 2: Auch Suse gehört zu den Pionieren im <strong>Linux</strong>-Geschäft, bot den <strong>Enterprise</strong>-Server aber erst nach<br />

den frühen Distributionen für Privatanwender an.<br />

Weitere Besonderheiten: RHEL 5 und<br />

RHEL 6 sind LSB-3.1-zertifiziert. Unter<br />

anderem dank SE <strong>Linux</strong> genügen RHEL 5<br />

und RHEL 6 auch den Anforderungen des<br />

US-Sicherheitsstandards „EAL4+“ (EAL4<br />

mit Zusätzen). Die EAL4 (Common Criteria<br />

Evaluation Assurance Level)-Zertifizierung<br />

ist der höchste erreichbare Level,<br />

den ein allgemein verfügbares Standard-<br />

Betriebssystem ohne spezielle Modifikationen<br />

erlangen kann.<br />

Zertifziert<br />

Ferner kann Red Hat der US-Regierung<br />

die IPv6-Tauglichkeit von RHEL nachweisen.<br />

Zudem ist RHEL für SAP zertifiziert.<br />

Bleibt noch zu erwähnen, dass Red Hat<br />

<strong>Enterprise</strong> <strong>Linux</strong> 6 keine Unterstützung<br />

mehr für Intels Itanium-Architektur bietet.<br />

Red Hat lässt sämtliche IA64-Entwicklungen<br />

ausschließlich in Red Hat<br />

<strong>Enterprise</strong> <strong>Linux</strong> 5 einfließen. Die Unterstützung<br />

für RHEL 5 endet im März 2014.<br />

Allerdings können Kunden erweiterten<br />

Support von RHEL 5 für Itanium bis März<br />

2017 erwerben.<br />

RHEL 6 unterstützt auch die POWER-<br />

Architektur und benötigt dazu mindestens<br />

eine POWER6- oder neuere CPU. PO-<br />

WER5-Prozessoren werden von RHEL 6<br />

nicht unterstützt. Übrigens fungiert nicht<br />

nur RHEL selbst als Blaupause für RHEL-<br />

Klone oder zumindest für <strong>Enterprise</strong>-Distris,<br />

die den RHEL-Kernel verwenden,<br />

RHEL ist auch Basis für zahlreiche Cloudund<br />

Middleware-Produkte im eigenen<br />

Unternehmen. So wundert es kaum, dass<br />

auch Red Hats eigene Open-Stack-Variante<br />

Red Hat <strong>Enterprise</strong> <strong>Linux</strong> als Basis<br />

verwendet. Red Hats Open-Stack-Version<br />

wurde mit RHEL 6.3 getestet und benötigt<br />

selbstverständlich außerdem Red<br />

Hats <strong>Enterprise</strong> Virtualization (RHEV).<br />

RHEL ist außerdem ein essenzieller Bestandteil<br />

von Red Hats Plattform-as-a-<br />

Service-Strategie „OpenShift“.<br />

E Suse <strong>Linux</strong><br />

<strong>Enterprise</strong> Server<br />

Red-Hats direkter Konkurrent im Sektor<br />

<strong>Enterprise</strong>-Distributionen ist die nach<br />

der Übernahme von Novells <strong>Linux</strong>-Sparte<br />

durch Attachmate im Mai 2011 wieder<br />

relativ unabhängig agierende Nürnberger<br />

Suse <strong>Linux</strong> GmbH. Sie hat als Pionier der<br />

Branche seit dem Jahr 2000 eine <strong>Enterprise</strong>-Distribution<br />

„Suse <strong>Linux</strong> <strong>Enterprise</strong><br />

Server“ (SLES) [4] im Angebot.<br />

Nach Aussage von Suse nutzen derzeit<br />

13 000 Unternehmen SLES. SLES stellt<br />

damit rein wirtschaftlich zwar keine<br />

Konkurrenz zum RHEL dar, spielt aber<br />

technologisch in der gleichen Liga, hat<br />

historisch bedingt zahlreiche Kunden in<br />

Deutschland und verbucht im Detail den<br />

einen oder anderen Mehrwert gegenüber<br />

38 Ausgabe 01-2013 Admin www.admin-magazin.de


<strong>Enterprise</strong>-Distributionen<br />

<strong>Enterprise</strong>-<strong>Linux</strong><br />

RHEL. Die Suse <strong>Linux</strong> GmbH spricht<br />

zudem von einer Lizenzkostenersparnis<br />

gegenüber dem direkten Konkurrenten<br />

RHEL von 50 Prozent, was sich aber anhand<br />

der Preislisten für die Subscriptions<br />

kaum nachvollziehen lässt.<br />

Die seinerzeit erste SLES-Version „Suse<br />

<strong>Linux</strong> <strong>Enterprise</strong> Server for S/​390“ wurde<br />

von einem kleinen Entwicklerteam speziell<br />

für IBM-Großrechner (S/​390) entwickelt.<br />

Erst mit der Version SLES 7 war<br />

SLES dann 2001 für die x86-Architektur<br />

verfügbar. Die derzeit aktuelle Version<br />

SLES 11 SP2 ist im Februar dieses Jahres<br />

erschienen und für die Plattformen x86/​<br />

x64), Intel Itanium, IBMs System z- und<br />

POWER-Plattformen, sowie in Amazons<br />

EC2-Cloud und als VMware-Appliance<br />

verfügbar.<br />

Wie der Name schon andeutet, ist SLES<br />

eine Server-Distribution. Suse bietet<br />

aber auch ein Desktop-Produkt, das als<br />

Nachfolger des Suse <strong>Linux</strong> Desktop beziehungsweise<br />

des Novell <strong>Linux</strong> Desktop<br />

aktuell auf den Namen Suse <strong>Linux</strong><br />

<strong>Enterprise</strong> Desktop SLED hört. Seit SLES<br />

10 verwenden SLES und SLED eine identische<br />

Code-Basis. Aktuell wird SLES von<br />

Suse in vier Varianten aktiv gepflegt. SLES<br />

9 basiert auf einen Kernel 2.6.5. SLES 10<br />

SP3 nutzt einen Kernel 2.6.16, während<br />

SLES 11 SP1 wie RHEL auf einem Kernel<br />

2.6.32 aufsetzt.<br />

Die aktuelle Version SLES 11 SP2 kann<br />

bereits mit einem aktuellen Kernel 3.0<br />

aufwarten. Im Gegensatz zu zahlreichen<br />

anderen <strong>Enterprise</strong>-<strong>Linux</strong>en basiert SLES<br />

nicht auf RHEL, sondern pflegt sowohl<br />

seinen Kernel als auch seine Paket-Basis<br />

selbst.<br />

Btrfs<br />

Btrfs gilt gemeinhin als <strong>Linux</strong>-Dateisystem der<br />

Zukunft und bietet gegenüber traditionelleren<br />

Dateisystemen interessante Möglichkeiten,<br />

wie etwa eine Unterstützung von Snapshots,<br />

Subvolumes, Kompression und RAID. SLES und<br />

Oracle <strong>Linux</strong> unterstützen Btrfs im Gegensatz<br />

zu RHEL bereits, wenn auch nicht als Standard-<br />

Dateisystem.<br />

Verwendet der SLES-Admin Btrfs für die Root-<br />

Partition, kümmert sich Yast automatisch um<br />

das Einrichten der benötigten Snapper-Infrastruktur.<br />

Die erzeugt mithilfe der in Btrfs enthaltenen<br />

Funktionen eine einstellbare Anzahl<br />

von Snapshots des kompletten Dateisystems,<br />

sodass veränderte oder gelöschte Dateien<br />

stets eine gewisse Zeit verfügbar bleiben.<br />

Auch Suse <strong>Enterprise</strong> <strong>Linux</strong> lässt sich<br />

ausschließlich über Subscriptions nutzen.<br />

Das Angebot ist allerdings etwas anders<br />

gegliedert als bei Red Hat. Der Kunde<br />

muss sich auf der SLES-Bestellseite lediglich<br />

für den CPU-Typ „x86 und x86_64“<br />

oder „Power or Itanium“ entscheiden,<br />

sowie die Anzahl physischer oder virtueller<br />

Kerne angeben. Ist das geschehen,<br />

stehen drei Subscriptions „Basic“,<br />

„Standard“ und „Priority“ zur Verfügung,<br />

wobei zum Beispiel „Basic“ nur Maintenance<br />

enthält, keinen Support. Die preiswerteste<br />

Variante „Basic-Subscription<br />

für x86-CPUs mit 2 physischen Kernen“<br />

schlägt dann mit 349 US-Dollar für den<br />

1-Jahres-Vertrag, 950 US-Dollar für den<br />

3-Jahres-Vertrag und 1400 US-Dollar für<br />

einen 5-Jahres-Vertrag zu Buche.<br />

Neuerer Kernel<br />

Die Suse-Entwickler pflegen einen eigenen<br />

Kernel für ihren <strong>Enterprise</strong>-Server,<br />

sodass die Entwicklung unabhängig vom<br />

Entwicklungsstand des RHEL-Kernels ist.<br />

So enthält die aktuelle SLES-Version SLES<br />

11 SP2 vom Februar 2012 immerhin einen<br />

deutlich aktuelleren Kernel 3.0 und<br />

zeichnet sich gegenüber RHEL dadurch<br />

aus, dass SLES bereits Btrfs-Unterstützung<br />

bietet (siehe Kasten „Btrfs“) und<br />

Funktionen zur Container-Virtualisierung<br />

auf Basis von <strong>Linux</strong> Container (LXC) zur<br />

Verfügung stellt.<br />

Suse weist in seinem LXC-Quickstart-<br />

Guide [5] allerdings auch auf die Nachteile<br />

und Gefahren (hoher Verwaltungsaufwand,<br />

größeres Sicherheitsrisiko, wegen<br />

prinzipiell schlechter gegeneinander<br />

Ferner zeigt ein Snapper-Modul für Yast die<br />

Unterschiede zur aktuellen Datei-Version und<br />

versetzt den Admin in die Lage, gegebenenfalls<br />

Änderungen zurücknehmen zu können. Sogar<br />

eingespielte Updates lassen sich rückgängig<br />

machen.<br />

Für die Boot-Partition lässt sich Btrfs allerdings<br />

nicht nutzen. Daher kann der Admin<br />

etwa Kernel-Updates oder Änderungen an der<br />

Boot-Konfiguration nicht mit Snapper managen.<br />

SLES unterstützt übrigens noch nicht die<br />

Btrfs-Funktion, mehrere Datenträger zu einem<br />

RAID zusammenfassen zu können. Inzwischen<br />

ist auch das Werkzeug fsck.btrfs im Update-<br />

Channel der Distribution verfügbar. Oracle <strong>Linux</strong><br />

bietet ebenfalls Unterstützung für Btrfs.<br />

abgeschirmter VMs) der Container-Virtualisierung<br />

hin und empfiehlt, die Technik<br />

nicht in sicherheitskritischen Bereichen<br />

einzusetzen. Bekanntlich machen Webhoster<br />

häufig von der Container-Virtualisierung<br />

Gebrauch, nutzen jedoch meist<br />

eher das ebenfalls freie OpenVZ oder<br />

dessen kommerziellen Ableger Parallels<br />

Virtouzzo.<br />

Wie bei Red Hat lassen sich die aktuellen<br />

SLES-Versionen nur noch als Xen-Gäste<br />

betreiben, da auch Suse den Xen-Hypervisor<br />

– zumindest in der 32-Bit-Version<br />

– nicht mehr mitliefert und vollständig<br />

auf KVM setzt. Die 64-Bit-Ausgabe enthält<br />

derzeit zwar noch Xen, es ist aber<br />

absehbar, wohin die Reise geht. Unabhängig<br />

davon, was vom Support-Vertrag<br />

abgedeckt ist, unterstützt die Virtualisierung<br />

mit KVM in SLES bis zu 64 Prozessorkerne<br />

im Gastsystem. SLES 11 SP2<br />

enthält erstmals auch VirtFS [6] (Plan 9<br />

folder sharing over Virtio), mit dessen<br />

Hilfe mit Qemu/​KVM betriebene Gäste<br />

auf Wunsch schneller auf Teile des Host-<br />

Dateisystems zugreifen können.<br />

Windows-Gäste<br />

Hinsichtlich der Paravirtualisierung ist<br />

noch erwähnenswert, dass der SLES-<br />

Support in der aktuellen Version auch<br />

den Einsatz von Windows-Gastsystemen<br />

unter KVM einschließt, wozu Suse allerdings<br />

rät, die von Suse angebotenen<br />

kommerziellen Virtio-Treiber des VMDP<br />

[7] (Virtual Machine Driver Pack) zu<br />

verwenden.<br />

Nachdem SLES 11 bei seinem ersten<br />

Erscheinungstermin noch einen Kernel<br />

2.6.27 enthielt, vollzog SLES 11 SP bereits<br />

im Februar diesen Jahres den Sprung vom<br />

Kernel 2.6.32 (SP1) auf einen leidlich aktuellen<br />

Kernel 3.0 im SP2, auf dem Papier<br />

immerhin ein Vorteil gegenüber dem in<br />

RHEL 6.3 noch verwendeten, allerdings<br />

stark modifizierten Kernel 2.6.32. Suse<br />

weist jedoch in den Release Notes darauf<br />

hin, dass offenbar einige Programme aus<br />

dem Tritt geraten, wenn die Versionsnummer<br />

des Kernels mit einer 3 beginnt<br />

und empfiehlt daher, betreffende Programme<br />

mithilfe des mitgelieferten Tools<br />

„name26“ als Parameter aufzurufen.<br />

Laut Suse enthält der SLES-Kernel auch<br />

die im Kernel 3.2 enthaltene Funktion<br />

„CFS Bandwidth Controller“ als Back-<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

39


<strong>Enterprise</strong>-<strong>Linux</strong><br />

<strong>Enterprise</strong>-Distributionen<br />

port, womit es möglich ist, die Prozessorzeit<br />

für einzelne Prozesse einzuschränken,<br />

auch „CPU Hard Limits“ genannt.<br />

Zudem verwendet der SLES-Kernel per<br />

Default Transparent Huge Pages (THP),<br />

womit sich die CPU-Ressourcen zur Speicherverwaltung<br />

besser ausnutzen lassen<br />

sollen. Suse hat die eigene Sicherheits-<br />

Erweiterung App Armor für SLES schon<br />

Mitte 2008 aufgegeben. Die aktuellen<br />

Support-Verträge decken daher seit der<br />

SLES-Version 11 SP1 auch den Einsatz<br />

von Red Hats Sicherheitserweiterung SE<br />

<strong>Linux</strong> ab, allerdings ist SE <strong>Linux</strong> bei Suse<br />

im Gegensatz zu Red Hat per Default deaktiviert.<br />

Außerdem bietet SLES 11 volle<br />

Unterstützung für den Tomcat Servlet<br />

Container in der Version 6<br />

SLES-Treiber<br />

Das Kernel-Update bescherte SLES 11<br />

SP2 übrigens auch eine Reihe neuer Treiber,<br />

etwa für USB 3 oder für die Version<br />

3.0 von Intels „Rapid Storage Technology“<br />

(RSTe3.0). Ferner kann OpenSSL<br />

in SLES 11 SP2 Intels AES-NI (AES New<br />

Instructions) nutzen, eine Funktion, mit<br />

der aktuelle Intel-Prozessoren Aufgaben<br />

beim Ver- oder Entschlüsseln mit AES<br />

(Advanced Encryption Standard) mit<br />

übernehmen. Die Suse-Entwickler haben<br />

zudem die Unterstützung für Intels AMT<br />

(Intel Active Management Technology)<br />

entfernt, weil die Technologie von Intel<br />

offenbar nicht mehr gepflegt wird.<br />

Wie bei RHEL gehört auch beim SLES<br />

der System Security Services Daemon<br />

(SSSD) zum Lieferumfang, der Vermittlungsdienste<br />

beim Authentifizieren über<br />

LDAP oder Kerberos übernimmt. Trotz<br />

eingebauter Btrfs-Unterstützung ist bei<br />

SLES immer noch Ext3 das Standarddateisystem<br />

(bei RHEL 6.32 ist es Ext4), SLES<br />

11 SP2 unterstützt aber auch Reiserfs 3.6<br />

und XFS. Das im Suse-Kernel enthaltene<br />

Ext4-Modul kann Ext4-Dateisysteme nur<br />

lesen und wird bei SLES lediglich zum<br />

Umwandeln von Ext-Dateisystemen nach<br />

Btrfs benötigt. Wer Ext4-Schreib-Untersützung<br />

braucht, muss bei SLES das vom<br />

SLES-Support nicht abgedeckte Kernel-<br />

Modul-Paket (KMP) „ext4-writeable“ installieren.<br />

Alle wichtigen Informationen zur aktuellen<br />

SLES-Version 11 SP2 finden sich<br />

auf der Produkt-Webseite, in den Release<br />

Notes und auf der offiziellen Dokumentationsseite.<br />

Eine 60-Tage Test-Version gibt<br />

es ebenfalls zum Herunterladen. Wie bei<br />

RHEL stehen auch bei Suse-<strong>Enterprise</strong><br />

Server sämtliche Sourcen der einzelnen<br />

Produkte unter zum Download zur Verfügung.<br />

Auch Suse verwendet das RPM-Paket-<br />

Format, als Frontends zum Installieren<br />

von Paketen aus den Online-Paketquellen<br />

des NCC (Novell Customer Service) kommen<br />

Yast oder das in C++ geschriebene<br />

Tool Zypper zum Einsatz. Zugang zu<br />

den Online-Repositorien (auch bei SLES<br />

„Channels“ genannt) erhält nur, wer sich<br />

mit dem beim Erwerb der Subskription<br />

erhaltenen Acivation Code im Novell<br />

Customer Center registriert.<br />

Bei SLES 11 gibt es lediglich einen einzigen<br />

Base-Channel „SLES11-SP1-Pool“,<br />

der sämtliche Pakete enthält und dessen<br />

Inhalt sich über den gesamt Produkt-<br />

Lebenszyklus nicht ändert. SLES bezieht<br />

sämtliche zu installierenden Pakete aus<br />

dieser Quelle, solange es kein Updates<br />

gibt. Updates verwaltet SLES 11 im<br />

Channel „SLES11-SP1-Updates“. Erst mit<br />

SLES 11 SP2 sind zwei weitere Channels<br />

„SLES11-SP2-Core“ und „SLES11-<br />

SP2-Updates“ hinzugekommen, wobei<br />

„SP2-Core“ ein Subset an Paketen aus<br />

„SP1-Pool“ enthält. Bei Suse erscheinen<br />

Service Packs alle 18 Monate. Über<br />

den regulären Support hinaus lässt sich<br />

optional ein „Long Term Service Pack<br />

Support“ erwerben, das jeweils 12, 24<br />

oder 36 Monate über das erste Service<br />

Pack hinaus gehenden Support bietet,<br />

sodass sich auch der SLES-Support wie<br />

bei RHEL im Bedarfsfall über die regulär<br />

maximal möglichen sieben Jahre auf<br />

einen Unterstützungszeitraum von zehn<br />

Jahre ausbauen lässt. Übrigens wird SLES<br />

11 stets mit der zum Zeitpunkt der Veröffentlichung<br />

aktuellen Version der <strong>Linux</strong><br />

Standard Base zertifiziert also LSB 4.0<br />

für SLES 11 SP2. Bei SLES 10 ist das<br />

3.0, bei SLES 9 2.0. Ältere Versionen des<br />

SLES sind nach älteren LSB-Standards<br />

zertifiziert.<br />

RHEL-Klone<br />

Dass es eine ganze Reihe voll kompatibler<br />

Red-Hat-Klone gibt, liegt an der GPL,<br />

die vorschreibt, dass ein unter der GPL<br />

stehendes Produkt wie RHEL im Source-<br />

Code veröffentlicht werden muss. Das<br />

gilt auch für abgeleitete Produkte, an<br />

denen der Hersteller Erweiterungen und<br />

Veränderungen vorgenommen hat. Auch<br />

die SLES-Sourcen sind wie erwähnt frei<br />

verfügbar. Bekannte freie Red-Hat-Klone<br />

sind zum Beispiel CentOS, Scientific<br />

<strong>Linux</strong> oder Yellow Dog <strong>Linux</strong>.<br />

Deren Macher müssen theoretisch nur<br />

die Source-Pakete (SRPMs) vom Red-Hat-<br />

Server laden und können das Produkt<br />

Abbildung 3: Oracle bietet ein eigenes, auf RHEL basierendes Produkt an, das es mit einem optimierten Kernel<br />

versehen hat.<br />

40 Ausgabe 01-2013 Admin www.admin-magazin.de


<strong>Enterprise</strong>-Distributionen<br />

<strong>Enterprise</strong>-<strong>Linux</strong><br />

nach dem Anpassen von Texten, Logos<br />

oder Bildern einfach neu übersetzen,<br />

was einen voll kompatiblen RHEL-Klon<br />

zur Folge hätte. Was theoretisch simpel<br />

klingt, ist in der Praxis nicht ganz so<br />

einfach, woran insbesondere der Kernel<br />

schuld ist. Damit sämtliche Einsprungadressen<br />

an den richtigen Positionen liegen,<br />

muss das Übersetzen mit exakt dem<br />

gleichen gcc-Compiler und identischen<br />

Compiler-Optionen erfolgen, wobei Red<br />

Hat seine Konkurrenten verständlicherweise<br />

nicht unterstützt.<br />

Zudem ist der Red-Hat-Kernel stark modifiziert,<br />

die von Red Hat vorgenommenen<br />

Einzel-Patches lassen sich aber nur<br />

schwer nachvollziehen. Daher dauert es<br />

nach dem Erscheinen eines neues Red Hat<br />

Releases immer einer Weile, bis auch die<br />

Klon-Herstellers nachziehen. So erschien<br />

beispielsweise das aktuelle Cent OS 6.3<br />

am 10. Juli diesen Jahres, knapp drei Wochen<br />

nach dem Original. Neben voll binär<br />

kompatiblen RHEL-Klonen gibt es auch<br />

Tabelle 1: Preise und Supportleistungen<br />

Red Hat Suse Oracle<br />

Basis-Preise für ein Jahr<br />

CPUs/​Cores 2 physische Cores 2 physische Cores unbegrenzt<br />

Support-<br />

Umfang<br />

„Self-Support“: Kein<br />

Support, nur Maintenance<br />

(Updates)<br />

„Basic“: Kein Support,<br />

nur Maintenance<br />

(Updates)<br />

„Network Support“: kein<br />

Support, nur Maintenance<br />

(Patches, Updates,<br />

Security Fixes)<br />

Preis 349 US-Dollar 349 US-Dollar 94 Euro<br />

Standard-Preise für ein Jahr<br />

CPUs/​Cores 4 physische Cores 4 physische Cores 2 Cores / unbegrenzt<br />

Support-<br />

Umfang<br />

„Standard“: Support (12/​<br />

5 via Web, Telefon) +<br />

Maintenance (Updates)<br />

„Standard“: Support (12/​<br />

5 via E-Mail, Web, Chat,<br />

Telefon) + Maintenance<br />

(Updates+Patches)<br />

„Basic Limited Support“:<br />

Support (24/​7 via Web,<br />

Telefon) + Maintenance<br />

(Patches, Updates,<br />

Security Fixes)<br />

Preis 1598 US-Dollar 1598 US-Dollar 396 Euro / 948 Euro<br />

Premium-Preise für ein Jahr<br />

CPUs/​Cores 4 physische Cores 8 physische Cores 2 Cores / unbegrenzt<br />

Support-<br />

Umfang<br />

„Premium“: Support (24/​<br />

7 via, Web, Telefon) +<br />

Maintenance (Updates)<br />

„Priority“: Support (24/​<br />

7 via E-Mail, Web, Chat,<br />

Telefon) + Maintenance<br />

(Updates+Patches)<br />

„Premier Limited<br />

Support“: Support (24/​<br />

7 via Web, Telefon) +<br />

Maintenance (Patches,<br />

Updates, Security Fixes)<br />

Preis 6498 US-Dollar 5996 US-Dollar 1104 Euro / 1812 Euro<br />

Die Admin-Bibel<br />

für <strong>Linux</strong>-Server!<br />

Dieses Buch lässt das Herz eines <strong>Linux</strong>-Administrators<br />

garantiert höher schlagen: Backup, Sicherheit, Samba,<br />

LDAP, Web-, Mail- und FTP-Server, Datenbanken,<br />

Kerberos-Authentifizierung, IPv6, NFSv4 u. v. m.<br />

übersichtlich erklärt!<br />

Mehr Bücher für Administratoren:<br />

www.GalileoComputing.de<br />

948 Seiten, 2. Auflage 2012, 49,90 €, ISBN 978-3-8362-1879-5<br />

Jetzt<br />

reinschauen!<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

41<br />

Wissen, wie’s geht.


<strong>Enterprise</strong>-<strong>Linux</strong><br />

<strong>Enterprise</strong>-Distributionen<br />

eine Reihe von Distributionen, die einen<br />

aktuellen RHEL-Kernel verwenden.<br />

Was die RHEL-Klone angeht, haben wir<br />

auf freie, zum Teil vollständig kompatible<br />

Ableger wie CentOS verzichtet, weil die<br />

mangels Support den primären Zweck einer<br />

<strong>Enterprise</strong>-Distribution nicht erfüllen,<br />

obwohl Sie insbesondere bei Internet-<br />

Providern sehr beliebt sind. Wer nur die<br />

stabile technische Basis einer <strong>Enterprise</strong>-<br />

Distribution genießen möchte, aber keinen<br />

Support braucht, ist mit CentOS gut<br />

bedient. Übrigens bietet pikanterweise<br />

ausgerechnet Microsoft Support für CentOS-Systeme<br />

an, wenn man sie in der<br />

Microsoft-Cloud Azure betreibt.<br />

E Oracle <strong>Linux</strong> (OEL)<br />

Unter den kommerziellen RHEL-Klonen<br />

ist vor allem Oracle <strong>Linux</strong> (OEL) [8]<br />

erwähnenswert, das Oracle im Jahr 2006<br />

auf den Markt brachte. OEL ist auf Paket-<br />

Ebene weitgehend kompatibel mit RHEL,<br />

verwendet aber einen eigens angepassten<br />

Kernel, den Oracle unter dem Namen<br />

„Unbreakable <strong>Enterprise</strong> Kernel R.2“ [9]<br />

anpreist. Bei Oracles Unbreakable <strong>Enterprise</strong><br />

Kernel handelt es sich um einen von<br />

Oracle modifizierten Kernel 3.0.16 für<br />

x86- und x64-Systeme, der insbesondere<br />

die Zusammenarbeit mit Oracles Datenbank-,<br />

Middleware- und Hardware-Systemen<br />

optimiert ist.<br />

Laut Oracle soll OEL <strong>Linux</strong> 75 Prozent<br />

bessere Performance bieten als RHEL<br />

und wie SLES und darüber hinaus Btrfs<br />

und <strong>Linux</strong> Containers (LXC) unterstützen.<br />

Neben seinem Ubreakable Kernel<br />

(UEK) liefert Oracle <strong>Linux</strong> (OEL) stets<br />

auch einen vollständig RHEL-kompatiblen<br />

Kernel (2.6.32) mit. Administratoren,<br />

die planen, den UEK-Kernel einzusetzen,<br />

sollten wissen, dass damit die Binärkompatibilität<br />

bei Treibern verloren gehen,<br />

nicht jedoch die Binärkompatibilität von<br />

Userland-Prozessen.<br />

Unzerbrechlich<br />

auf ganz verschiedene Aspekte. So soll<br />

etwa die Netzwerk-Performance dank<br />

im UEL-Kernel enthaltenen „Receive<br />

Steering“ höher sein. Laut Oracle haben<br />

die eigenen Entwickler außerdem die<br />

asynchrone I/​O-Leistung verbessert und<br />

Optimierung für SSDs eingebaut. Ferner<br />

unterstützt OEL das von Oracle entwickelte<br />

Protokol „Reliable Datagram Sockets<br />

(RDS)“, was ebenfalls eine höhere<br />

Performance in schnellen Netzen mit geringer<br />

Latenz ermöglichen soll, etwa für<br />

die NAS-Anbindung.<br />

Die herausragende Besonderheit beim<br />

UEK ist jedoch die Unterstützung der<br />

Ksplice-Technologie [10] (siehe Kasten<br />

Redpatch und Ksplice). Sie erlaubt es,<br />

Updates für den Kernel, sowie Treiber<br />

ohne einen Reboot einzuspielen, ein bei<br />

Servern interessantes Alleinstellungsmerkmal.<br />

Ksplice erlaubt es im Prinzip,<br />

neue Kernel-Patches unmittelbar in den<br />

Hauptspeicher zu laden, was theoretisch<br />

einen <strong>Linux</strong>-Server ermöglicht, der quasi<br />

ununterbrochen läuft, weil er nie neu<br />

gestartet werden muss.<br />

Seit Ksplice von Oracle übernommen<br />

wurde, ist die Technologie allerdings nur<br />

noch kostenpflichtig für Oracle <strong>Linux</strong><br />

verfügbar. Die sonstigen Eckdaten von<br />

Oracle <strong>Linux</strong> sind weitgehend identisch<br />

mit Red Hat <strong>Enterprise</strong> <strong>Linux</strong>. Auch die<br />

Versionierung folgt dem RHEL-Schema.<br />

Die aktuelle Version von Oracle <strong>Linux</strong><br />

trägt also ebenfalls die Versionsnummer<br />

6.3 und ist am 03. Juli diesen Jahres<br />

erschienen.<br />

Was das Subsciptions-Modell angeht,<br />

ist festzuhalten, dass Oracle <strong>Linux</strong> keines<br />

hat. Jeder kann die ISO-Images von<br />

Oracle <strong>Linux</strong> kostenlos aus der Oracle<br />

Software Delivery Cloud herunterladen.<br />

Das gilt sowohl für die ISO-Images der<br />

Installationsmedien als auch für die Sourcen,<br />

die außerdem auf zahlreichen Spiegelservers<br />

liegen, in Deutschland etwa<br />

unter [11]. Kostenpflichtig ist bei Oracle<br />

<strong>Linux</strong> lediglich der Support. Neue Nutzer<br />

müssen sich allerdings einmalig beim<br />

„Oracle E-Delivery Service“ registrieren.<br />

Die Produktstrategie von OEL basiert<br />

hauptsächlich auf dem Ubreakable Kernel,<br />

der den Hauptanteil an den genannten<br />

Vorteilen von OEL gegenüber RHEL<br />

hat. Der ebenfalls mitgelieferte Standard-<br />

RHEL-Kernel ist mit diesem identisch und<br />

vorrangig an Bord, sollte ein bestimmtet<br />

Programm unter Oracle <strong>Linux</strong> Probleme<br />

bereiten. Die einzelnen Support-Staffeln<br />

von OEL sind im Online-Shop von Oracle<br />

zu finden. Oracle ist grundsätzlich nur<br />

für X86-32-/​64-Plattfomen und Itanium<br />

verfügbar. Letztere wie Red Hat <strong>Enterprise</strong><br />

<strong>Linux</strong> allerdings nur bis einschließlich<br />

der Version 5.5.<br />

Die preiswerteste Stufe (neben dem Verzicht<br />

auf Support) ist „Oracle <strong>Linux</strong> Network<br />

Support“. Der kostet für ein Jahr<br />

93,96 Euro. Weitere Besonderheit bei<br />

Oracle-<strong>Linux</strong>: Jeder Admin kann sich die<br />

Mit „unbreakable“ will Oracle andeuten,<br />

dass man die Stabilität gegenüber dem<br />

RHEL-Kernel verbessert hat. Außerdem<br />

hat Oracle eine Reihe von Funktionen in<br />

seinen UEK eingebaut, die es in sich haben.<br />

Die versprochene bis zu 75 Prozent<br />

höhere Performance bezieht sich indes<br />

Abbildung 4: Ein weiterer Klon der Red-Hat-Distribution ist der Newcomer ROSA <strong>Linux</strong>. Im Gegensatz zu etwa<br />

CentOS hat ROSA aber kommerzielle Ambitionen.<br />

42 Ausgabe 01-2013 Admin www.admin-magazin.de


<strong>Enterprise</strong>-Distributionen<br />

<strong>Enterprise</strong>-<strong>Linux</strong><br />

lizensierte Software auf Wunsch auch<br />

in Form eines physischen Datenträgers<br />

(Media Pack) zusenden lassen. Der kostet<br />

dann 59,20 Euro.<br />

Ein Vergleich der drei bisher vorgestellten<br />

<strong>Enterprise</strong>-Systeme ist noch einmal<br />

in Tabelle 1 zu sehen. Weil jede<br />

Firma bereits eine Fülle unterschiedlicher<br />

Lizenzmodelle und Support-Pakete<br />

bietet und diese sich kaum direkt<br />

vergleichen lassen, kann die Tabelle<br />

nur eine grobe Orientierung geben.<br />

Beispielsweise berechnen Suse und Red<br />

Hat ihre Modelle auf der Basis von Rechnerkernen.<br />

Oracle bietet ein Support-<br />

Modell, das ebenfalls auf Cores basiert,<br />

erlaubt aber beim Basis-Support eine unbegrenzte<br />

Zahl.<br />

E ROSA <strong>Enterprise</strong> <strong>Linux</strong><br />

Ein weiterer relativ junger RHEL-Abkömmling<br />

ist der „ROSA <strong>Enterprise</strong> <strong>Linux</strong><br />

Server (RELS) 2012“ (Codename<br />

Helium), des russischen Distributors<br />

ROSA Labs. ROSA kooperiert bekanntlich<br />

bei seiner Desktop-Distribution „ROSA<br />

Marathon 2012“ mit Mandriva. RELS<br />

dagegen basiert auf RHEL und bietet<br />

fünf Jahre Support bei der kommerziellen<br />

Variante, bietet RELS aber auch als<br />

Community-Version an. Die Distribution<br />

ist ausschließlich für 32- und 64-Bit-x86-<br />

Systeme verfügbar.<br />

ROSA hat seiner Distribution allerdings<br />

im Vergleich zu den Paketen von RHEL<br />

6 einige Aktualisierungen, sowie eine<br />

handvoll zusätzlicher Pakete spendiert<br />

und ein Verwaltungswerkzeug entwickelt.<br />

ROSA Helium ist ebenfalls binärkompatibel<br />

zu RHEL 6. Die freie Version<br />

steht unter [12] zum Herunterladen zur<br />

Verfügung. Die Shop-Seite von Rosalab<br />

war bis Redaktionsschluss noch „Under<br />

Construction“.<br />

Alternativen<br />

Neben den erwähnten Distributionen<br />

gibt es noch eine Reihe kleinerer<br />

Anbieter, die ebenfalls die Nachfrage<br />

von Firmen bedienen, die <strong>Linux</strong> im<br />

Geschäftsumfeld einsetzen wollen.<br />

Das ist etwa der Univention Corporate<br />

Server, der schon mehrfach im <strong>ADMIN</strong><br />

vorgestellt wurde und auf Debian <strong>Linux</strong><br />

aufbaut. Auch für Debian selbst gibt es<br />

einige Anbieter im deutschen Raum, die<br />

kommerziellen Support für die ansonsten<br />

unveränderte Distribution leisten.<br />

Ubuntu-Support gibt es beim Unternehmen<br />

Canonical. Mehr dazu verrät der<br />

Artikel auf den folgenden Seiten.<br />

Fazit<br />

Der Nutzen von <strong>Enterprise</strong>-Distributionen<br />

besteht primär in einer möglichst<br />

langen Support-Dauer. So bieten sowohl<br />

RHEL, als auch SLES die Möglichkeit, ein<br />

System mit uneingeschränktem Herstellersupport<br />

bis zu zehn Jahre lang zu nutzen,<br />

ohne Pakete migrieren zu müssen.<br />

Durch die langen Support-Zeiträume haben<br />

auch große Softwarehäuser wie SAP<br />

ein Interesse daran, das Betriebssystem<br />

für ihre Anwendungen zu zertifizieren,<br />

was <strong>Enterprise</strong>-Distributionen für viele<br />

Firmen interessant macht.<br />

Eine konkrete Empfehlung für eine der<br />

Distributionen ist naturgemäß schwierig,<br />

ein paar Denkanstöße seien aber erlaubt.<br />

RHEL ist der Marktführer, und der Umsatz,<br />

den Red Hat mit RHEL-Subscriptions<br />

erwirtschaftet, sowie die Unternehmensgröße<br />

und die Anzahl installierte<br />

Kundensysteme sprechen jedenfalls für<br />

eine rosige Zukunft. Zudem sind viele<br />

Programme im <strong>Enterprise</strong>-Umfeld explizit<br />

für den RHEL-Kernel getestet , was ebenfalls<br />

für die Distribution spricht.<br />

Zudem ist RHEL nicht einmal der teuerste<br />

Vertreter. Die Subskriptions-Modelle<br />

lassen sich zwar nicht direkt vergleichen<br />

und Subskriptions-Kosten sollten auch<br />

sicher nicht das einzige Auswahlkriterium<br />

sein, auf zumindest auf dem Papier<br />

erscheint SLES kostspieliger. Dafür bietet<br />

SLES aber auch mehr: neben einem aktuelleren<br />

Kernel mit Btrfs- und LXE-Untersützung<br />

auch eine von RHEL unabhängige,<br />

erweiterte Paket-Basis. Bei Oracle<br />

<strong>Linux</strong> ist vor allem der Unbreakable-<br />

Kernel ein Novum und für viele Kunden<br />

sicher ein Argument, zumal Oracle <strong>Linux</strong><br />

das derzeit übersichtlichste und kostengünstigste<br />

Support-Modell anbietet.<br />

Dass Oracle in Teilen der <strong>Linux</strong>-Community<br />

keinen guten Ruf genießt, weil es<br />

im Umgang mit der Freien-Software-Welt<br />

nicht immer glücklich agiert hat, etwa<br />

bei der Klage gegen Google, muss bei<br />

der Kaufentscheidung nicht unbedingt<br />

eine Rolle spielen. Übrigens: Sowohl Red<br />

Hat als auch Suse und Oracle schließen<br />

in ihren <strong>Enterprise</strong>-Distributionen eine<br />

Versicherung ein, die Kunden vor potenziellen<br />

Copyright-und Patentklagen<br />

schützt. (ofr)<br />

n<br />

Infos<br />

[1] RHEL Sourcen: [http:// ftp. redhat. com/​<br />

pub/ redhat/ linux/ enterprise/]<br />

[2] RHEL alle Versionen: [https:// www. redhat.​<br />

com/ wapps/ store/ allProducts. html]<br />

[3] RHEL Virtualisierungsfunktionen: [https://​<br />

access. redhat. com/ knowledge/ docs/​<br />

de‐DE/ Red_Hat_<strong>Enterprise</strong>_<strong>Linux</strong>/ 6/ html/​<br />

Release_Notes/ virtualization. html]<br />

[4] Suse <strong>Linux</strong> <strong>Enterprise</strong> Server: [https://​<br />

www. suse. com/ de‐de/ products/ server/]<br />

[5] SLES-LXC-Quickstart-Guide:<br />

[http:// www. suse. com/ documentation/​<br />

sles11/ singlehtml/ lxc_quickstart/ lxc_<br />

quickstart. html]<br />

[6] VirtFS: [http:// wiki. qemu. org/​<br />

Documentation/ 9psetup]<br />

[7] Suse Virtual Machine Driver Pack:[http://​<br />

www. suse. com/ products/ vmdriverpack/]<br />

[8] Oracle <strong>Linux</strong>: [http:// www. oracle. com/ de/​<br />

technologies/ linux/ overview/ index. html]<br />

[9] Oracle Unbreakable Kernel (UEK): [http://​<br />

www. oracle. com/ us/ technologies/ linux/ ue<br />

k‐r2‐features‐and‐benefits‐1555063. pdf]<br />

[10] Ksplice: [http:// www. ksplice. com]<br />

[11] Sourcen und ISOs OEL 6.3:[http:// mirror.​<br />

netcologne. de/ oracle‐linux/ OL6/ U3/]<br />

[12] ROSA <strong>Enterprise</strong> <strong>Linux</strong> Server (RELS)<br />

2012: [http:// mirror. rosalab. ru/​<br />

rosa‐server2012/ iso/]<br />

[13] Novell-Support für RHEL:[https://​<br />

www. suse. com/ de‐de/ solutions/​<br />

enterprise‐linux‐servers/ redhat‐to‐suseli<br />

nuxenterprise‐migration. html]<br />

[14] Redpatch-Repository: [https:// oss. oracle.​<br />

com/ projects/ RedPatch]<br />

[15] Redpatch Git-Depot: [https:// oss. oracle.​<br />

com/ git/ ? p=redpatch. git;a=shortlog]<br />

Der Autor<br />

Thomas Drilling ist seit mehr als zehn Jahren<br />

hauptberuflich als freier Journalist und Redakteur<br />

für Wissenschafts- und IT-<strong>Magazin</strong>e tätig.<br />

Er selbst und das Team seines Redaktionsbüros<br />

verfassen regelmäßig Beiträge zu den Themen<br />

Open Source, <strong>Linux</strong>, Server, IT-Administration und<br />

Mac OS X. Außerdem arbeitet Thomas Drilling als<br />

Buchautor und Verleger, berät als IT-Consultant<br />

kleine und mittlere Unternehmen und hält Vorträge<br />

zu <strong>Linux</strong>, Open Source und IT-Sicherheit.<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

43


<strong>Enterprise</strong>-<strong>Linux</strong><br />

Ubuntu <strong>Enterprise</strong><br />

© Parinya Niranatlumpong, 123RF<br />

Distributionen zumindest aus Kostengesichtspunkten<br />

um je eine Server- und<br />

Desktop-Variante von Ubuntu ergänzen<br />

lässt (siehe Tabelle 1).<br />

Übrigens verspricht Canonical mit dem<br />

Advantage-Programm seinen Kunden<br />

unter dem Namen „Ubuntu Assurance“<br />

auch eine Art Versicherung gegen Patent-Klagen<br />

im Zusammenhang mit dem<br />

Einsatz von Ubuntu im Unternehmen.<br />

Canonical sichert seinem Advantage-<br />

Kunden im Falle eines Falles sowohl die<br />

Verteidigung als auch die Übernahme<br />

der entstandenen Kosten zu. Im Zusammenhang<br />

mit dem Advantage-Programm<br />

ist auch Canonicals Landscape [3] zur<br />

zentralen Verwaltung von Ubuntu-Installationen<br />

erwähnenswert (siehe Kasten<br />

„Landscape“).<br />

Ubuntu Business Desktop Remix 12.04 LTS<br />

Neu gemischt<br />

Mit seiner erstmals mit der Version 11.04 veröffentlichten Variante<br />

„Ubuntu Business Desktop Remix“ möchte Canonical nicht nur Windows<br />

vom Unternehmens-Desktops verdrängen, sondern vor allem auch eine<br />

kostengünstige Alternative zu den Unternehmens-Desktops von Red Hat<br />

und Suse bieten. Thomas Drilling<br />

Zwei Wochen nach der Veröffentlichung<br />

von Ubuntu 12.04 LTS (Long Termin Support)<br />

im Mai 2012 hat Canonical die erste<br />

Aktualisierung seiner „Business Desktop<br />

Remix“ [1] genannten Unternehmens-<br />

Variante herausgegeben. Erstmalig hatte<br />

man sie in der Version 11.10 mit dem Ziel<br />

veröffentlicht, den <strong>Enterprise</strong>-Desktop-<br />

Produkten von Red Hat und Suse eine<br />

Ubuntu-Variante gegenüberzustellen. Mit<br />

der Version 12.04 erlangte auch der Business<br />

Desktop Remix den LTS-Standard<br />

und ist daher aufgrund der von Canonical<br />

für einen Zeitraum von fünf Jahren<br />

garantierten Verfügbarkeit von Updates<br />

möglicherweise eine Alternative zu den<br />

kommerziellen Unternehmens-Desktops<br />

von Red Hat (RHEL für Desktops) und<br />

Suse (SLED – Suse <strong>Linux</strong> <strong>Enterprise</strong><br />

Desktop).<br />

Beim Studium der Papierform wird aber<br />

schnell klar, dass ein Vergleich mit den<br />

genannten <strong>Enterprise</strong>-Desktops hinkt.<br />

Zum einen ist der Ubuntu Business<br />

Desktop Remix im Unterschied zu RHEL<br />

und SLED nach einmaliger Registrierung<br />

kostenlos verfügbar. Zum zweiten unterscheidet<br />

sich die Distribution faktisch<br />

kaum von einer regulären Ubuntu-Distribution;<br />

was die Installation angeht bis<br />

auf den Startbildschirm überhaupt nicht.<br />

Die <strong>Enterprise</strong>-Versionen von Suse und<br />

Red Hat dagegen weichen dagegen erheblich<br />

von Open Suse und Fedora ab.<br />

Vorteil Ubuntu<br />

Im Rahmen des Advantage-Programms<br />

[2] bietet Canonical allerdings auch ein<br />

kostenpflichtiges Support-Programm,<br />

wahlweise für Server-, Desktop- und<br />

Cloud-Dienste beziehungsweise Produkte,<br />

sodass sich auch unsere Übersicht<br />

der aktuell verfügbaren <strong>Enterprise</strong>-<br />

Durchleuchtet<br />

Der Business Desktop Remix steht nach<br />

einer obligatorischen Registrierung zum<br />

kostenlosen Download in 32- und 64-Bit-<br />

Varianten für x86-Systeme zur Verfügung.<br />

Aus technischer Sicht unterscheidet sich<br />

Ubuntu Business Desktop 12.04 nicht<br />

von der Standard-Version, im Gegensatz<br />

zu den Desktop-Produkten von Red Hat<br />

und Suse.<br />

Das Ziel des Ubuntu Desktop Remix besteht<br />

laut Canonical [4] darin, Administratoren<br />

in Unternehmen ein Fundament<br />

zur Verfügung zu stellen, das diese<br />

nach Belieben für ihre Zwecke adaptieren<br />

können. Daher hat Canonical beim<br />

Business-Desktop Remix in erster Linie<br />

Spiele und Anwendungen, die sich mit<br />

sozialen Netzwerken verbinden, sowie<br />

Filesharing-Tools aus der Distribution<br />

Landscape<br />

Neben kommerziellen Support bietet Canonical<br />

mit Landscape auch professionelle Unterstützung<br />

beim „Ausrollen“ der Distribution<br />

an. Landscape ist eine Management-Software,<br />

mit deren Hilfe der Administrator Server-,<br />

Desktop- und Cloud-Dienste verwalten kann,<br />

vergleichbar mit dem Satellite Server von Red<br />

Hat (siehe Artikel in diesem Schwerpunkt).<br />

Mit Landscape ist es beispielsweise möglich,<br />

Sicherheits-Updates auf mehren hundert Maschinen<br />

gleichzeitig einzuspielen. Canonical<br />

bietet Landscape optional zu seinem Advantage-Support-Dienst<br />

an. Darüber hinaus bietet<br />

Landscape dem Admin exklusiven Zugriff auf<br />

Canonicals Knowledge-Datenbank.<br />

46 Ausgabe 01-2013 Admin www.admin-magazin.de


Ubuntu <strong>Enterprise</strong><br />

<strong>Enterprise</strong>-<strong>Linux</strong><br />

Abbildung 1: Remmina ist ein vielseitiger, leistungsfähiger und erweiterbarer<br />

Remotedesktop-Client.<br />

entfernt, ebenso wie eine Reihe weiterer<br />

Programme und Werkzeuge. Das sind im<br />

Prinzip vor allem Programme, die sich an<br />

Heimanwender richten.<br />

Dafür hat Canonical seiner Business-Variante<br />

im Gegenzug eine Reihe von speziell<br />

im Unternehmen nützlichen Anwendungen<br />

spendiert, wie das Adobe Flash<br />

Plugin, OpenJDK und VMware View oder<br />

Unterstützung für MS Windows RDP 7.1<br />

in Form des „Remmina Remote Desktop<br />

Client“ eingebaut (Abbildung 1). Der<br />

universelle Remote-Desktop-Client unterstützt<br />

über Plugins neben RDP auch die<br />

Protokolle für VNC, NX, Telepathy oder<br />

XDMCP.<br />

Alles davon lässt<br />

sich naturgemäß<br />

auch bei einer regulären<br />

Ubuntu-<br />

Varainte nachinstallieren,<br />

allerdings<br />

erspart der<br />

Ubuntu Desktop<br />

Remix dem Administrator,<br />

dank fehlender<br />

Spiele und<br />

Heim-Anwendungen<br />

viel Arbeit.<br />

Darüber hinaus<br />

wird sich der eine<br />

oder andere Admin<br />

über nützliche<br />

Kleinigkeiten,<br />

wie einen Libre-Office-Import-Filter für<br />

Microsoft Visio freuen.<br />

Fazit<br />

Ubuntu Business Desktop klingt auf dem<br />

ersten Blick nach einer interessanten und<br />

preiswerten Alternative zu den <strong>Enterprise</strong>-Versionen<br />

von Suse und Red Hat.<br />

Updates gibt es bei Canonical allerdings<br />

ohnehin kostenlos, bei den LTS-Versionen<br />

sogar fünf Jahre lang. Support kann man<br />

bei Bedarf dazu kaufen und ist in der<br />

Standard-Variante mit 105 US-Dollar im<br />

Jahr auf der sicheren Seite. Das gilt aber<br />

für alle Ubuntu-Versionen.<br />

Tabelle 1: Preise und Supportleistungen<br />

Distribution Ubuntu-Server Ubuntu-Desktop<br />

Basis-Preise für ein Jahr<br />

Anzahl 1 Server –<br />

Support-Umfang „Essential“: Landscape, Ubuntu –<br />

Assurance, Wissensdatenbank,<br />

Installation<br />

Preis 320 US-Dollar –<br />

Standard-Preise für ein Jahr<br />

Anzahl 1 Server 1 Desktop<br />

Support-Umfang „Standard“: Landscape, Ubuntu<br />

Assurance, Wissensdatenbank,<br />

Installation, Windows-Integration,<br />

„Standard“: Landscape, Ubuntu<br />

Assurance, Wissensdatenbank,<br />

Installation<br />

Virtualisierung<br />

Preis 700 US-Dollar 105 US-Dollar<br />

Premium-Preise für ein Jahr<br />

Anzahl 1 Server 1 Desktop<br />

Support-Umfang „Advanced“: Landscape, Ubuntu<br />

Assurance, Wissensdatenbank,<br />

Installation, Windows-Integration,<br />

Virtualisierung, Clustering, angepasstes<br />

„Advanced“: Landscape, Ubuntu<br />

Assurance, Wissensdatenbank,<br />

I nstallation, Desktop-Virtualisierung,<br />

Entwickler-Tools<br />

Paket-Repository<br />

Preis 1300 US-Dollar 165 US-Dollar<br />

Die von Canonical zum Business-Desktop-Remix<br />

formulierte Philosophie [4],<br />

eine Distribution für den Unternehmenseinsatz<br />

zu liefern, ist fundiert. Vorteile<br />

für den Anwender sind hierbei die einfache<br />

Benutzbarkeit, freie Software, zertifizierte<br />

proprietäre Anwendungen und<br />

Viren-Freiheit. Alle diese Vorteile könnte<br />

eine maßgeschneiderte Ubuntu-Variante<br />

liefern, aber so maßgeschneidert ist Business<br />

Remix nicht.<br />

Das soll keine Abwertung einer an sich<br />

gelungenen Distribution sein, sondern<br />

lediglich die Feststellung, dass eine gewöhnliche<br />

LTS-Version von Ubuntu denwohl<br />

vor allem als Marketing-Instrument<br />

konzipiert, das „Business“-Kunden die<br />

bei Heimandwendern populäre Ubuntu-<br />

Distribution nahe bringen soll. Das aber<br />

hat Canonical in Anbetracht seines fairen<br />

Support-Agebots eigentlich aber gar nicht<br />

nötig. Andererseits böte das Thema einer<br />

für den Unternehmens-Einsatz optimierten<br />

Desktop-Variante von Ubuntu durchaus<br />

noch Potenzial.<br />

So oder so stellt derzeit auch ein reguläres<br />

LTS-Ubuntu im Zusammenhang mit<br />

dem Advantage-Support-Paket und der<br />

Verwaltungs-Software Landscape bereits<br />

eine stimmige Lösung für den Einsatz<br />

in kleinen Unternehmen dar, nicht nur,<br />

wenn auch auf Server-Seite ein Ubuntu-<br />

System seinen Dienst verrichtet. (ofr) n<br />

Infos<br />

[1] Ubuntu Business Desktop Remix: [http://​<br />

www. ubuntu. com/ business/ desktop/ remix]<br />

[2] Advantage-Programm: [http:// www. ubuntu.​<br />

com/ business/ advantage]<br />

[3] Ubuntu-Landscape: [http:// www. ubuntu.​<br />

com/ business/ landscape]<br />

[4] Ziele Business Desktop Remix: [http://​<br />

blog. canonical. com/ 2012/ 05/ 10/ the‐new‐b<br />

usiness‐desktop‐remix‐is‐out‐now]<br />

Der Autor<br />

Thomas Drilling ist seit mehr als zehn Jahren<br />

hauptberuflich als freier Journalist und Redakteur<br />

für Wissenschafts- und IT-<strong>Magazin</strong>e tätig.<br />

Er selbst und das Team seines Redaktionsbüros<br />

verfassen regelmäßig Beiträge zu den Themen<br />

Open Source, <strong>Linux</strong>, Server, IT-Administration und<br />

Mac OS X. Außerdem arbeitet Thomas Drilling als<br />

Buchautor und Verleger, berät als IT-Consultant<br />

kleine und mittlere Unternehmen und hält Vorträge<br />

zu <strong>Linux</strong>, Open Source und IT-Sicherheit.<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

47


<strong>Enterprise</strong>-<strong>Linux</strong><br />

Satellite Server<br />

© Dirk Ercken, 123RF<br />

<strong>Enterprise</strong> Software Management mit dem Red Hat Satellite Server<br />

Paketversand<br />

Red Hats Satellite Server, ein unternehmenstaugliches Patch-Management-System, hält das gesamte Netzwerk<br />

auf dem Laufenden. James Dade<br />

Unsere Organisation folgt momentan einem<br />

systematischen, händischen Ansatz<br />

beim Patch Management. Das schließt<br />

die Identifikation der Notwendigkeit von<br />

Patches, ihre Beschaffung, das Testen<br />

und die Lösung von Problemen im Zusammenhang<br />

mit Patches sowie das Einspielen<br />

der Patches ein. Bei uns erhalten<br />

die Administratoren Hinweise auf Patches<br />

in der Regel per E-Mail entweder von den<br />

Herstellern oder aufgrund von Recherchen.<br />

Das Information Assurance Team<br />

(IA) veröffentlicht außerdem Sicherheitswarnungen<br />

in der Regel etwa eine Woche<br />

nach den Herstellermeldungen.<br />

Nachdem ein Admin einen Hinweis auf<br />

einen nötigen Patch erhalten hat, lädt<br />

er den Patch von den Webseiten eines<br />

Herstellers herunter und speichert ihn<br />

in einem eigenen Repository. Sobald<br />

der Patch dort angelangt ist, testet ihn<br />

der Admin in einer speziellen Test- oder<br />

Entwicklungsumgebung. Tauchen dabei<br />

Probleme auf, kontaktiert der Admin den<br />

Herausgeber des Patchs und löst sie.<br />

Nach Abschluss der Tests ist der Patch für<br />

das Einspielen auf den Produktivsystemen<br />

im nächsten Wartungsfenster bereit.<br />

Danach wandert der Patch in ein anderes<br />

Repository, wo er archiviert wird.<br />

Red Hats Methode der Automatisierung<br />

solcher Software-Updates ist der Satellite<br />

Server. Seine Rolle entspricht ungefähr<br />

der von Microsofts Systems Management<br />

Server (SMS). Die Einführung eines Satellite<br />

Server muss nicht notwendigerweise<br />

den ganzen Patch-Management-Prozess<br />

umkrempeln, aber ein solcher Server automatisiert<br />

fortan das Abrufen, Speichern<br />

und Ausbringen der Patches. Außerdem<br />

pflegt der Satellite Server eine Sammlung<br />

aller Software Packages auf allen von ihm<br />

verwalteten Systemen. Der Satellite Server<br />

besorgt sich automatisch zu jedem<br />

erforderlichen Patch auch die Dokumentation,<br />

aus der hervorgeht, warum er eingespielt<br />

wurde.<br />

Forschungsansatz<br />

Als primäre Tools für die vorliegende Recherche<br />

dienten die verschiedenen Handbücher<br />

zum Red Hat Satellite Server 5.4.<br />

Red Hats Solutions Architect war ebenfalls<br />

eine hilfreiche Quelle. Drei Monate<br />

lang testeten wir den Red Hat Satellite<br />

Server, der auf einem HP Proliant DL380<br />

48 Ausgabe 01-2013 Admin www.admin-magazin.de


Satellite Server<br />

<strong>Enterprise</strong>-<strong>Linux</strong><br />

G5 installiert war, auf dem RHEL 6.1 mit<br />

einer Basisausstattung an Paketen lief.<br />

Als Test-Clients dienten ein Proliant<br />

DL380 G5 und ein HP Proliant WS 460<br />

G6, der in einem HP Blade-System C7000<br />

steckte. Abbildung 1 zeigt die Testumgebung.<br />

Patchen mit dem Satellite<br />

Server<br />

Red Hat generiert Patches nach Bedarf,<br />

manchmal vier- oder fünfmal die Woche<br />

für bestimmte Programme. Diese Patches<br />

haben oft mehrfache Abhängigkeiten.<br />

Wollte man die Patches manuell einspielen,<br />

könnte es leicht Stunden wenn<br />

nicht Tage dauern, die Abhängigkeiten<br />

aufzulösen und die nötigen Files zu den<br />

Rechnern zu transferieren, die gepatchet<br />

werden sollen.<br />

Theoretisch kann man ein Red-Hat-System<br />

mit nichts als Yum aktuell halten<br />

(siehe Kasten „Patching mit Yum“),<br />

aber in der Praxis führt der Zeitbededarf,<br />

und das Risiko, dass einem ein wichtiger<br />

Patch durch die Lappen geht, dazu, dass<br />

man ein Tool braucht, das die Patches<br />

ordnet, verwaltet, zeitlich plant und einspielt.<br />

Ein solches Werkzeug, das Patches (Security<br />

Fixes wie Funktionserweiterungen)<br />

halbautomatisch implementiert, ist der<br />

Red hat Satellite Server. Die von ihm<br />

verwalteten Server müssen dabei keine<br />

Abbildung 1: Die Testumgebung für die Versuche mit dem Red Hat Satellite Server.<br />

Abbildung 2: Single-Server-Konfiguration: Ein einziger Satellite Server bedient das gesamte interne Netz.<br />

8,90€ *<br />

124 Seiten <strong>Linux</strong><br />

+ DVD<br />

Die aktuelle Ausgabe von <strong>Linux</strong>User Spezial<br />

dringt in die Tiefen des <strong>Linux</strong>-Systems ein<br />

und zeigt, wie Sie Ihren Rechner auf der<br />

Kommandozeile administrieren.<br />

www.admin-magazin.de<br />

Jetzt bestellen<br />

unter: www.linuxuser.de/spezial<br />

Tel.: 089-9934110, Admin Fax: 089-99341199, E-Mail: Ausgabe order@linuxuser.de<br />

01-2013<br />

49


<strong>Enterprise</strong>-<strong>Linux</strong><br />

Satellite Server<br />

Patching mit Yum<br />

Der Yellowdog Updater Modified (Yum) ist ein<br />

freies Kommandozeilentool für den Red Hat<br />

Package Manager, den Red Hat, Suse, Fedora<br />

und einige andere Distributionen nutzen.<br />

Um Yum benutzen zu können, muss der Server<br />

mit dem Internet verbunden sein. Yum unterstützt<br />

eine Anzahl verschiedener Package<br />

Repositories. Wer seine Pakete aus den Repositories<br />

im Red Hat Network bezieht, der muss<br />

das zu patchende System bei einem RHN-Server<br />

registrieren.<br />

Der YUM Package-Management-Prozess öffnet<br />

die folgenden Sicherheitslöcher im Netzwerk:<br />

n Jeder Red Hat Server braucht eine Internetverbindung.<br />

n Die Serverkonfiguration ist für Red Hat einsehbar<br />

und damit im Falle eines Sicherheitslecks<br />

bei Red Hat auch für die Welt.<br />

Die Herangehensweise mit Yum ist akzeptabel,<br />

wenn der fragliche Client ohnehin mit dem Internet<br />

verbunden ist, wie das etwa bei einem<br />

Webserver wäre, der ohnehin offene Ports hat,<br />

und für den Durchlässe in der Firewall sowieso<br />

existieren müssen.<br />

Für alle Server mit Red Hat <strong>Enterprise</strong> <strong>Linux</strong><br />

(RHEL) empfiehlt der Autor jedoch, auf Yum zu<br />

verzichten, weil so zu viele Angriffsmöglichkeiten<br />

eröffnet werden, die unter Umständen das<br />

ganze Netzwerk unsicher machen können. Jeder<br />

Rechner mit RHEL könnte zum Ziel einer Attacke<br />

werden, wenn seine Software auf einem Server<br />

außerhalb des eigenen Kontrollbereichs inventarisiert<br />

wird.<br />

Red Hat-Maschinen sein, Satellite Server<br />

unterstützen auch Solaris- und Microsoft-<br />

Systeme. Der Satellite Server hat eine Internetverbindung<br />

und ist – als einziger<br />

Server – bei dem Server des Red Hat<br />

Network registriert, der die Patches bereitstellt.<br />

Der Admin legt eine Zeit in der<br />

Nacht fest, zu der der Satellite Server im<br />

RHN nach Updates sucht.<br />

Inventar in Datenbank<br />

Der Satellite Server unterhält ein Inventar<br />

der Software auf jedem Client, das<br />

in einer Oracle Datenbank gespeichert<br />

ist, die sich entweder auf dem Satellite<br />

Server oder einem extra Datenbankserver<br />

befinden kann. Sobald alle Patches heruntergeladen<br />

wurden, berechnet der Satellite<br />

Server, wer welchen Patch braucht.<br />

Danach erstellt er für jeden Client einen<br />

Zeitplan. Die eigentliche Installation<br />

des Patches plant dann der Admin des<br />

Clients. Damit bietet der Satellite Server<br />

eine Lösung für Anwender, die eine absolute<br />

Kontrolle benötigen, über die auf<br />

ihren Servern eingespielten Sicherheitspackages<br />

und alle Informationen darüber.<br />

Er erlaubt Red-Hat-Kunden die größte<br />

Flexibilität und zugleich Sicherheit beim<br />

Updaten ihrer Server.<br />

Der Satellite Server braucht wie bereits<br />

erwähnt eine Datenbank, die auf einem<br />

separaten Server oder auf dem Satellite<br />

Server selbst laufen kann. Beide Optionen<br />

sind weitgehend identisch, aber<br />

nicht ganz. Unterschiede ergeben sich<br />

insbesondere bei den Hardwareanforderungen,<br />

bei den Installationsschritten<br />

und bei der Wartung.<br />

Für die Einbindung des Satellite Servers<br />

in ein Netzwerk bieten sich drei verschiedenen<br />

Topologien an: einzelner Satellite<br />

Server, mehrere Satellite Server, horizontal<br />

abgestuft und vertikal abgestufter<br />

Satellite-Proxy.<br />

Die Single-Server-Topologie mit einem<br />

einzigen Satellite Server für das gesamte<br />

Netzwerk zeigt Abbildung 2. Diese Konstellation<br />

ist ideal für Laborumgebungen,<br />

eignet sich aber nicht besonders gut,<br />

wenn das Netz in Subnetze aufgeteilt<br />

ist, wo einzelne Abteilungen ihre eigenen<br />

Server warten. Die Single-Server-<br />

Konfiguration ist vergleichsweise billig<br />

und leicht zu administrieren, ist aber auf<br />

eine nicht-hierarchische Netzwerkstruktur<br />

ausgelegt und skaliert in größeren<br />

Umgebungen schlecht.<br />

Bei der Topologie mit mehreren Satellite<br />

Servern und horizontaler Gliederung,<br />

sind verschiedene Satellite Server mit<br />

Abbildung 3: Mehrere Satellite Server mit horizontaler Gliederung der Topologie: Eine Anzahl Server bedient<br />

jeweils ein Subnetz.<br />

Abbildung 4: Topologie mit einem zentralen Satellite Server und Proxies bei vertikaler Gliederung.<br />

50 Ausgabe 01-2013 Admin www.admin-magazin.de


Satellite-Server-Systemanforderungen<br />

n 8 GByte RAM (2 GByte reichen prinzipiell, mit verbundenen Proxies ist der Server dann aber<br />

sehr langsam).<br />

n 30 GByte Plattenplatz pro Software-Kanal; eine separate Partition /var/​satellite<br />

n 12 GByte Plattenplatz für die eingebettete Datenbank; eine separate Partition /rhnsat<br />

n Intel Multicore-Prozessor mit mindestens 2,4 GHz<br />

n 5 GByte Plattenplatz für RHEL 6.1<br />

n 10 GByte Plattenplatz für den Cache auf einer separaten Partition /var/​cache/​rhn<br />

dem Internet verbunden (Abbildung<br />

3). Jeder Server wird mit allen anderen<br />

synchronisiert. Bei dieser Variante hat<br />

jedes Subnetz oder Projekt seinen eigenen<br />

Satellite Server. Zusätzlich ist ein<br />

Failover möglich, falls einer der Server<br />

ausfällt. Allerdings erhöht diese Variante<br />

mit vielen Servern die Kosten erheblich,<br />

denn jeder Server braucht eine eigene<br />

Lizenz, und das gesamte System ist auch<br />

wesentlich aufwendiger zu konfigurieren<br />

und zu warten.<br />

Mit Proxy<br />

Die Version Satellite Proxy mit vertikaler<br />

Gliederung zeigt Abbildung 4. Einem<br />

einzelnen Satellite Server steht hier eine<br />

Anzahl von Satellite Proxies in den verschiedenen<br />

Subnetzen gegenüber. Der<br />

Proxy-Server fungiert als Pakete-Cache,<br />

der die erforderliche Bandbreite der<br />

Verbindung zum RHN-Server reduziert.<br />

Dabei hat nur der Satellite Server eine<br />

direkte Internetverbindung. Die Proxy-<br />

Server reden nur mit den Clients, die sie<br />

managen, und mit dem Satellite Server.<br />

Zwar liegen die Pakete nun auf den<br />

Proxy-Servern, aber die Profile und User-<br />

Informationen der Clients speichert weiterhin<br />

der Satellite Server. Der Proxy-Server<br />

agiert als Vermittler zwischen Client<br />

und Satellite Server. Sobald Red Hat einen<br />

Patch freigibt, lädt ihn der Satellite<br />

Server herunter und prüft, für welches<br />

Clientsystem er infrage kommt. Dann<br />

verschiebt er den Patch auf den jeweils<br />

zuständigen Proxy-Server [3].<br />

Auf den Proxies werden nur Paket-Dateien<br />

gespeichert. Jede Transaktion wird weiter<br />

durch den Satellite Server authentisiert.<br />

Der Red Hat Update Agent überprüft die<br />

GPG-Signatur jedes Pakets, das er vom<br />

lokalen RHN Proxy Server oder dem Satellite<br />

Server erhält. Die Signaturen werden<br />

bei der Installation erzeugt und jedes<br />

System hat zur Identifikation, eine Kopie<br />

der Signaturen von Satellite und Proxy-<br />

Server. Der Proxy Server kann auch so<br />

konfiguriert werden, dass er neben den<br />

offiziellen Red-Hat-Paketen zusätzlich<br />

solche aus privaten Kanälen verwendet.<br />

Abbildung 5: Realistisches Beispiel einer Proxy-Server-Konfiguration mit vertikaler Gliederung.<br />

www.admin-magazin.de<br />

Ausgabe 01-2013<br />

51


<strong>Enterprise</strong>-<strong>Linux</strong><br />

Satellite Server<br />

Beispielsweise könnte eine Firma ihre<br />

eigene Software entwickeln, paketieren<br />

und mit ihrer eigenen GPG-Signatur signieren.<br />

Die lokalen RHN-Proxies könnten<br />

dann alle individuellen Systeme mit der<br />

neuesten Version dieser Software versorgen.<br />

(Tatsächlich wäre ein vergleichbares<br />

Szenario auch mit den anderen beiden<br />

Topologien realisierbar.)<br />

Empfehlenswert<br />

Abbildung 6: Das Webinterface des Satellite Servers mit der Übersichtsseite.<br />

Die vertikal gegliederte Proxy-Topologie<br />

ist sicher und skalierbar. Sie schont<br />

gleichzeitig die Bandbreite, weil die benötigten<br />

Pakete nur einmal aus dem Internet<br />

heruntergeladen werden müssen,<br />

und sie vereinfacht die Konfiguration für<br />

spezielle Architekturen und Betriebssystemversionen.<br />

Die Proxy-Lizenzen sind<br />

zudem billiger als komplette Satellite-<br />

Server-Lizenzen, was Kosten spart. Auf<br />

der anderen Seite fallen im Vergleich mit<br />

der Single-Server-Version natürlich mehr<br />

Lizenzkosten an, und das Personal muss<br />

trainiert werden, diese Variante zu beherrschen.<br />

Abbildung 5 illustriert, wie<br />

eine Firma die Proxy-Server-Topologie<br />

einsetzen könnte, um Updates und Softwareverteilung<br />

über mehrere Standorte<br />

hinweg zu vereinfachen.<br />

Testresultate<br />

Abbildung 7: Die Systems-Seite zeigt eine Zusammenfassung zu den verwalteten Systemen.<br />

Abbildung 8: Die Errata Page zeigt verfügbare Patches.<br />

Im Zuge der Evaluierung des Satellite Servers<br />

haben wir den Eindruck gewonnen,<br />

dass die Dokumentation von Red Hat<br />

einen guten Überblick verschafft, aber<br />

nicht zu wörtlich genommen werden<br />

sollte. Die Handbücher enthalten eine<br />

Reihe von Fehlern und Auslassungen.<br />

Außerdem hat Red Hat die Namen aller<br />

Kommandos von der vorhergehenden zur<br />

aktuellen Version geändert, aber die Dokumentation<br />

nicht angepasst.<br />

Der Kasten „Satellite Server Systemanforderungen“<br />

enthält eine Zusammenfassung<br />

der Anforderungen. Außerdem<br />

sollte man bedenken, dass für den Satellite<br />

Server eine Reihe von Ports geöffnet<br />

und die Firewallregeln dafür entsprechend<br />

modifiziert werden müssen. Im<br />

Einzelnen geht es dabei um die Ports 80,<br />

443 und 4545 eingehend und ausgehend,<br />

sowie 5222 nur eingehend. Im Fall der<br />

Konfiguration mit Proxy Servern muss<br />

außerdem der Port 5369 offen sein.<br />

52 Ausgabe 01-2013 Admin www.admin-magazin.de


Satellite Server<br />

<strong>Enterprise</strong>-<strong>Linux</strong><br />

Tabelle 1: Kostenvoranschläge (in US-Dollar)<br />

Produkt Anzahl Händler A Händler B Händler C<br />

Satellite Server Subscription 1 4423,19 8100,00 8012,09<br />

Proxy Server Subscription 2 4500,00 3850,00 4006,04<br />

Management/​Provisioning<br />

Subscription<br />

Weiter wird eine Quelle für die Zeitsynchronisation<br />

via NTP benötigt, und der<br />

zugehörige Port 123 muss konfiguriert<br />

werden. Der qualifizierte Domänname<br />

des Servers (FQDN) muss im DNS-System<br />

registriert sein.<br />

Red Hat setzt voraus, dass der Satellit<br />

Server komplett installiert ist, bevor irgendwelche<br />

spezifischen Sicherheitseinstellungen<br />

konfiguriert werden. Per<br />

Abbildung 9: Die Zeitsteuerung für das Einspielen der Patches.<br />

2 339,78 144,00 307,66<br />

Summe 9262,97 12094,00 12325,79<br />

Default sind die folgenden Services abgeschaltet:<br />

Telnet, FTP und TFTP. Zum<br />

Einloggen verwendet man SSH.<br />

Für den Satellite Server 5.4.1 muss sich SE<br />

<strong>Linux</strong> im sogenannten Permissive Mode<br />

befinden im Enforcing Mode kommt es<br />

zu Fehlern (das soll im nächsten Release<br />

behoben sein). Für diesen Test lief der Satellite<br />

Server virtualisiert unter VMware<br />

oder KVM mit eingebetteter Datenbank.<br />

Der Satellite Server wird über ein Webinterface<br />

administriert (Abbildung 6). Sein<br />

Installationsskript richtet dafür einen<br />

Apache Webserver 2.2 ein. Abbildung<br />

6 zeigt die Übersichtsseite, die Aufgaben<br />

und kritische Systeme zusammenfasst.<br />

Um zu der Systems-Seite zu wechseln,<br />

auf der der Administrator die meiste Zeit<br />

verbringen wird, klickt man auf den Reiter<br />

„Systems“ (Abbildung 7).<br />

Administration via Web<br />

Die Legende an der linken Seite ist wichtig<br />

für einen Überblick über den Systemstatus.<br />

Die Icons stehen für spezifische<br />

Zustände. Im Beispiel kann man erkennen,<br />

dass der Server SAS-Testing einige<br />

kritische Patches benötigt, die eingetaktet<br />

werden müssen. Für detaillierte Information<br />

klickt man auf den Servernamen<br />

oder wählt einen der Parameter unter<br />

»Overview«. Wählt man zum Beispiel die<br />

Nummer 4 unter »Errata« für den Server<br />

SAS-Testing, so landet man auf der<br />

Errata-Seite (Abbildung 8). Hier wählt<br />

man »Select All« und dann »Apply Errata«<br />

aus. Auf der nächsten Seite (Abbildung<br />

9) entscheidet man sich dann für einen<br />

Zeitpunkt, zu dem der Patch eingespielt<br />

werden soll, und klickt »Confirm«.<br />

Abbildung 10 zeigt die beiden jetzt zeitlich<br />

eingeplanten Patches und zwei mit<br />

ihnen verbundene Bugfixes. Wieder kann<br />

man entweder jeden Patch einzeln oder<br />

»Select all« und dann »Apply Errata« anklicken.<br />

E<br />

C13<br />

Abbildung 10: Eine Zusammenfassung für das eingetaktete Update.<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

53


<strong>Enterprise</strong>-<strong>Linux</strong><br />

Satellite Server<br />

Abbildung 11: Die Details-Page zeigt viele wichtige Einzelheiten.<br />

Eine andere nützliche Zusammenstellung<br />

von Informationen erscheint, wenn man<br />

auf »System Details« klickt (Abbildung<br />

11). Diese Seite zeigt den Typ der verfügbaren<br />

Updates (Kritisch, nicht-kritisch),<br />

die IP-Adresse des Servers, die<br />

Kernelversion und mehr. Klickt man auf<br />

»Packages« (jeder Text in blauer Farbe<br />

ist ein Link), erscheinen die verfügbaren<br />

Updates von Paketen, wie man in<br />

Abbildung 12 sieht. Die Liste enthält<br />

alle installierten Pakete, und man kann<br />

auf einen Paketnamen klicken, um eine<br />

Beschreibung des Paketinhalts zu bekommen.<br />

Ein Klick auf den Paketnamen (oder<br />

auf »Select All«) und danach auf »Install<br />

Selected Packages« startet schließlich den<br />

Installationsprozess.<br />

Lizenzierung<br />

Red Hats Lizenzierung gleicht eher einem<br />

Abo-Modell: Man muss die Subskriptions-Gebühr<br />

jedes Jahr bezahlen,<br />

solange der Server läuft. Wir haben Kostenvoranschläge<br />

von drei autorisierten<br />

Red-Hat-Händlern eingeholt. Tabelle 1<br />

zeigt die Ergebnisse für eine Lizenz des<br />

Red Hat Satellite Server plus Lizenzen<br />

für zwei Proxy Server und Management/​<br />

Provision-Module.<br />

Fazit<br />

Der Satellite Server bietet ein automatisiertes<br />

Verfahren, um Patches auf Server<br />

einzuspielen. Es kann diesen ansonsten<br />

langwierigen und zeitintensiven Prozess<br />

enorm vereinfachen. Nichtsdestotrotz<br />

müssen auch weiterhin alle Patches vorher<br />

getestet werden, doch ist das für den<br />

Admin nun viel einfacher.<br />

Während unserer Tests des Satellite Servers<br />

stießen wir auf ein IDC-Whitepaper<br />

mit dem Titel „<strong>Linux</strong> Management mit<br />

Red Hat Network Satellite: Measuring<br />

Business Impact and ROI“ von Tim Grieser,<br />

Randy Perry und Eric Hatcher. Die<br />

Autoren kommen zu dem Schluss, „…<br />

auf der Grundlage von Interviews mit IT<br />

Managern aus 10 Unternehmen, die Red<br />

Hat Network Satellite einsetzen, ergibt<br />

sich im Durchschnitt ein ROI von 338<br />

Prozent, es wird also das Dreifache der<br />

Investitionskosten erwirtschaftet. Und<br />

das binnen weniger als 5 Monaten.“<br />

Wir empfehlen die Topologie mit Proxy-<br />

Servern und vertikaler Gliederung. Diese<br />

Lösung garantiert eine hohe Granularität<br />

beim Einspielen der Patches. Auch die<br />

Implementierung des Satellite Servers in<br />

einer Virtualisierungsumgebung ist empfehlenswert<br />

(infrage kommen KVM oder<br />

VMware). Das spart deutlich Kosten und<br />

wird von Red Hat auch vollständig unterstützt.<br />

(jcb))<br />

n<br />

Abbildung 12: Die Seite »Packages« zeigt, welche Pakete veraltet sind.<br />

Infos<br />

[1] Red Hat Network Satellite documentation:<br />

[https:// access. redhat. com/ knowledge/​<br />

docs/ Red_Hat_Network_Satellite/]<br />

[2] „The Red Hat <strong>Enterprise</strong> <strong>Linux</strong><br />

Advantage“-Whitepaper: [http:// www.​<br />

redhat. com/ f/ pdf/ rhel/ RHEL6_Advantage_<br />

WP. pdf]<br />

[3] Scott Carpenter:„Patch Management for<br />

the Real World A Managers Guide“ [http://​<br />

www. whitepapersdb. com/ whitepaper/​<br />

9083/ patch‐management‐for‐the‐real‐worl<br />

d‐a‐managers‐guide]<br />

[4] <strong>Linux</strong> Management with Red „Hat Network<br />

Satellite: Measuring Business Impact<br />

and ROI“: [www. redhat. com/ f/ pdf/ rhn/​<br />

IDC_RHN_approach. pdf]<br />

54 Ausgabe 01-2013 Admin www.admin-magazin.de


Know-how<br />

Windows Server 2012<br />

© Jaroslav Machacek, 123RF<br />

Die 12 besten Tricks für Windows Server 2012<br />

Schatztruhe<br />

Anwender von Windows Server 2012 profitieren von zahlreichen Neuerungen,<br />

vor allem in den Bereichen Virtualisierung, Hochverfügbarkeit<br />

und Storage. Wir zeigen Ihnen einige Tricks, die den Umgang mit dem<br />

neuen System deutlich erleichtern. Thomas Joos<br />

Während sich die Anwender noch um<br />

die Usability von Windows 8 streiten,<br />

müssen sich Administratoren Gedanken<br />

um die Nutzung von Windows Server<br />

2012 machen, der entweder auch gekachelt<br />

daherkommt oder auf Wunsch<br />

auch ganz ohne GUI. Darunter hat die<br />

neue Windows-Server-Variante Schätze<br />

zu bieten, die die folgenden Tricks an die<br />

Oberfläche heben.<br />

E Server-Manager<br />

effizient nutzen<br />

Bereits mit Windows Server 2008 R2<br />

konnten Sie Server teilweise mit dem<br />

Server-Manager im Netzwerk verwalten.<br />

Das war allerdings nur sehr rudimentär<br />

möglich. So kann der Server-Manager in<br />

Windows Server 2008 R2 zum Beispiel<br />

keine Rollen über das Netzwerk installieren,<br />

und auch die Verwaltung der Serverrollen<br />

ist nicht sehr effizient gelöst. Hier<br />

ist Windows Server 2012 deutlich besser.<br />

In Windows Server 2012 ist es zum Beispiel<br />

möglich, Serverrollen und Features<br />

über das Netzwerk auf anderen Servern<br />

zu installieren (Abbildung 1).<br />

Den Assistenten zur Installation von<br />

Serverrollen und Features hat Microsoft<br />

zu einem einzelnen Assistenten zusammengefasst.<br />

So lassen sich diese einfacher<br />

und schneller installieren, da nur<br />

ein Installationsvorgang notwendig ist.<br />

Installierte Serverrollen und die entsprechenden<br />

Server zeigt der Server-Manager<br />

automatisch gruppiert an. Verwaltungswerkzeuge<br />

listet der Server-Manager direkt<br />

über das Tools-Menü an. Sie können<br />

das Toolsmenü sogar bearbeiten. Dazu<br />

finden Sie in der Systemsteuerung den<br />

Bereich »System und Sicherheit\Verwaltung«.<br />

Alle Verknüpfungen in diesem<br />

Bereich zeigt der Server-Manager im<br />

Menü »Tools« an. Sie können an dieser<br />

Stelle weitere Verknüpfungen hinzufügen,<br />

Verknüpfungen entfernen und sogar<br />

eine Ordnerstruktur erstellen. Um im<br />

Server-Manager in Windows Server 2012<br />

weitere Server anzubinden, klicken Sie<br />

auf »Verwalten« und dann auf »Server<br />

hinzufügen«. Im Fenster können Sie anschließend<br />

nach Servern suchen, um sie<br />

im lokalen Server-Manager zu verwalten.<br />

Auf diesem Weg erstellen Sie auch<br />

eigene Servergruppen, die Sie im Server-<br />

Manager zusammenfassen. Von diesen<br />

Gruppen können Sie dann Ereignismeldungen<br />

anzeigen lassen. Sie können nur<br />

Serverrollen und ‐Features installieren,<br />

wenn Sie den entsprechenden Server vorher<br />

angebunden haben.<br />

E NIC-Teaming<br />

Windows Server 2012 kann ohne Zusatzwerkzeug<br />

bis zu 32 kompatible Netzwerkkarten<br />

zu Teams zusammenfassen.<br />

Sie können während der Einrichtung auswählen,<br />

ob Sie einzelne Adapter im Team<br />

als Standby-Adapter nutzen wollen, also<br />

zur Ausfallsicherheit, oder ob Sie die Geschwindigkeit<br />

der Adapter zusammenfassen<br />

wollen, um die Leistung zu erhöhen.<br />

Sie können nur Ethernet-Verbindungen<br />

zu Teams zusammenfassen. Bluetooth<br />

56 Ausgabe 01-2013 Admin www.admin-magazin.de


kinderleicht<br />

+ ausgereift<br />

IPTAM ® PBX VoiP Telefonanlage<br />

mit bester ISDN-Integration<br />

Abbildung 1: Mit dem Server-Manager in Windows Server 2012 verwalten Sie alle Rollen und Features in einer<br />

übersichtlichen Oberfläche.<br />

oder WLAN gehören nicht zu den unterstützten<br />

Funktionen. Außerdem müssen<br />

alle Netzwerkkarten mit der gleichen Geschwindigkeit<br />

angeschlossen sein.<br />

Um ein NIC-Team zu erstellen, starten<br />

Sie den Server-Manager, und klicken Sie<br />

auf »Lokaler Server«. Standardmäßig ist<br />

das Teaming deaktiviert. Um die Funktion<br />

zu aktivieren, klicken Sie auf den<br />

Link bei »Deaktiviert«. Anschließend öffnet<br />

sich ein neues Fenster. Hier sehen<br />

Sie im unteren rechten Bereich, welche<br />

Netzwerkadapter im Server kompatibel<br />

zum NIC-Teaming sind. Um ein Team<br />

zu erstellen, klicken Sie mit der rechten<br />

Maustaste in das Fenster bei »Adapter<br />

und Schnittstellen« und wählen »Zum<br />

neuen Team hinzufügen«. Über den Link<br />

»Weitere Eigenschaften« können Sie zusätzliche<br />

Einstellungen vornehmen, um<br />

das NIC-Team zu konfigurieren. Windows<br />

Server 2012 verwendet als MAC-Adresse<br />

des Teams die MAC-Adresse der primären<br />

Netzwerkkarte. Auch Core-Server unterstützen<br />

NIC-Teams. Hier können Sie die<br />

Einrichtung entweder über den Server-<br />

Manager von einem anderen Server aus<br />

durchführen, oder Sie verwenden die<br />

Powershell.<br />

In der Powershell können Sie sich mit<br />

dem Befehl »Get‐NetAdapter« die einzelnen<br />

möglichen Team-Adapter anzeigen<br />

lassen, und mit »Enable‐NetAdapter«<br />

beziehungsweise »Disable‐NetAdapter«<br />

Kinderleichte Administration<br />

n per CD auf einem Server<br />

Ihrer Wahl<br />

n oder als Fertiggerät<br />

(Appliance)<br />

n Vorbildliche Dokumentation:<br />

www.iptam.com/wiki/<br />

Ausgereifte Funktionalität<br />

n Bequeme Bedienung<br />

über Web-Oberfläche<br />

n Einspielen von Patches,<br />

Lizenzerweiterung, ISDN-<br />

Konfiguration mit 3 Klicks<br />

n Und natürlich alle gängigen<br />

Funktionen: Voicemail, Instant<br />

Messaging Server, Fax-Server,<br />

Konferenzräume, Warteschlangen,<br />

Sprachmenüs, Klingelgruppen,<br />

Durchsagefunktion, Konfiguration<br />

der Telefone über die Anlage ....<br />

selber<br />

testen!<br />

Die IPTAM PBX 5<br />

kostenlos<br />

downloaden:<br />

www.iptam.com<br />

Demosystem<br />

online testen:<br />

www.iptam.com/demo<br />

Abbildung 2: Anzeigen des Status des NIC-Teamings.<br />

www.admin-magazin.de<br />

www.iptam.com<br />

Ausgabe 01-2013<br />

57


Know-how<br />

Windows Server 2012<br />

einzelne Adapter aktivieren oder deaktivieren.<br />

Alle Commandlets für die Verwaltung von<br />

NIC-Teams lassen Sie sich mit »Get‐Command<br />

‐Module NetLbfo« anzeigen. Um<br />

ein neues Team zu erstellen, verwenden<br />

Sie das Commandlet »New‐NetLbfoTeam<br />

Teamname Netzwerkkarten«. Die Netzwerkkarten<br />

werden hierbei durch Kommas<br />

getrennt aufgeführt. Windows Server<br />

2012 entfernt die IP-Bindung von den<br />

physischen Netzwerkkarten und verbindet<br />

sie mit dem neuen virtuellen Adapter,<br />

den der Assistent für das Team erstellt.<br />

Sie sehen den Status des Teams, wenn<br />

Sie im Server-Manager in der Kategorie<br />

»Lokaler Server« bei »NIC‐Teamvorgang«<br />

auf den Link »Aktiviert« klicken (Abbildung<br />

2).<br />

Werden das Team und die verbundenen<br />

Karten als »Aktiv« gekennzeichnet, passen<br />

Sie die Netzwerkeinstellungen des<br />

Teams an. Dazu rufen Sie die Adaptereinstellungen<br />

auf, indem Sie »ncpa.cpl«<br />

auf der Startseite eingeben. Hier sehen<br />

Sie das neue Team. Sie können auf Hyper-V-Hosts<br />

mehrere virtuelle Switches<br />

auf Basis der verschiedenen physischen<br />

Netzwerkkarten erstellen und innerhalb<br />

von virtuellen Servern dann NIC-Teams<br />

erstellen. Diese verwenden die einzelnen<br />

virtuellen Switches des Hyper-V-Hosts als<br />

Grundlage.<br />

E VDC – Klonen und<br />

Snapshots<br />

Mit Windows Server 2012 hat Microsoft<br />

den Betrieb von virtuellen Domänencontrollern<br />

optimiert. Im Gegensatz zu<br />

Vorgängerversionen stellen Snapshots<br />

und geklonte Domänencontroller keine<br />

Gefahr mehr für das komplette Active Directory<br />

dar. Damit Sie Domänencontroller<br />

optimal virtualisieren und auch klonen<br />

können, müssen mindestens folgende<br />

Bedingungen eingehalten werden.<br />

Der PDC-Emulator muss sich auf einem<br />

Domänencontroller mit Windows Server<br />

2012 befinden. Den PDC-Emulator<br />

können Sie nicht klonen, er muss während<br />

des Klonvorgangs immer<br />

verfügbar sein. Die Domäne<br />

muss bereits über mindestens<br />

zwei Domänencontroller mit<br />

Windows Server 2012 verfügen,<br />

da Sie nur den zweiten<br />

klonen können. Der erste stellt den PDC-<br />

Emulator zur Verfügung. Die Virtualisierungslösung<br />

muss diese neue Technik<br />

unterstützen (VM-Generation ID). Aktuell<br />

ist das nur Hyper-V in Windows<br />

Server 2012.<br />

Ob die von Ihnen eingesetzte Virtualisierungslösung<br />

die neue VM-Generation<br />

ID unterstützt, erkennen Sie im Geräte-<br />

Manager eines virtualisierten Servers<br />

mit Windows Server 2012. Bei den Systemgeräten<br />

muss der Treiber »Microsoft<br />

Hyper‐V‐Generierungszähler (Microsoft<br />

Hyper‐V Generation Counter)« mit der<br />

Treiberdatei »vmgencounter.sys« existieren.<br />

Bevor Sie einen virtuellen Domänencontroller<br />

klonen, müssen Sie auf dem Server<br />

das Cmdlet »Get‐ADDCCloningExcludedApplicationList«<br />

ausführen. Das Cmdlet<br />

überprüft, ob es auf dem virtuellen Server<br />

Anwendungen gibt, die das Klonen<br />

nicht unterstützen. Entdeckt das Cmdlet<br />

nicht-kompatible Dienste, zum Beispiel<br />

den DHCP-Dienst oder einen installierten<br />

Virenscanner, erhalten Sie entsprechende<br />

Informationen. Die Konfiguration für das<br />

Klonen nehmen Sie in der Datei »DC-<br />

CloneConfig.xml« vor. Die Beispieldatei<br />

»SampleDCCloneConfig.xml« finden Sie<br />

im Ordner »C:\Windows\System32«.<br />

Nachdem Sie die Datei »DCCloneConfig.<br />

xml« erstellt haben, kopieren Sie diese<br />

in den Ordner mit der Active Directory-<br />

Datenbank, also normalerweise in den<br />

Ordner »C:\Windows\NTDS«.<br />

Nicht für alle<br />

Abbildung 3: Windows Server 2012 klont Active Directory auf dem neuen<br />

virtuellen Domänencontroller.<br />

Sie können nur Quelldomänencontroller<br />

klonen, die Mitglied der Gruppe »Klonbare<br />

Domänencontroller« in Active Directory<br />

sind. Sie können außerdem nur<br />

Domänencontroller klonen, die nicht eingeschaltet<br />

sind. Das heißt, Sie müssen<br />

den entsprechenden Domänencontroller<br />

herunterfahren, bevor Sie ihn klonen<br />

können. Bevor Sie den neuen Domänencontroller<br />

in Active Directory aufnehmen<br />

können, müssen Sie die durch den Klonvorgang<br />

angepasste Datei »DCCloneConfig.xml«<br />

vom Quellcomputer in den Ordner<br />

mit der Active Directory-Datenbank,<br />

also normalerweise in den Ordner »C:\<br />

Windows\NTDS« vom Quell- auf den<br />

Zielcomputer kopieren. Windows hat den<br />

Namen der Datei angepasst, um zu zeigen,<br />

dass ein Klonvorgang stattgefunden<br />

hat. Ändern Sie den Namen wieder um<br />

zu »DCCloneConfig.xml«.<br />

Anschließend erstellen Sie entweder einen<br />

neuen virtuellen Computer und verwenden<br />

die kopierte Festplatte, oder Sie<br />

importieren den exportierten Server mit<br />

dem Hyper-V-Manager oder der Power-<br />

Shell. Beim Importieren wählen Sie die<br />

Option »Virtuellen Computer kopieren«<br />

aus. Starten Sie den Domänencontroller,<br />

liest er die Datei »DCCloneConfig.xml«<br />

ein und bereitet sich selbst für das Klonen<br />

vor. Während des Windows-Starts<br />

erhalten Sie auch eine entsprechende<br />

Meldung (Abbildung 3).<br />

E Namen, Ansicht und<br />

IE anpassen<br />

Viele Aufgaben, die zur Grundkonfiguration<br />

des Servers gehören, nehmen Sie<br />

direkt im Server-Manager vor. Dazu klicken<br />

Sie auf »Lokaler Server«. Im mittleren<br />

Bereich sehen Sie die verschiedenen<br />

Aufgaben, deren Assistenten Sie über<br />

einen Klick auf den entsprechenden Link<br />

erreichen.<br />

Über das Menü Ansicht deaktivieren Sie<br />

die »Kachel für Willkommen«, und über<br />

»Verwalten/Server‐Manager‐Eigenschaften«<br />

aktivieren Sie die Option »Server‐Manager<br />

beim Anmelden nicht automatisch<br />

starten«. Für die Installation von Treibern<br />

benötigen Sie normalerweise den Internet<br />

Explorer. Bei Windows Server 2012<br />

ist automatisch die verstärkte Sicherheit<br />

des Internet Explorers aktiv, was beim<br />

Herunterladen von Treibern durchaus<br />

stören kann.<br />

Sie können die erweiterte Sicherheit des<br />

Internet Explorers im Server-Manager deaktivieren:<br />

Öffnen Sie den Server-Manager.<br />

Klicken Sie auf der linken Seite auf<br />

»Lokaler Server«. Klicken Sie im rechten<br />

Bereich im Abschnitt Eigenschaften<br />

neben »Verstärkte<br />

Sicherheitskonfiguration für<br />

IE« auf den Link »Ein«. Deaktivieren<br />

Sie im daraufhin<br />

geöffneten Dialogfeld die Op-<br />

58 Ausgabe 01-2013 Admin www.admin-magazin.de


Windows Server 2012<br />

Know-how<br />

tion für alle Benutzer oder nur für Administratoren.<br />

E Windows Server 2012<br />

mit Win 8 verwalten<br />

Um Windows Server 2012 mit Windows<br />

8 zu verwalten, bietet Microsoft die Remoteserver-Verwaltungstools<br />

(Remote<br />

Server Administration Tools, RSAT) zum<br />

Download an. Mit den Tools installieren<br />

Sie auf einer Arbeitsstation mit Windows<br />

8 alle Verwaltungsprogramme die zur<br />

Verwaltung von Windows Server 2012<br />

notwendig sind.<br />

Neben den verschiedenen Verwaltungstools<br />

der Serverrollen integriert der Installations-Assistent<br />

von RSAT auch den<br />

neuen Server-Manager von Windows<br />

Server 2012 in Windows 8. Über den<br />

Server-Manager binden Sie die verschiedenen<br />

Server im Netzwerk an, auf denen<br />

Windows Server 2012 installiert ist. Sie<br />

können mit dem Server-Manager auf diesem<br />

Weg auch über Windows 8-Arbeitsstationen<br />

aus Serverrollen auf Servern<br />

installieren.<br />

Die Remoteserver-Verwaltungstools für<br />

Windows 8 umfassen Server-Manager,<br />

Verwaltungstools der Serverrollen und<br />

Features von Windows Server 2012, PowerShell<br />

XE „PowerShell“ ‐Cmdlets und<br />

Befehlszeilentools für die Verwaltung von<br />

Rollen und Features. Die Remoteserver-<br />

Verwaltungstools laden Sie als .msu-Datei<br />

direkt im Downloadcenter [1] herunter.<br />

Um im Server-Manager in Windows Server<br />

2012 und Windows 8 weitere Server<br />

anzubinden, klicken Sie auf »Verwalten«<br />

und dann auf »Server hinzufügen«. Im<br />

Fenster können Sie anschließend nach<br />

Servern suchen, um sie im lokalen Server-Manager<br />

zu verwalten.<br />

E Core-Server, Minimal<br />

Server Interface, GUI<br />

stallation des Core-Server-Modus auswählen.<br />

Nach der Installation lassen sich<br />

in Windows Server 2012 aber problemlos<br />

die Verwaltungstools und die grafische<br />

Oberfläche installieren.<br />

Neu in Windows Server 2012, neben der<br />

Möglichkeit, die grafischen Verwaltungstools<br />

auf Core-Servern zu installieren,<br />

ist das »Server Minimal Interface«, auf<br />

deutschen Servern als »minimale Serverschnittstelle«<br />

bezeichnet. Dabei handelt<br />

es sich um eine Installation der wichtigsten<br />

Verwaltungsprogramme für die<br />

grafische Oberfläche, aber keine Zusatzanwendungen<br />

wie Media Player, Explorer<br />

und Internet Explorer. Auch der Desktop<br />

fehlt bei dieser Option.<br />

Viele Programme aus der Systemsteuerung<br />

und die meisten Verwaltungsprogramme<br />

für Serverrollen und Features<br />

funktionieren. Bei der minimalen Serverschnittstelle<br />

(Minimal Server Interface)<br />

handelt es sich um eine Zwischenstufe<br />

zwischen Core-Server und Server mit<br />

grafischer Oberfläche, nur ohne Explorer<br />

und Internet Explorer 10.<br />

Die grafische Oberfläche deinstallieren<br />

Sie entweder im Server-Manager oder der<br />

PowerShell. Im Server-Manager verwenden<br />

Sie »Verwalten/Rollen und Features<br />

entfernen«. Auf der Seite »Features entfernen«<br />

stehen im Bereich »Benutzeroberflächen<br />

und Infrastruktur« drei Optionen<br />

zur Verfügung: »Tools und Infrastruktur<br />

für die grafische Verwaltung« – hierbei<br />

handelt es sich um die Verwaltungskonsolen<br />

der wichtigsten grafischen Werkzeuge<br />

auf dem Server. Ist nur dieses Feature<br />

installiert und nicht die Features »Grafische<br />

Shell für Server und Desktopdarstellung«,<br />

handelt es sich um einen Server<br />

mit dem Minimal Server Interface. »Desktopdarstellung«<br />

– dieses Feature ist vor<br />

allem für Remotedesktop-Server gedacht.<br />

Es wandelt die Oberfläche des Servers<br />

in eine Windows-8-Oberfläche um und<br />

bietet Tools wie Media Player, Fotoverwaltung,<br />

Themes und mehr. »Grafische<br />

Shell für Server« – dieses Feature deinstallieren<br />

Sie zusammen mit der Desktopdarstellung,<br />

um das Server Minimal<br />

Interface zu erhalten. Sie entfernen dabei<br />

auch den Explorer (ehemals Windows<br />

Explorer) und den Internet Explorer vom<br />

Server. Sie können dieses Feature auch<br />

in der Powershell mit dem Befehl »Uninstall‐WindowsFeature<br />

Server‐Gui‐Shell«<br />

entfernen.<br />

Installieren Sie einen Core-Server, fehlen<br />

auf dem Server auch die Binärdateien,<br />

um die grafische Oberfläche zu installieren.<br />

Sie müssen zur Installation entweder<br />

eine Internetverbindung für den<br />

Server konfigurieren, damit dieser die<br />

benötigten Daten von Windows-Update<br />

herunterladen kann, oder Sie müssen den<br />

Ordner mit den Windows Server 2012-Installationsdateien<br />

angeben.<br />

Die Installation können Sie auf Core-<br />

Servern mit der PowerShell und dem<br />

Befehl »Install‐WindowsFeature Server‐Gui‐Mgmt‐Infra«<br />

durchführen, oder<br />

Sie verbinden sich mit dem Server über<br />

den Server-Manager von einem Server im<br />

Netzwerk aus. Alternativ verwenden Sie<br />

die folgenden Befehle in der Powershell:<br />

Jede Installation von Windows Server<br />

2012 besteht als Grundlage aus einem<br />

Core-Server. Dieser bietet alle wesentlichen<br />

Verwaltungsprogramme der Eingabeaufforderung<br />

und der. Es fehlen alle<br />

grafischen Verwaltungstools, Sie müssen<br />

den Server über andere Server oder mit<br />

den Remoteserver-Verwaltungstools von<br />

Windows 8 aus verwalten. Während der<br />

Installation können Sie auch nur die In-<br />

Abbildung 4: Virtuelle Server können Sie kostenlos sichern.<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

59


Know-how<br />

Windows Server 2012<br />

Import‐Module Dism<br />

Enable‐WindowsOptionalFeature ‐online U<br />

‐Featurename ServerCore‐FullServer,Server‐U<br />

Gui‐Shell,Server‐Gui‐Mgmt<br />

Alternativ kann der Administrator mit<br />

dem folgenden Befehl die grafische Oberfläche<br />

installieren:<br />

Dism /online /enable‐feature /featurename:U<br />

ServerCore‐FullServer /featurename:Server‐U<br />

Gui‐Shell /featurename:Server‐Gui‐Mgmt<br />

E Virtuelle Server<br />

kostenlos sichern<br />

Der bekannte Hersteller für die Sicherung<br />

von virtuellen Servern, Veeam, bietet<br />

ein kostenloses Tool, mit dem sich<br />

die Datensicherung virtueller Exchange-<br />

Server vollkommen kostenlos auslesen<br />

und einzelne Objekte wiederherstellen<br />

lassen (Single-Item-Recovery). Auch herkömmliche<br />

Server können Sie auf diesem<br />

Weg sichern und wiederherstellen. Basis<br />

des Tools ist das Produkt Veeam Backup<br />

Free Edition [2]. Mit der kostenlosen<br />

Sicherungssoftware lassen sich virtuelle<br />

Server ohne Downtime sichern, nicht nur<br />

virtuelle Exchange-Server.<br />

Die Software unterstützt VMware und Microsoft<br />

Hyper-V. Mit Veeam Backup Free<br />

Edition können Sie sogar System Center<br />

Virtual Machine Manager 2008 R2/​2012<br />

anbinden und auch Hyper-V-Cluster integrieren.<br />

Binden Sie einen SCVMM-Server<br />

an Veeam Backup an, kann die Software<br />

alle angebundenen Server automatisch<br />

einlesen und die darauf gespeicherten<br />

virtuellen Server sichern (Abbildung 4).<br />

Die Software sichert nicht die einzelnen<br />

Virtualisierungshosts, sondern ist auf die<br />

Sicherung der virtuellen Server spezialisiert.<br />

E Replikation in der<br />

Powershell testen<br />

Den Status der Active-Directory-Replikation<br />

erfahren Sie auch in der Powershell.<br />

Dazu verwenden Sie das Commandlet<br />

»Get‐ADReplicationUpToDatenessVector-<br />

Table Servername«. Eine Liste aller Server<br />

liefert:<br />

Um sich die einzelnen Standorte und die<br />

Domänencontroller der Standorte anzuzeigen,<br />

verwenden Sie die beiden Commandlets:<br />

Get‐ADReplicationSite XE "Get‐U<br />

ADReplicationSite" ‐Filter * | ft NameU<br />

Get‐ADDomainController ‐Filter * | ft U<br />

Hostname,Site.<br />

Sie können die Replikationsverbindungen<br />

auch in der Powershell anzeigen. Dazu<br />

verwenden Sie den Befehl »get‐adreplicationconnection«.<br />

Sie können sich in<br />

der PowerShell auch ausführliche Informationen<br />

zu den einzelnen Standorten<br />

anzeigen lassen. Dazu verwenden Sie<br />

den Befehl »Get‐ADReplicationSite ‐Filter<br />

*«. Weitere interessante Commandlets in<br />

diesem Bereich sind:<br />

Get‐ADReplicationPartnerMetadata XE U<br />

"Get‐ADReplicationPartnerMetadata"<br />

Get‐ADReplicationFailure XE U<br />

"Get‐ADReplicationFailure"<br />

Get‐ADReplicationQueueOperation<br />

E Hyper-V-Replikation<br />

nutzen<br />

Mit Hyper-V-Replica lassen sich in Windows<br />

Server 2012 und Hyper-V Server<br />

2012 virtuelle Festplatten und komplette<br />

virtuelle Server asynchron zwischen verschiedenen<br />

Hyper-V-Hosts im Netzwerk<br />

replizieren und synchronisieren. Ein Cluster<br />

ist nicht notwendig. Die Replikationen<br />

lassen sich manuell, automatisiert oder<br />

nach einem Zeitplan ausführen. Fällt ein<br />

Hyper-V-Host aus, lassen sich die replizierten<br />

Server online schalten.<br />

Damit ein Hyper-V-Host für Replikate<br />

zur Verfügung steht, müssen Sie auf<br />

dem entsprechenden Server in den »Hyper‐V‐Einstellungen«<br />

im Bereich »Replikationskonfiguration«<br />

diese Funktion<br />

zunächst aktivieren und konfigurieren.<br />

Sie legen hier den Datenverkehr und die<br />

Server fest, von denen der aktuelle Server<br />

Replikate entgegennimmt. Daher müssen<br />

Sie diese Funktion zunächst auf allen<br />

Hyper-V-Hosts aktivieren. Setzen Sie Hyper-V<br />

Server 2012 ein, können Sie diesen<br />

Server auch über den Hyper-V-Manager<br />

von einem anderen Server aus verwalten<br />

und auf diesem Weg die gleichen Einstellungen<br />

vornehmen. Hier gibt es keinerlei<br />

Unterschiede zu den kostenpflichtigen<br />

Editionen von Windows Server 2012.<br />

Achten Sie darauf, noch die Regel in der<br />

erweiterten Konfiguration der Firewall<br />

(»wf.msc«) für »Hyper‐V‐Replica« zu aktivieren.<br />

Diese hat die Bezeichnung »Hyper‐V‐Replikat<br />

HTTP‐Listener«. Es gibt<br />

auch einen Listener für HTTPS.<br />

Um einen virtuellen Server auf einen anderen<br />

Hyper-V-Host mit Windows Server<br />

2012 oder Hyper-V Server 2012 zu replizieren,<br />

klicken Sie nach der Konfiguration<br />

der Hosts mit der rechten Maustaste<br />

auf den entsprechenden virtuellen Server<br />

und wählen Replikation aktivieren. Es<br />

Get‐ADReplicationUpToDatenessVectorTableU<br />

* | sort Partner,Server | ft<br />

Partner,Server, UsnFilter<br />

Abbildung 5: Mit Hyper-V-Replica replizieren Sie virtuelle Server zwischen Hosts.<br />

60 Ausgabe 01-2013 Admin www.admin-magazin.de


Windows Server 2012<br />

Know-how<br />

Abbildung 6: Konfigurieren der Failoverbeziehung in Windows<br />

Server 2012 stellt DHCP ausfallsicher zur Verfügung.<br />

startet ein Assistent, in dem Sie festlegen,<br />

wie Sie den ausgewählten Server vom<br />

Quellserver auf den Zielserver replizieren.<br />

Der virtuelle Server auf dem Quellserver<br />

bleibt dabei erhalten.<br />

Im Assistenten legen Sie außerdem zunächst<br />

den Zielserver und anschließend<br />

den Authentifizierungstyp fest. Welche<br />

Authentifizierung der Zielserver akzeptiert,<br />

bestimmen Sie wiederum auf dem<br />

Zielserver in den Hyper-V-Einstellungen<br />

über »Replikationskonfiguration«. Außerdem<br />

steuern Sie im Assistenten, welche<br />

virtuellen Festplatten Sie replizieren wollen.<br />

Damit die Replikation funktioniert,<br />

müssen Sie auf dem Zielserver in den<br />

erweiterten Einstellungen der Windows-<br />

Firewall (»wf.msc«) die Regeln für den<br />

HTTP-Listener oder den HTTPS-Listener<br />

aktivieren, je nachdem, welchen Datenverkehr<br />

Sie verwenden wollen. Die<br />

Regeln sind bereits angelegt, aber noch<br />

nicht aktiviert.<br />

E Failover mit Hyper-V-<br />

Replica<br />

Der Vorteil von Hyper-V-Replica ist, dass<br />

Sie bei Ausfall eines Servers ein Failover<br />

durchführen können. Dazu klicken Sie<br />

den entsprechenden virtuellen Server,<br />

den Sie repliziert haben, im Hyper-V-<br />

Manager an und wählen im Kontextmenü<br />

»Replikation | Failover« (Abbildung 5).<br />

Sie können auch ein geplantes Failover<br />

starten. In diesem Fall starten Sie das<br />

Failover vom Server aus, auf dem Sie die<br />

Quell-VM betreiben. Anschließend wählen<br />

Sie aus, zu welchem Wiederherstellungspunkt<br />

Sie den Failover durchführen<br />

wollen und können den Failover starten.<br />

Das funktioniert aber nur, wenn die<br />

Quell-VM auch ausgeschaltet ist. Während<br />

des Failovers startet der Assistent<br />

den replizierten Server, der<br />

im Netzwerk dann zur Verfügung<br />

steht, genau wie die<br />

Quell-VM.<br />

Der Vorteil bei einem geplanten<br />

Failover – vom Quell-<br />

Hyper-V-Host aus – ist, dass<br />

Hyper-V noch nicht replizierte<br />

Änderungen an den Zielserver<br />

senden kann, sodass dieser<br />

über den neuesten Stand verfügt.<br />

Haben Sie ein geplantes<br />

Failover durchgeführt, ist der<br />

alte Quell-VM später die neue Ziel-VM,<br />

und die alte Ziel-VM die neue Quell-VM<br />

für die Replikation. Das heißt, Sie können<br />

diesen Vorgang auch wieder umkehren.<br />

E DHCP für Failover<br />

konfigurieren<br />

DHCP-Failover in Windows Server 2012<br />

ermöglicht die Bereitstellung einer ausfallsicheren<br />

DHCP-Serverstruktur auch<br />

ohne Cluster. DHCP-Failover unterstützt<br />

zwei Server mit IPv4-Konfiguration. Die<br />

Server können auch Mitglied einer Arbeitsgruppe<br />

sein, eine Domänenmitgliedschaft<br />

ist nicht unbedingt erforderlich.<br />

Mit dem DHCP-Failover-Feature können<br />

zwei DHCP-Server IP-Adressen und Optionskonfiguration<br />

für dasselbe Subnetz<br />

oder denselben Bereich bereitstellen.<br />

Zwischen den zwei DHCP-Servern werden<br />

Lease-Informationen repliziert. Es<br />

ist auch möglich, das Failover in einer<br />

Lastausgleichskonfiguration zu konfigurieren,<br />

in der Clientanforderungen auf die<br />

zwei Server verteilt sind.<br />

Öffnen Sie auf dem DHCP-Server die<br />

DHCP-Konsole, klicken Sie mit der rechten<br />

Maustaste auf den DHCP-Bereich den<br />

Sie ausfallsicher betreiben wollen, und<br />

klicken Sie dann auf »Failover konfigurieren«.<br />

Geben Sie auf der zweiten Seite<br />

den Partnerserver, und klicken Sie dann<br />

auf »Weiter«. Legen Sie auch einen gemeinsamen<br />

geheimen Schlüssel für diese<br />

Failover-Beziehung fest. Sie können hier<br />

auch den Modus auswählen, mit dem<br />

Sie die Ausfallsicherheit verwenden wollen.<br />

Sie können Lastenausgleich oder Hot<br />

Standby auswählen. Standardmäßig ist<br />

»Lastenausgleich« ausgewählt. Damit teilen<br />

sich die Server die Anfragen.<br />

Nachdem Sie die Einrichtung angeschlossen<br />

haben, können Sie das Failover in<br />

den Eigenschaften des IP-Bereiches auf<br />

der Registerkarte »Failover« anzeigen<br />

(Abbildung 6).<br />

E iSCSI-Ziele über<br />

virtuelle Disks anbieten<br />

Windows Server 2012 kann nicht nur auf<br />

iSCSI-Ziele zugreifen, sondern kann auch<br />

selbst virtuelle Festplatten als iSCSI-Ziel<br />

im Netzwerk zur Verfügung stellen. Dazu<br />

müssen Sie über den Server-Manager mit<br />

»Verwalten/Rollen und Features hinzufügen«<br />

den Rollendienst »iSCSI‐Zielserver«<br />

über »Datei‐ und Speicherdienste/Dateiund<br />

iSCSI‐Dienste installieren«.<br />

Nach der Installation des Rollendienstes<br />

können Sie über den Server-Manager<br />

und der Auswahl von »Datei‐/Speicherdienste/iSCSI«<br />

virtuelle Festplatten erstellen,<br />

die als iSCSI-Ziel im Netzwerk konfiguriert<br />

werden können. Sie können über<br />

den Assistenten, wie überall im Server-<br />

Manager, auch auf anderen Servern im<br />

Netzwerk virtuelle iSCSI-Ziele erstellen.<br />

Damit das funktioniert, muss auf dem<br />

entsprechenden Server der Rollendienst<br />

iSCSI-Zielserver installiert sein.<br />

Im Rahmen der Einrichtung legen Sie die<br />

Größe und den Speicherort der VHD(X)-<br />

Datei fest. Außerdem können Sie über<br />

den Assistenten steuern, welche Server<br />

im Netzwerk auf das iSCSI-Ziel zugreifen<br />

dürfen. Mit einem iSCSI-Ziel können Sie<br />

auch mehrere virtuelle iSCSI-Festplatten<br />

zur Verfügung stellen. Nachdem Sie die<br />

virtuellen Festplatten erstellt haben, können<br />

Sie über das Kontextmenü die Einstellungen<br />

ändern. (ofr)<br />

n<br />

Infos<br />

[1] Remoteserver-Verwaltungstools für Windows<br />

8:<br />

[http:// www. microsoft. com/ de‐de/​<br />

download/ details. aspx? id=28972]<br />

[2] Veeam Backup Free Edition für VMware<br />

und Hyper-V: [http:// www. veeam. com/​<br />

free‐backup]<br />

Der Autor<br />

Thomas Joos ist freiberuflicher IT-Consultant und<br />

seit über 20 Jahren in der IT tätig. Neben seinen<br />

Projekten schreibt er praxisnahe Fachbücher<br />

und Fachartikel rund um Windows und andere<br />

Microsoft-Themen. Online trifft man ihn unter<br />

[http:// thomasjoos. spaces. live. com].<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

61


Know-how<br />

Prey<br />

© rioblanco, 123RF<br />

Prey lokalisiert gestohlene Laptops und Mobiltelefone<br />

Schwere Beute<br />

Das Programm Prey überprüft regelmäßig den Status von Mobiltelefonen<br />

und Laptops. Meldet der Benutzer das Gerät als gestohlen, versucht das<br />

Tool, seinen Aufenthaltsort zu ermitteln und Spuren zu sichern. Oliver Frommel<br />

Selbst auf den besten Open-Source-Konferenzen<br />

kommt es vor: Man lässt seine<br />

Tasche einen Moment aus den Auge, und<br />

schon ist sie weg. Und damit auch das<br />

schöne neue Macbook, auf dem in unzähligen<br />

Stunden Ubuntu installiert und<br />

so konfiguriert wurde, dass sogar die<br />

Sondertasten alle richtig funktionierten.<br />

Unschuldig sind dabei meist die anderen<br />

Konferenzteilnehmer, denn professionelle<br />

Diebe wissen um die hohe Gerätedichte<br />

auf solchen Veranstaltungen und gehen<br />

dort gezielt auf die Suche nach Opfern.<br />

Deshalb gilt es auch wachsam zu sein,<br />

selbst wenn man sich von gleichgesinnten<br />

Gutmenschen umgeben glaubt.<br />

Das alles hilft aber nichts mehr, wenn die<br />

Maschine erst einmal weg ist. Was dann<br />

allerdings noch helfen kann, ist ein kleines<br />

Programm namens Prey [1], das aber<br />

auch schon installiert sein muss, bevor<br />

der Schaden entstanden ist. Kurz gesagt<br />

läuft Prey regelmäßig auf dem Computer<br />

und tut einfach nichts, solange ein<br />

paar Bedingungen erfüllt sind, die der<br />

Anwender festlegt. Meldet er das Gerät<br />

als gestohlen, liest Prey diesen Status<br />

vom Server und handelt entsprechend:<br />

Es gibt seinen Standort durch, speichert<br />

einen Screenshot und nimmt im Optimalfall<br />

ein Foto des Diebs mit der Laptopkamera<br />

auf.<br />

Viele Plattformen<br />

Los geht es damit, die Prey-Clientsoftware<br />

auf dem eigenen Gerät zu installieren.<br />

Pakete gibt es für Windows, Mac<br />

OS X, <strong>Linux</strong> allgemein und Ubuntu sowie<br />

Mobilgeräte mit iOS und Android.<br />

Unter Ubuntu installieren Sie das Paket<br />

mit dem Paketmanager mit »sudo dpkg ‐i<br />

prey_0.5.3‐ubuntu2_all.deb«. Der Befehl<br />

»apt‐get ‐f install« löst dann die dadurch<br />

entstandenen Abhängigkeiten auf und<br />

installiert die nötigen Pakete aus dem<br />

Ubuntu-Repository nach.<br />

Prey geht davon aus, dass auf dem zu bewachenden<br />

Rechner ein grafischer Desktop<br />

installiert ist, zum Beispiel Gnome.<br />

Dann findet sich nach der Installation<br />

ein grafisches Konfigurationsprogramm,<br />

der Prey Configurator, im Menü »Applications<br />

| System Tools« (Abbildung 1). Auf<br />

der Kommandozeile lässt es sich per »/<br />

usr/share/prey/platform/linux/prey‐config.py«<br />

starten. Dummerweise funktioniert<br />

es nicht mit »sudo«, Sie müssen<br />

also wirklich das Passwort des Benutzers<br />

»root« eingeben (und dies vorher gegebenenfalls<br />

erst erstellen) oder zum Beispiel<br />

mit »sudo su« in einem Terminal in den<br />

Root-Account wechseln.<br />

Bei der Default-Konfiguration verlangt<br />

Prey Root-Rechte und die Konfigurationsdatei<br />

»config« in »/usr/share/prey«<br />

ist entsprechend geschützt. Sie lässt sich<br />

auch ohne das grafische Konfigurationstool<br />

im Editor bearbeiten, was auch<br />

nötig ist, wenn Sie das Programm überhaupt<br />

in Betrieb nehmen wollen. Woran<br />

es noch mangelt, verrät ein Aufruf von<br />

»/usr/share/prey/prey.sh ‐‐check« (Abbildung<br />

2).<br />

Um an die fehlenden Keys zu gelangen,<br />

müssen Anwender sich auf der Prey-<br />

Website registrieren. Nach dem Opt-in<br />

per E-Mail und dem Einloggen gelangen<br />

Sie in den eigenen Administrationsbereich,<br />

wo Sie in den Profilinformationen<br />

auf der linken Seite den API-Key finden.<br />

Haben Sie ihn in der Konfigurationsdatei<br />

als »api_key« eingetragen, führen SIe wieder<br />

das Prey-Skript aus. In der Ausgabe<br />

des Befehls finden sich die folgenden<br />

Zeilen:<br />

‐‐ Gathering PC info...<br />

‐‐ Sending request to Control Panel...<br />

‐‐ Device succesfully added! U<br />

Applying configuration...<br />

Im leider wenig übersichtlichen Verwaltungsbereich<br />

auf der Prey-Site ist nun<br />

das registrierte Gerät zu sehen. Den Device<br />

Key finden Sie wieder auf der linken<br />

Seite, wenn Sie auf das Gerät klicken.<br />

Tragen Sie ihn in der Konfigurationsdatei<br />

als »device_key« ein, sonst legt Prey jedes<br />

Mal ein neues Gerät an, wenn Sie das<br />

Skript starten.<br />

Unter Ubuntu hat die Installationsroutine<br />

des Pakets auch einen Cronjob für<br />

den Benutzer »root« eingerichtet, den<br />

»crontab ‐e« (als Root) anzeigt:<br />

*/25 * * * * /usr/share/prey/prey.sh > U<br />

/var/log/prey.log<br />

62 Ausgabe 01-2013 Admin www.admin-magazin.de


Prey<br />

Know-how<br />

Sie können das Skript aber auch jederzeit<br />

von Hand ausführen, wenn Sie sehen<br />

wollen, was passiert. Der springende<br />

Punkt ist, dass der Cronjob das Prey-<br />

Skript auch ausführt, wenn der Laptop<br />

in falsche Hände gerät.<br />

Online-Check<br />

Bei jedem Durchlauf verbindet sich das<br />

Skript mit der Prey-Website und prüft<br />

dort den aktuellen Status, der OK oder<br />

Missing sein kann. Ist er OK, schreibt das<br />

Skript einfach seine Logdatei und tut ansonsten<br />

nichts. Ist der Laptop gestohlen,<br />

schaltet der Anwender im Webinterface<br />

auf Missing. Nun tritt Prey in Aktion und<br />

führt eine Reihe von Aktionen aus, die<br />

sich im Webinterface einstellen lassen.<br />

So versucht es, über GPS – sofern vorhanden<br />

– oder WLAN-Lokalisierung dein<br />

eigenen Ort zu ermitteln. All dies lässt<br />

sich gefahrlos testen, indem man den<br />

Laptop im Webinterface als vermisst meldet,<br />

denn außer einem selbst bekommt<br />

niemand davon etwas mit.<br />

Prey kann auch Alarme auslösen, den<br />

Bildschirm sperren oder sensible Daten<br />

auf dem Rechner löschen. Hier hat der<br />

Anwender viele Möglichkeiten, sollte<br />

aber gut überlegen, ob es sinnvoll ist,<br />

den Dieb darauf aufmerksam zu machen,<br />

dass man ihm auf der Spur ist. Auch ist<br />

es wenig wünschenswert, wegen eines<br />

Versehens wichtige private Daten durch<br />

das Programm gelöscht zu bekommen.<br />

Auf Wunsch bekommt es noch mehr Details<br />

über die eigene Netzwerkumgebung<br />

sowie andere WLANs in der Umgebung<br />

heraus – vielleicht hilft dies ja bei der Lokalisierung<br />

des Geräts. Prey macht auch<br />

einen Screenshot des Desktops, über<br />

den sich unter Umständen der Benutzer<br />

identifizieren lässt, wenn er gerade<br />

seine Webmail auf dem gestohlenen Gerät<br />

liest. Die Spuren sichert Prey immer<br />

wieder, solange der Cronjob läuft und<br />

der Status des Geräts auf Missing steht.<br />

Alles dies setzt natürlich voraus, dass<br />

der Rechner ans Internet angeschlossen<br />

ist, was die Crux des ganzen Ansatzes<br />

ist. Man ist also darauf angewiesen, dass<br />

der Dieb selbst den Rechner mit dem Internet<br />

verbindet, was wohl nicht in jedem<br />

Fall passieren wird. Alternativ kann Prey<br />

auch offene WLANs verwenden, um sich<br />

selbst mit dem Netz zu verbinden, aber<br />

auch dafür muss man Glück haben.<br />

Mit dem kostenlosen Prey-Dienst lassen<br />

sich bis zu drei Geräte verwalten, für die<br />

es bis zu zehn Reports gibt. Wer mehr<br />

will, kann eines der kostenpflichtigen<br />

Angebote von Prey nutzen, die bei fünf<br />

US-Dollar im Monat starten und bis zu<br />

399 US-Dollar pro Monat gehen und dann<br />

500 Geräte abdecken.<br />

Alternativ lässt sich Prey, dessen Client-<br />

Quellcode unter der GPLv3 frei verfügbar<br />

ist, auch ohne den Prey-Dienst mit einem<br />

eigenen Server verwenden. Dazu aktiviert<br />

man auf dem eigenen Webserver<br />

eine URL, die Prey zur Überprüfung verwendet.<br />

Ist das Gerät gestohlen, löscht<br />

man die URL, geht Prey von einem Diebstahl<br />

aus und schickt seine Benachrichtigungen<br />

los, die der Anwender dann per<br />

E-Mail erhält. Eine<br />

funktionierende<br />

SMTP-Konfigura-<br />

tions ist dann ebenfalls obligatorisch. Als<br />

experimentelles Feature gibt es noch die<br />

Benachrichtigung per SSH beziehungsweise<br />

SFTP. Hierzu sind allerdings wieder<br />

auf dem Laptop abgelegte Public Keys nötig,<br />

die einen Zugang zum eigenen Server<br />

verschaffen, den man dem Dieb vielleicht<br />

nicht unbedingt noch als zusätzliches Geschenk<br />

machen will, wenn man ihn nicht<br />

besonders abgesichert hat.<br />

Fazit<br />

Der Einsatz von Prey ist sicher kontrovers.<br />

Im Optimalfall verhilft das Tool<br />

dazu, einen gestohlenen Laptop oder ein<br />

Mobiltelefon wieder zurückzubekommen.<br />

Entsprechende Erfolgsgeschichten<br />

sind auf der Prey-Website dokumentiert<br />

und bebildert. Andererseits setzt dies<br />

günstige Umstände voraus, etwa eine<br />

funktionierene Netzwerkverbindung<br />

nach dem Diebstahl. Demgegenüber<br />

stehen einige Bedenken, auf dem eigenen<br />

Rechner eine permanente Überwachungsmaschinerie<br />

laufen zu lassen, die<br />

unter Umständen private Daten ins Internet<br />

lädt (etwa Screenshots von eigener<br />

E-Mail). Im Prinzip ist ein Missbrauch<br />

ausgeschlossen, denn man hat im Prey-<br />

Webinterface nur selbst Zugang auf diese<br />

Daten. Wer hierbei keine Bedenken hat,<br />

verschafft sich mit Prey immerhin eine<br />

gewisse Chance, ein gestohlenes Gerät<br />

zurückzubekommen.<br />

n<br />

Infos<br />

[1] Prey: [http:// preyproject. com]<br />

[2] Sourcecode: [https:// github. com/ prey]<br />

[3] Forum: [http:// answers. preyproject. com]<br />

Abbildung 1: Im Prey Configurator lassen sich die Grundeinstellungen für das Tool<br />

vornehmen, für alles andere muss die Konfigurationsdatei herhalten.<br />

Abbildung 2: »prey.sh ‐‐check« verrät hier, dass noch der API-Key und der<br />

Device-Key fehlen, damit Prey funktioniert.<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

63


Virtualisierung<br />

Proxmox<br />

© Artem Merzlenko, 123RF<br />

Proxmox Virtual Environment 2.2 unter der Lupe<br />

Virtualisierungswarte<br />

Proxmox Virtual Environment entwickelt sich von Version zu Version vom Geheimtipp zum kostenlosen VMware<br />

ESXi/​vSPhere-Klon. Wir werfen einen Blick auf die Neuerungen der Version 2.2. Thomas Drilling<br />

Proxmox Virtual Environment (PVE) [1]<br />

ist eine Open-Source-Virtualisierungslösung,<br />

die seit 2004 von der Wiener Proxmox<br />

Server Solutions GmbH entwickelt<br />

wird. Da Proxmox VE vollständig unter<br />

der GPLv2 lizensiert ist, bestehen auch<br />

hinsichtlich einer geschäftlichen Nutzung<br />

keine Einschränkungen – im Unterschied<br />

zu manchen Free- oder Personal-Lizenzen<br />

vergleichbarer Konkurrenzprodukte.<br />

Die Proxmox Server Solutions GmbH bietet<br />

allerdings für Unternehmenskunden<br />

auch ein Subskriptions-Modell [2] mit<br />

verschiedenen Support-Leveln zwischen<br />

120 Euro und 800 Euro pro Jahr an.<br />

Die Lösung war von Anfang an als einfach<br />

installierbare Appliance mit Bare-<br />

Metal-Installer konzipiert, die sich über<br />

eine Weboberfläche konfigurieren lässt<br />

und wahlweise KVM-basierte Gäste oder<br />

OpenVZ-Container bereitstellen kann.<br />

Diese relativ ungewöhnliche Kombination<br />

macht deutlich, dass PVE auf den<br />

Unternehmenseinsatz abzielt, wenngleich<br />

die frühen Versionen dafür noch<br />

die eine oder andere Funktion vermissen<br />

ließen.<br />

Auch eine Cluster-Funktion war schon<br />

von Anfang an enthalten, mit deren Hilfe<br />

der Admin aus zwei oder mehr PVE-<br />

Rechnerknoten auch ohne SAN eine redundante<br />

Virtualisierungsumgebung<br />

erstellen konnte. Der Leistungsumgang<br />

steigerte sich von Version zu Version.<br />

Wenn es an früheren Versionen etwas<br />

auszusetzen gab, dann dass die Web-GUI<br />

Funktionen vorspiegelte, die sie allein<br />

nicht hatte. Stattdessen war oft eine vorherige<br />

manuelle Konfiguration auf der<br />

Kommandozeile nötig, etwa im Bereich<br />

der Cluster-Funktionen oder beim Befüllen<br />

eines Storages, sei das ein lokales Verzeichnis<br />

auf dem jeweiligen PVE-Node<br />

oder ein Netzwerkverzeichnis (NFS,<br />

CIFS) oder ein SAN (iSCSI, FC).<br />

Funktionsumfang<br />

Proxmox bezeichnet sich selbst als „Open<br />

Source-Virtualisierungsplattform mit<br />

Web-Oberfläche zum Betrieb und Management<br />

von Virtual Appliances mit integrierter<br />

VNC-Konsole“. Proxmox spielte<br />

schon 2012 vor der Veröffentlichung der<br />

Version 2.0 in einer Liga mit dem (heute<br />

nicht mehr erhältlichen) VMware-Server<br />

und positioniert sich in der aktuellen<br />

Version 2.2 als direkter Konkurrent zu<br />

VMware ESXi und Citrix Xen Server. Laut<br />

einer Vergleichstabelle [5] der Proxmox-<br />

Entwickler kann PVE 2.2 sogar mehr als<br />

vSPhere, XenServer und MS Hyper V.<br />

In der Tat kam die Veröffentlichung der<br />

Version 2.0 im Frühjahr letzten Jahres<br />

mit komplett neuer JavaScript-Weboberfläche,<br />

auf dem Corosync-Cluster-Communication-Stack<br />

basierender HA-Unterstützung,<br />

Backup/​Restore-Funktion via<br />

GUI und seinem RESTful Web API (Proxmox_VE_API)<br />

[6] einem Quantensprung<br />

in der Entwicklung gleich.<br />

Dieser Beitrag soll neben den Neuerungen<br />

der Version 2.2 vorrangig zwei für<br />

Admins interessante Funktionen im Detail<br />

beschreiben, nämlich das Erstellen<br />

eines HA-Clusters und das individuelle<br />

Aufsetzen von Proxmox VE auf einem<br />

Debian-System.<br />

Eine Besonderheit von Proxmox-VE besteht<br />

darin, dass das System im Kern<br />

auf Debian-GNU-<strong>Linux</strong> (aktuell Version<br />

6.0.6) basiert. Das ist – gerade für Windows-Admins<br />

– nicht unbedingt ersichtlich,<br />

weil sich die Software mit ihrem<br />

Bare-Metal-Installer (ohne große Möglichkeiten<br />

der Einflussnahme) in knapp 5<br />

Minuten installieren lässt und die weitere<br />

66 Ausgabe 01-2013 Admin www.admin-magazin.de


Proxmox<br />

Virtualisierung<br />

Konfiguration über das Webinterface erfolgt.<br />

Dank Debian-Fundament kann der<br />

Admin aber beliebige Komponenten aus<br />

dem Debian-Projekt nachinstallieren und<br />

seinen Proxmox-Node so nach Belieben<br />

zu einer kompletten Workstation oder zu<br />

einem Server ausbauen, der neben der<br />

Virtualisierung auch andere Aufgaben<br />

übernimmt. Das Installieren, sowie erste<br />

Konfigurationsschritte im neuen Web-<br />

GUI erläutert der Kasten „Installation<br />

und erste Schritte“.<br />

Clustern mit Proxmox<br />

Wer einen Cluster-Verbund mit PVE aufbauen<br />

will, tut sich leichter, wenn ein<br />

externer Shared-Storage, etwa in Form<br />

eines SAN oder NFS-Servers zur Verfügung<br />

steht. PVE kennt die Storage-Technologien<br />

iSCSI, Fibre Channel, CIFS, NFS,<br />

DRBD und ATA over Ethernet (AoE).<br />

PVE unterstützt schon von je Cluster. Dabei<br />

unterscheidet es zwischen gewöhnlichen<br />

Clustern und Hochverfügbarkeits-<br />

Clustern. Erstere sind ein Verbund von<br />

Rechnern einer PVE-Installation (Virtualisierungsknoten).<br />

Ein solcher Proxmox-<br />

VE-Cluster besteht stets aus einem Master<br />

und mindestens einem Node. Wie<br />

man ein solches Setup aufsetzt, ist im<br />

Proxmox-Wiki [7] beschrieben. Die dortigen<br />

Erläuterungen und Abbildungen<br />

zum Verwenden des Cluster-Setups beziehen<br />

sich jedoch auf die Version 1.9 mit<br />

alter GUI. Nach abgeschlossener Konfiguration<br />

über das GUI lassen sich virtuelle<br />

Maschinen zum Beispiel auf einen<br />

anderen Proxmox-Knoten migrieren. Seit<br />

der Version 2.0 ist das Produkt auch hoch<br />

verfügbar, was in Konkurrenz zu kommerziellen<br />

Lösungen wie VMware ESX<br />

essenziell ist. Zum Realisieren eines HA-<br />

Clusters mit PVE gibt es seit der Version<br />

2.0 zwei Möglichkeiten. Die erste funktioniert<br />

auch mit älteren Versionen. Hat der<br />

Admin einen gewöhnlichen PVE-Cluster<br />

konfiguriert, kann er mithilfe von DRDB<br />

einen sogenannten Two-Node-HA-Cluster<br />

aufsetzen, was ebenfalls im Wiki [8] beschrieben<br />

ist. Das funktioniert, weil PVE<br />

wie erläutert (auch) ein ganz gewöhnliches<br />

Debian-System ist. Eine DRDB-<br />

Konfiguration beschränkt sich stets auf<br />

zwei Knoten und ist im Proxmox-Wiki<br />

ausführlich erläutert [9]. Da DRDB zwei<br />

PVE-Hosts synchronisieren hilft, die so<br />

als Basis für den HA-Cluster dienen, reduziert<br />

sich der Aufwand an benötigten<br />

Komponenten auf zwei PVE-Hosts.<br />

Clustern mit Corosync<br />

Die HA-Fähigkeit eines Proxmox-VE-2-<br />

Clusters beruht dagegen auf dem Corosync-Kommunikations-Stack<br />

[10] sowie<br />

der Red Hat Cluster-Suite [11]. Das<br />

dazu eigens entwickelte Datenbank- und<br />

FUSE-basierte Proxmox Cluster Filesystem<br />

(»pmxcfs«) [12] ermöglicht es, die<br />

Konfiguration der einzelnen Cluster-<br />

Knoten über den Corosync-Kommunikations-Stack<br />

zu nutzen und auf DRBB zu<br />

verzichten.<br />

Da Proxmox auf diese Weise sämtliche<br />

Konfigurationsdateien, die clusterweit<br />

identisch sein müssen, im Pmxcfs vorhält,<br />

können auch alle PVE-Nodes darauf<br />

zugreifen. Ferner unterstützt ein Proxmox-VE-2-Cluster<br />

verschiedene Authen-<br />

tifizierungsverfahren, neben der lokalen<br />

Authentifizierung auch Active Directory<br />

und LDAP. Darüber hinaus beherrscht<br />

er die Rollen-basierte Verwaltung sämtlicher<br />

Cluster-Objekte (Nodes, Storages,<br />

virtuelle Maschinen) und ist außerdem<br />

in der Lage, Multi-Master-Cluster zu erstellen<br />

(wie beschrieben unterstützten<br />

gewöhnliche Proxmox-VE-Cluster nur<br />

Single-Master-Setups).<br />

Cluster Manager Toolkit<br />

Die erforderliche Corosync-Konfiguration<br />

wird mithilfe der Befehle des Proxmox VE<br />

Cluster Manager Toolkit [13] automatisch<br />

auf jedem Knoten erzeugt und ist unter<br />

anderem dafür verantwortlich, dass<br />

die Nodes im Cluster miteinander kommunizieren,<br />

was wiederum voraussetzt,<br />

dass sich sämtliche Nodes im gleichen<br />

Subnetz befinden. Das automatische Abstimmen<br />

der Nodes erfolgt dann via IP<br />

Multicasts, was allerdings bei manchen<br />

Switches eine manuelle Aktivierung erfordert.<br />

Ferner müssen Datum und Zeit<br />

zwischen den Notes synchronisiert sein.<br />

Außerdem nutzt die Konfiguration einen<br />

SSH-Tunnel auf Port 22. Der Datenverkehr<br />

der VNC-Konsole ist dagegen seit<br />

PVE 2.0 über SSL gesichert und nutzt die<br />

Ports 5900 und 5999.<br />

Für das weitere Vorgehen muss der Admin<br />

zunächst auf jedem für den PVE-2-<br />

HA-Cluster vorgesehenen Node PVE über<br />

den Bare-Metal-Intaller installieren.<br />

Dabei muss er darauf achten, gleich zu<br />

Angfang den finalen Hostnamen und eine<br />

statische IP-Konfiguration festzulegen,<br />

weil das Ändern der IP-Adresse oder des<br />

Abbildung 1: Das PVE-Cluster-Manager-Toolkit bietet eine<br />

eigene Kommandoschnittstelle.<br />

Abbildung 2: Zum Hinzufügen eines Nodes zum bestehenden Cluster loggt sich der Admin via SSH auf<br />

einem anderen PVE-Node ein und fügt dort diesen Node zum angegebenen Cluster hinzu.<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

67


Virtualisierung<br />

Proxmox<br />

Abbildung 3: Ist der HA-Cluster grundlegend konfiguriert, erfolgt das Verwalten über das Web-GUI.<br />

Hostnamens nach der Cluster-Erzeugung<br />

nicht mehr möglich ist. Auch wenn der<br />

fertige Cluster inzwischen über das Webinterface<br />

verwaltet und genutzt werden<br />

kann, muss der Admin zum Aufsetzen<br />

des PVE-HA-Clusters auf das Proxmox<br />

VE Cluster Manager Toolkit zurückgreifen,<br />

das auf jedem Node die Corosync-<br />

Konfiguration erzeugt. Seine vollständige<br />

Syntax findet sich hier [15].<br />

Um einen Cluster anzulegen, meldet sich<br />

der Admin zunächst via SSH auf dem<br />

ersten VE-Node an und erzeugt mit<br />

»pvecm create Cluster‐Name« einen ersten<br />

Cluster, dessen Status er anschließend<br />

mit »pvecm status« prüfen (Abbildung<br />

1) kann.<br />

Zum Hinzufügen eines Nodes zu einem<br />

bereits existierenden Cluster loggt sich<br />

der Admin via SSH auf einem anderen<br />

PVE-Node ein und fügt dort diesen Node<br />

mit dem Befehl »pvecm add IP‐Cluster«<br />

zum angegebenen Cluster hinzu (Abbildung<br />

2).<br />

Ist das geschehen, lässt sich auch hier<br />

mit »pvecm status« der neue Status des<br />

Clusters verifizieren. Mit »pvecm nodes«<br />

dagegen kann der Admin sämtliche im<br />

Cluster enthaltenen Nodes anzeigen.<br />

Zum Entfernen eines Cluster-Nodes muss<br />

der Admin ebenfalls die Kommandozeile<br />

bemühen. Lediglich das Löschen oder<br />

Migrieren von virtuellen Maschinen kann<br />

und muss über das Webinterface erfolgen.<br />

Soll ein Cluster-Node entfernt werden,<br />

muss der Admin etwaige existente<br />

und noch benötigte VMs vorher durch<br />

Migrieren oder Sichern (Snapshot) erhalten.<br />

Das Löschen des Nodes funktioniert<br />

dann mit »pvecm delnode «.<br />

Wurde die Corosync-Konfiguration auf<br />

diese Weise erstellt, lässt sich im Web-<br />

GUI im Reiter „HA“ (Abbildung 3) wahlweise<br />

eine Failover-Domain hinzufügen<br />

oder eine HA-managed-VM beziehungsweise<br />

ein HA-managed-CT (Ressource-<br />

Container) hinzufügen.<br />

Das GUI zeigt die dazu notwendigen Änderungen<br />

im Bereich „Ausstehende Änderungen“<br />

an.<br />

Mit einen Klick auf „Aktivieren“ lässt sich<br />

die Konfiguration abschließen. Dank Corosync<br />

wird der Zustand jedes Nodes zwischen<br />

allen Knoten repliziert, die in die<br />

Corosync/​HA-Konfiguration eingebunden<br />

sind. Außerdem lassen sich problemlos<br />

VMs oder CTs zwischen den beteiligten<br />

physischen Nodes migrieren (Abbildung<br />

4). Die Konfiguration sorgt außerdem für<br />

ein Cluster-weites Logging.<br />

Proxmox auf Debian<br />

Abbildung 4: Ein Cluster-Setup erlaubt auch das Migrieren einer VM von einem Knoten zum nächsten.<br />

Der Bare-Metal-Installer macht das Aufsetzen<br />

eines PVE-Servers nebst Webinterface<br />

und allem drum und dran zum<br />

Kinderspiel, lässt dem Admin jedoch<br />

wenig Entscheidungsfreiheit und erlaubt<br />

auch kein Partitionieren. Zwar ist es über<br />

Kernel-Parameter in gewissen Umfang<br />

möglich, die Größen für die Root- und<br />

Swap-Partition vorzugeben, ein eigenes<br />

Partitionslayout, das beispielsweise auch<br />

existente Systeme berücksichtigt, ist<br />

mit dem Bare-Metal-Installer allerdings<br />

nicht möglich. Bestehende Partitionen zu<br />

berücksichtigen, entspricht auch nicht<br />

dem Sinn einer Appliance-Lösung, es<br />

mag aber doch den einen oder anderen<br />

Admin geben, der PVE nur ausprobieren<br />

oder aus anderen Gründen auf ei-<br />

68 Ausgabe 01-2013 Admin www.admin-magazin.de


Proxmox<br />

Virtualisierung<br />

nem existenten Debian-Server aufsetzen<br />

möchte. Zudem liegt die Idee nahe, ein<br />

Debian-System nicht nur als Proxmox-<br />

Fundament, sondern auch für andere<br />

Services zu nutzen.<br />

Die Proxmox Server Solutions GmbH<br />

bietet zu diesem Zweck ein eigenes Apt-<br />

Repositoy für Debian-Systeme an, mit<br />

dessen Hilfe es möglich ist, den Proxmox-<br />

Kernel (aktuell ein von den Proxmox-<br />

Entwicklern modifizierter RHEL-Kernel<br />

2.6.32-042) und das eigentliche Proxmox<br />

Virtual Environment (proxmox-ve-2.6.32)<br />

als Deb-Pakete zu installieren. Hat der<br />

Admin ein Debian-System mit individuellem<br />

Partitions-Layout erstellt (die Proxmox-Entwickler<br />

bevorzugen übrigens ein<br />

LVM-basiertes Partitionsschema, was das<br />

spätere Erweitern flexibler macht) oder<br />

ist ein laufendes Debian-System vorhanden,<br />

muss er lediglich das Repository<br />

»http://download.proxmox.com/debian<br />

squeeze pve« in seine »/etc/apt/sources.<br />

list« einfügen:<br />

Ist das erledigt muss der Admin lediglich<br />

noch die Pakete »postfix«, »lvm2«,<br />

»ntp«, »ssh«, »ksm‐control‐daemon« und<br />

»vzprocps« installieren. Ist auch das gedeb<br />

http://ftp.at.debian.org/debian U<br />

squeeze main contrib<br />

deb http://security.debian.org/ U<br />

squeeze/updates main contrib<br />

# PVE‐Pakete<br />

deb http://download.proxmox.com/debian U<br />

squeeze pve<br />

Das Importieren des nötigen Schlüssels<br />

klappt am einfachsten mit<br />

wget http://download.proxmox.comU<br />

/debian/key.asc<br />

apt‐key add key.asc<br />

Anschließend müssen zunächst die Repoliste<br />

und dann das komplette System<br />

aktualisiert werden<br />

aptitude update<br />

aptitude full‐upgrade<br />

Ist das geschehen, ist zunächst der auf<br />

einem RHEL-Kernel basierende Proxmox-<br />

Kernel zu installieren:<br />

apt‐get install pve‐firmware<br />

aptitude install pve‐kernel‐2.6.32‐16‐pve<br />

Die PVE-Kernel-Header werden nur benötigt,<br />

wenn später weitere individuelle<br />

Modifikationen durch das Anpassen des<br />

Kernels oder das Übersetzen von Kernel-<br />

Modulen anstehen. Beim Reboot ist unbedingt<br />

darauf zu achten, dauch tatsächlich<br />

den Proxmox-Kernel zu booten. Normalerweise<br />

sollte Grub2 eine entsprechende<br />

Boot-Auswahl automatisch konfiguriert<br />

haben. Läuft das System mit PVE-Kernel,<br />

kann der Admin das eigentliche Proxmox-<br />

Virtual-Environment mit »apt‐get insstall<br />

proxmox‐ve‐2.6.32« installieren. Das<br />

Aktivieren des Proxmox-Webinterfaces<br />

durch Hinzufügen eines Virtual Hosts mit<br />

anschließendem Apache-Neustart klappt<br />

am schnellsten mit<br />

a2ensite pve‐redirect.conf<br />

/etc/init.d/apache2 restart<br />

Abo abschließen und gewinnen!<br />

Sparen Sie 15% beim<br />

Print- oder Digital-Abo<br />

und gewinnen Sie eins von zwei<br />

Archos 101 XS Gen 10 im Wert<br />

von circa 380 E!<br />

Die Verlosung erfolgt am 28.02.13 um 12 Uhr<br />

unter allen Abonnenten (außer Miniabos)<br />

Die Monatszeitschrift für Android-Fans, Smartphone- und Tablet-Nutzer<br />

Jetzt bestellen unter:<br />

www.android–user.de/abo<br />

Telefon 07131 www.admin-magazin.de<br />

/ 2707 274 • Fax 07131 / 2707 78 601 • E-Mail: Admin abo@android-user.de<br />

Ausgabe 01-2013<br />

69


Virtualisierung<br />

Proxmox<br />

schehen, sollte eine Verbindung zum<br />

Proxmox-Webinterface unter der Adresse<br />

»https://


Proxmox<br />

Virtualisierung<br />

Infos<br />

Abbildung 5: Dank Bare-Metal-Installer ist das System nach wenigen Eingaben einsatzbereit.<br />

Abbildung 6: Essenziell ist das Anlegen eines Storage, im einfachsten Fall ein lokales Verzeichnis.<br />

Abbildung 7: Im Reiter General sind der betreffende Knoten sowie die ID der virtuellen Appliance vorgegeben.<br />

[1] Proxmox-Projektseite:<br />

[http:// www. proxmox. com/]<br />

[2] Proxmox-Shop:<br />

[https:// shop. maurer‐it. com/ cart. php]<br />

[3] Thomas Drilling: Artikel überProxmox VE<br />

in <strong>ADMIN</strong> 05/​2010<br />

[http:// www. admin‐magazin. de/ Das‐Heft/​<br />

2010/ 05/ Container‐und‐Hardware‐Virtuali<br />

sierung‐unter‐einem‐Dach]<br />

[4] Artikel Proxmox VE in LM 10/​2012 von<br />

Martin Loschwitz:<br />

[http:// www. linux‐magazin. de/ Ausgaben/​<br />

2012/ 10/ Proxmox‐VE]<br />

[5] Proxmox im Vergleich mit VMware und<br />

HyperV: [http:// www. proxmox. com/​<br />

products/ proxmox‐ve/ comparison]<br />

[6] Proxmox_VE_API:[http:// pve. proxmox.​<br />

com/ wiki/ Proxmox_VE_API]<br />

[7] Gewöhnlicher PVE-Cluster:<br />

[http:// pve. proxmox. com/ wiki/ Proxmox_<br />

VE_Cluster]<br />

[8] PVE Two-Node_High_Availability_<br />

Cluster:[http:// pve. proxmox. com/ wiki/​<br />

Two‐Node_High_Availability_Cluster]<br />

[9] PVE DRDB:<br />

[http:// pve. proxmox. com/ wiki/ DRBD]<br />

[10] Corosync-Kommunikation-Stack:<br />

[http:// www. corosync. org]<br />

[11] Red Hat Clutser Suite: [https:// access.​<br />

redhat. com/ knowledge/ docs/ de‐DE/​<br />

Red_Hat_<strong>Enterprise</strong>_<strong>Linux</strong>/ 5/ html/​<br />

Cluster_Suite_Overview/ ch. gfscs.​<br />

cluster‐overview‐CSO. html]<br />

[12] Proxmox Cluster Filesystem:<br />

[http:// pve. proxmox. com/ wiki/ Proxmox_<br />

Cluster_file_system_(pmxcfs)]<br />

[13] Proxmox VE cluster manager toolkit:<br />

[https:// pve. proxmox. com/ pve2‐api‐doc/​<br />

man/ pvecm. 1. html]<br />

[15] Synoptic Proxmox VE cluster manager<br />

Toolkit: [https:// pve. proxmox. com/​<br />

pve2‐api‐doc/ man/ pvecm. 1. html]<br />

[16] Proxmox Roadmap:<br />

[http:// pve. proxmox. com/ wiki/ Roadmap]<br />

[17] Ceph: [http:// ceph. com/ docs/ master/]<br />

[18] PVE-Download PVE: [http:// www.​<br />

proxmox. com/ downloads/ proxmox‐ve/​<br />

17‐iso‐images]<br />

[19] Proxmox Hardware-Anforderungen:<br />

[http:// proxmox. com products/<br />

proxmox‐ve/ system‐requirementsproxmox‐ve]<br />

[20] Das Proxmox-Storage Modell:<br />

[http:// pve. proxmox. com/ wiki/ Storage_<br />

Model]<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

71


Virtualisierung<br />

Open Stack<br />

© JY Lee, 123RF<br />

OpenStack-Workshop, Teil 2: Eine Schritt-für-Schritt Cloud-Installation<br />

Einrichtungsberater<br />

Der erste Artikel dieses Workshops hat die Theorie hinter OpenStack beleuchtet, der zweite Teil kümmert sich<br />

um die Praxis: Wie lässt sich eine Open-Stack-Wolke aus dem Boden stampfen? Martin Loschwitz<br />

Eingedenk der am Markt herrschenden<br />

Vielfalt verschiedener Cloud-Lösungen<br />

ist die Auswahl des passenden Systems<br />

für die eigenen Ansprüche eine eher<br />

schwierige Angelegenheit. Haben die Planer<br />

von IT-Umgebungen diesen Schritt<br />

hinter sich gebracht und sich dabei für<br />

Open Stack entschieden, fängt jedoch das<br />

Leiden meist erst richtig an. Denn Open<br />

Stack genießt nicht unbedingt den Ruf,<br />

das bestdokumentierte Projekt der Open-<br />

Source-Szene zu sein. Zwar ist in den<br />

letzten Monaten die Dokumentation ein<br />

ganzes Stück besser geworden, was nicht<br />

zuletzt an der Hartnäckigkeit von Anne<br />

Gentle liegt – der Leiterin des Dokumentationsteams.<br />

Doch hapert es noch immer<br />

an einigen Stellen – so fehlt beispielsweise<br />

ein Dokument, das die Installation<br />

einer Open Stack-Wolke durchgängig von<br />

der Installation der Pakete bis hin zu der<br />

ersten VM erläutert.<br />

Keine Panik: Open Stack wirkt umfangreich,<br />

doch die meisten Teile der ab Werk<br />

gelieferten Konfiguration lassen sich eins<br />

zu eins nutzen. Dieser Text beschäftigt<br />

sich mit der Frage, welche Open-Stack-<br />

Komponenten notwendig für eine Open-<br />

Stack-Basisinstallation sind und wie deren<br />

Konfiguration klappt. Das Ziel ist eine<br />

Open-Stack-Referenzimplementation bestehend<br />

aus drei Knoten: Ein Knoten dient<br />

als Cloud-Controller, ein weiterer fungiert<br />

als Knoten für den Open-Stack-Netzwerkdienst<br />

Quantum, und der dritte Knoten<br />

beheimatet als klassischer Hypervisor die<br />

virtuellen Maschinen der Umgebung.<br />

Zur Vorbereitung: NTP,<br />

RabbitMQ und MySQL<br />

Die gute Nachricht vorweg: NTP und<br />

RabbitMQ bedürfen nach der Installation<br />

auf Alice keiner Veränderungen; beide<br />

Dienste funktionieren unmittelbar nach<br />

der Installation mit Standardwerten.<br />

Etwas anders sieht es für MySQL aus:<br />

Sämtliche Open-Stack-Dienste benötigen<br />

eine eigene Datenbank in MySQL, die<br />

händisch anzulegen ist. Das Listing 1<br />

hat die notwendigen Befehle. Das Beispiel<br />

geht davon aus, dass für den Root-<br />

User in MySQL kein Passwort gesetzt ist.<br />

Falls das im lokalen Setup anders ist,<br />

so ist den MySQL-Aufrufen jeweils der<br />

„-p“-Parameter hinzuzufügen, sodass<br />

der MySQL-Client jeweils nach dem Datenbank-Passwort<br />

fragt. Überdies muss<br />

MySQL so konfiguriert sein, dass es auf<br />

allen Interfaces lauscht – und nicht nur<br />

auf der Localhost-Adresse »127.0.0.1«.<br />

Dazu ist in »/etc/mysql/my.cnf« der Wert<br />

von »bind_address =« auf »0.0.0.0« zu<br />

ändern. Wenn also die Datenbanken angelegt<br />

sind, und die IP-Adresse entsprechend<br />

angepasst ist, kann es mit den<br />

eigentlichen Open-Stack-Komponenten<br />

weitergehen.<br />

Aller Anfang: Open Stack<br />

Keystone<br />

Keystone ist die Autentizifierungskomponente<br />

von Open Stack. Es handelt sich<br />

um den einzigen Dienst, der keinen an-<br />

72 Ausgabe 01-2013 Admin www.admin-magazin.de


Open Stack<br />

Virtualisierung<br />

Benötigte Pakete<br />

Der Artikel geht davon aus, dass Ubuntu 12.04 zum Einsatz kommt. Um in<br />

den Genuss von OpenStack Folsom zu gelangen, reichen die Paketlisten von<br />

Ubuntu 12.04 allerdings nicht aus, denn diese enthalten nur Pakete für die<br />

Vorgängerversion Essex. Glücklicherweise stellt das Ubuntu-Cloud-Team<br />

für Precise Pangolin aber in einem eigenen Repository Pakete von Essex<br />

bereit, die sich wie gehabt installieren lassen. Damit die Installation klappt,<br />

ist das Paket »ubuntu‐cloud‐keyring« notwendig, das den GPG-Schlüssel<br />

des Cloud-Teams enthält. In »/etc/apt/sources.list.d/cloud.list« sorgt im<br />

Anschluss der Eintrag<br />

»deb http://ubuntu‐cloud.archive. canonical.com/ubuntu precise‐updates/<br />

folsom main«<br />

dafür, dass die benötigten Paketlisten tatsächlich auch in die Verwaltung<br />

des Systems gelangen. Die Installation einzelner Pakete erfolgt danach wie<br />

gewohnt über Werkzeuge wie »apt‐get« oder »aptitude«.<br />

Pakete auf dem Cloud Controller<br />

Der Host »alice« spielt im Beispiel den Cloud Controller; damit der Host<br />

diese Aufgabe erfüllen kann, benötigt er den Basis-Satz an Paketen für<br />

OpenStack. Die folgenden Pakete samt Abhängigkeiten sind also Voraussetzung:<br />

n ntp<br />

n tgt / open-iscsi / open-iscsi-utils<br />

n rabbitmq-server<br />

n mysql-server / python-mysqldb<br />

n keystone / python-keystone / python-keystoneclient<br />

n glance / glance-api / glance-common / glance-registry / pythonglance<br />

n nova-api-metadata / nova-api-os-compute / nova-api-os-volume / novaapi-ec2<br />

n nova-cert / nova-common / nova-doc / nova-objectstore / nova-scheduler<br />

n nova-consoleauth / nova-novncproxy / python-nova / python-novaclient<br />

n openvswitch-switch<br />

n quantum-server / python-cliff / python-pyparsing<br />

n cinder-api / cinder-scheduler<br />

n cinder-volume / iscsitarget / open-iscsi / python-cinderclient<br />

n libapache2-mod-wsgi / openstack-dashboard / python-memcache<br />

Auf dem Compute-Host sind ebenfalls ein paar Pakete notwendig, jedoch<br />

deutlich weniger als auf dem Cloud Controller:<br />

n kvm / libvirt-bin / pm-utils<br />

n nova-compute-kvm<br />

n quantum-plugin-openvswitch-agent / bridge-utils<br />

Schließlich gibt es noch den Netzwerk-Knoten, der auch ein Basisset an<br />

Paketen braucht. Damit er tut wie ihm verheißen, dürfen die folgenden<br />

Pakete also nicht fehlen:<br />

n bridge-utils<br />

n quantum-plugin-openvswitch-agent / quantum-l3-agent / quantumdhcp-agent<br />

n python-keystone / python-keystoneclient<br />

deren Dienst voraussetzt. Deshalb ist es<br />

sinnvoll, mit der Keystone-Installation auf<br />

Alice zu beginnen. Direkt nach der Installation<br />

der Keystone-Pakete empfiehlt<br />

es sich, die Keystone-Konfiguration in<br />

»/etc/keystone/keystone.conf« per Editor<br />

zu bearbeiten.<br />

Wichtig ist, dass in der Zeile »admin_token<br />

= « ein entsprechender Wert als Admin-Token<br />

festgelegt wird. Das Admin-<br />

Token ist der Generalschlüssel für Open<br />

Stack: Wer den Wert kennt, kann nach<br />

Belieben Veränderungen in Keystone<br />

vornehmen. Es ist deshalb empfehlenswert,<br />

die Zugriffsrechte von »keystone.<br />

conf« so zu setzen, dass nur »root« die<br />

Datei lesen kann. Für das Beispiel kommt<br />

das Admin-Token »geheim« zum Einsatz.<br />

Keystone muss auch wissen, wo es seine<br />

eigene MySQL-Datenbank erreicht. Das<br />

geht über den SQL-Connection-String,<br />

der in »keystone.conf« innerhalb des<br />

»[sql]«-Blocks definiert ist. In der Standardkonfiguration<br />

verweist die Datei dort<br />

auf eine SQlite-Datenbank, für das konkrete<br />

Beispiel – MySQL ist auf Alice beheimatet<br />

– ist der Eintrag im Hinblick auf<br />

die zuvor angelegte MySQL-Datenbank<br />

wie folgt zu setzen:<br />

[sql]<br />

connection = mysql://keystonedbadmin:U<br />

Ue0Ud7ra@192.168.122.111/keystone<br />

idle_timeout = 200<br />

Damit Keystone weiß, wie es seine<br />

Service-Definitionen zu speichern hat,<br />

sollten in »keystone.conf« außerdem die<br />

folgenden Einträge zugegen sein:<br />

[identity]<br />

driver = keystone.identity.backends.sql.U<br />

Identity<br />

[catalog]<br />

driver = keystone.catalog.backends.sql.U<br />

Catalog<br />

»keystone.conf« ist damit bereits fertig;<br />

wenn die Datei gespeichert und der Editor<br />

geschlossen ist, folgt im nächsten<br />

Schritt das Anlegen aller von Keystone<br />

benötigten Tabellen in seiner Datenbank.<br />

Das geht mit dem dafür vorgesehenen<br />

Listing 1: Datenbanken anlegen<br />

Die folgenden Befehle legen die in MySQL benötigten Datenbanken an:<br />

mysql ‐u root


Virtualisierung<br />

Open Stack<br />

Werkzeug: »keystone‐manage db_sync«.<br />

Im Anschluss startet »service keystone<br />

restart« den Dienst neu, sodass er einsatzbereit<br />

ist.<br />

Des Admins erste Handlung nach der<br />

Konfiguration ist es sinnvollerweise, einen<br />

Grundstock an Tenants und Benutzern<br />

anzulegen. In der Praxis geschieht<br />

das nicht händisch, sondern mittels vorgefertigter<br />

Skripte. Ein speziell auf diesen<br />

Artikel abgestimmtes Skript findet sich<br />

unter [1]. Es nutzt den zuvor in »keystone.conf«<br />

genutzten Schlüssel »geheim«<br />

und legt damit einen Tenant namens<br />

»admin« an, dem ein Benutzer gleichen<br />

Namens angehört und der als Passwort<br />

ebenfalls »geheim« nutzt. Zudem kümmert<br />

sich das Skript darum, dass ein<br />

»service«-Tenant entsteht, der Benutzer<br />

für sämtliche Dienste enthält und für jeden<br />

dieser Benutzer als Passwort auch<br />

Das Netzwerk der Wolke<br />

OpenStack Folsom bringt Quantum als zentrale<br />

Komponente für das Netzwerk. Die Komponente<br />

hilft dabei, Netzwerke zu virtualisieren – damit<br />

sie diese Rolle wahrnehmen kann, muss der Admin<br />

allerdings verstehen, wie Quantum im Ansatz<br />

funktioniert und welche Voraussetzungen<br />

auf den einzelnen Knoten zu erfüllen sind, damit<br />

das Quantum-Prinzip funktioniert.<br />

Grundsätzlich gilt: In Quantum bekommt der<br />

Admin es mit einer Reihe von Netzwerken zu<br />

tun, die die Kommunikation der Knoten untereinander<br />

und der virtuellen Maschinen ermöglichen.<br />

Die Quantum-Entwickler unterscheiden<br />

in diesem Falle zwischen vier verschiedenen<br />

Netzwerken (Abbildung 1)<br />

Das Management-Network ist das Netzwerk, das<br />

die physikalischen Server der OpenStack-Installation<br />

nutzen, um miteinander zu kommunizieren.<br />

Über dieses Netzwerk laufen beispielsweise<br />

interne Anfragen an den Keystone-Dienst, der<br />

für die Autentifizierung innerhalb des Setups<br />

verantwortlich ist. In diesem Beispiel ist das<br />

Management-Netz 192.168.122.0/​24, und alle drei<br />

Knoten haben eine direkte Verbindung in dieses<br />

Netz über die Netzwerkschnittstelle eth0.<br />

»alice« hat dabei die IP-Adresse 192.168.122.111,<br />

»Bob« hat die IP 192.168.122.112 und »Charlie«<br />

hat die IP-Adresse 192.168.122.113. Zudem geht<br />

das Beispiel davon aus, dass die Default-Route<br />

aller drei Rechner zur Außenwelt ebenfalls in<br />

diesem Netzwerk liegt und dass das Default-<br />

Gateway in allen Fällen 192.168.122.1 ist (Abbildung<br />

2). Hinzu kommt das Data Network: Dieses<br />

nutzen die virtuellen Maschinen auf dem Comute-Host<br />

(Bob), um mit dem Netzwerk-Dienst<br />

auf Charlie zu sprechen. Das Data-Netz ist im<br />

Beispiel 192.168.133.0/​24, Bob hat als IP-Adresse<br />

in diesem Netz 192.168.133.112 und Charlie hat<br />

192.168.133.113 – auf beiden Hosts liegt das Netz<br />

auf dem Interface »eth1« an, das seinerseits<br />

auch als Bridge für die virtuellen Maschinen<br />

dient (diese werden IP-Adressen im privaten<br />

Netzwerk 10.5.5.0/​24 haben, um miteinander zu<br />

sprechen).<br />

Weiterhin existiert das »External Network«:<br />

Aus diesem beziehen die virtuellen Maschinen<br />

später öffentliche IP-Adressen. In Ermangelung<br />

echter öffentlicher IPs nutzt das Beispiel für<br />

dieses Netz »192.168.144.0/25«. Weil in Quantum<br />

die einzelnen VMs die öffentlichen IP-Adressen<br />

nicht direkt zugewiesen bekommen, sondern der<br />

Zugriff hierauf über den Netzknoten und dort<br />

gesetzte iptables-DNAT-Regeln funktioniert, benötigt<br />

nur der Host für Quantum, also Charlie,<br />

ein Interface in diesem Netz.<br />

Die Zuteilung einer IP erfolgt durch Quantum automatisch,<br />

sodass auf Charlie nur das Interface<br />

»eth2« vorhanden sein muss – aus der Konfiguration<br />

erfährt Quantum im weiteren Verlauf,<br />

dass es dieses Interface für das öffentliche Netz<br />

nutzen soll.<br />

Schließlich existiert das »API«-Netzwerk: Dieses<br />

ist nicht zwingend vorgeschrieben, erlaubt<br />

es aber, die APIs der OpenStack-Dienste über<br />

ein öffentliches Interface der Außenwelt zur<br />

Verfügung zu stellen. Das Netz kann im gleichen<br />

Segment liegen, wie das External Network<br />

(beispielsweise könnte das gesamte zur<br />

Verfügung stehende Netz<br />

192.168.144.0/​24 sein, auf<br />

Quantum-Ebene ist das<br />

definierte öffentliche Netz<br />

dann 192.168.144.0/​25, und<br />

das Netz 192.168.144.129/​<br />

25 steht als API-Netz zur<br />

Verfügung). Falls die APIs<br />

von OpenStack von außen erreichbar sein wollen,<br />

muss auf Alice dafür ein Interface existieren,<br />

das eine entsprechende IP enthält.<br />

Asynchrones Routing aktivieren<br />

Eine überaus lästige Default-Einstellung in<br />

Ubuntu 12.04 führt bisweilen zu Problemen, gerade<br />

in Setups mit OpenStack Quantum. Ubuntu<br />

setzt ab Werk den Wert für die »rp_filter«-<br />

Syscontrol-Variable auf 1. Das bedeutet, dass<br />

ein Antwortpaket für einen Netzwerkrequest<br />

nur über genau das Interface den Weg in das<br />

System nehmen darf, über das die ursprüngliche<br />

Anfrage das System zuvor verlassen hat.<br />

In Quantum-Setups kann es allerdings durchaus<br />

vorkommen, dass Pakete über andere Interfaces<br />

rausgehen, als deren Antworten den Weg zurück<br />

in das System finden. Es empfiehlt sich daher,<br />

das asynchrone Routing auf Ubuntu großflächig<br />

zu erlauben. In »/etc/sysctl.conf« erledigen das<br />

die folgenden beiden Einträge:<br />

net.ipv4.conf.all.rp_filter = 0<br />

net.ipv4.conf.default.rp_filter = 0<br />

Selbstverständlich muss auch das Packetforwarding<br />

aktiviert sein:<br />

net.ipv4.ip_forward=1<br />

Ein Reboot im Anschluss sorgt dafür, dass die<br />

neue Konfiguration aktiv ist.<br />

IPTables und Masquerading<br />

Last but not least ist freilich auch die Firewall-<br />

Konfiguration der Hosts zu beachten. Grundsätzlich<br />

gilt, dass iptables-Regeln nicht den Traffic<br />

der einzelnen Interfaces behindern sollten.<br />

Kommt wie im Beispiel zudem ein Gateway für<br />

das externe Netzwerk zum Einsatz, das kein<br />

vom Provider separat gesteuerter Router ist,<br />

sondern ein lokaler Rechner, so sind auf diesem<br />

die Regeln für DNAT und SNAT so zu setzen, dass<br />

sie zum Setup passen.<br />

Abbildung 1: Ein OpenStack-Standardsetup sieht mindestens vier<br />

Netzwerke vor, die jeweils eine eigene Rolle spielen.<br />

Abbildung 2: Nach dem Anlegen der Netzwerke in Quantum stehen zwei Netzwerke<br />

sowie ein Router zur Verfügung.<br />

74 Ausgabe 01-2013 Admin www.admin-magazin.de


Open Stack<br />

Virtualisierung<br />

»geheim« verwendet. Das Skript ist lediglich<br />

herunterzuladen und dann auf Alice<br />

über die Kommandozeile auszuführen.<br />

Endpoints in Keystone<br />

definieren<br />

Keystone führt die sogenannte »Endpoint«-<br />

Datenbank. Ein Endpoint in Keystone ist<br />

die Adresse einer API eines der Open-<br />

Stack-Dienste. Möchte ein Open-Stack-<br />

Dienst wissen, wie er mit der API eines<br />

anderen Dienstes direkt kommunizieren<br />

kann, so erhält er diese Information<br />

aus eben dieser Liste in Keystone. Für<br />

Admins bedeutet das, dass sie die Liste<br />

anfänglich anzulegen haben; auch diese<br />

Aufgabe übernimmt ein Skript, das unter<br />

[2] zu finden ist. Wenn das Skript den<br />

Weg auf die Platte gefunden hat, klappt<br />

sein Aufruf so:<br />

./endpoints.sh \<br />

‐m 192.168.122.111 \<br />

‐u keystonedbadmin \<br />

‐D keystone \<br />

‐p Ue0Ud7ra \<br />

‐K 192.168.122.111 \<br />

‐R RegionOne \<br />

‐E "http://192.168.122.111:35357/v2.0" \<br />

‐S 192.168.122.113 \<br />

‐T geheim<br />

Die einzelnen Parameter sind dabei deutlich<br />

weniger kryptisch als es auf den ersten<br />

Blick scheint. »‐m« gibt die Adresse<br />

an, unter der MySQL zu erreichen ist.<br />

»‐u«, »‐D« und »‐p« geben die Zugangsdaten<br />

für MySQL an (der Benutzer ist »keystonedbadmin«,<br />

die Datenbank »keystone«<br />

und das Passwort ist »Ue0Ud7ra«. Der<br />

Parameter »‐K« gibt an, auf welchem Host<br />

Keystone lauscht und »‐R« legt die Open<br />

Stack-Region fest, für die diese Angaben<br />

gelten. Über den Parameter bei »‐E«<br />

erfährt das Script, wo es sich selbst an<br />

Keystone anmelden muss, um die Änderungen<br />

überhaupt machen zu können.<br />

»‐S« gibt die Adresse für die Open<br />

Stack Object Storage Lösung mit Namen<br />

»Swift« an, die nicht Bestandteil dieses<br />

Howtos ist, aber später unter Umständen<br />

trotzdem noch das Setup erweitern soll.<br />

»‐T« bezeichnet das Admin-Token wie in<br />

»keystone.conf« festgelegt. Achtung: Das<br />

Skript ist für die Daten dieses Beispiels<br />

ausgelegt. Kommen beispielsweise andere<br />

IPs zum Einsatz, so ist das Skript<br />

entsprechend zu adaptieren.<br />

Hat das Hinzufügen der Endpoints funktioniert,<br />

ist Keystone bereit für den Einsatz<br />

in Open Stack.<br />

Open Stack-Credentials<br />

speichern<br />

Sobald Keystone scharf geschaltet ist,<br />

bedingt jede Interaktion mit dem Dienst<br />

die vorherige Autentifizierung. Sämtliche<br />

Open Stack-Tools für die Kommandozeile<br />

haben sich allerdings auf Umgebungsvariablen<br />

geeinigt, die die Anmeldung an<br />

Keystone vereinfachen. Sind diese Variablen<br />

definiert, müssen sich Admins nicht<br />

mehr um die händische Autentifizierung<br />

kümmern. Es empfiehlt sich, eine Datei<br />

namens ».openstack‐credentials« im<br />

persönlichen Ordner anzulegen. Im konkreten<br />

Beispiel könnte diese so aussehen<br />

wie in Listing 2.<br />

Anschließend lässt sich diese Datei mittels<br />

». .openstack‐credentials« in die<br />

laufende Umgebung einbinden. Danach<br />

sollten die Open Stack-Befehle auf der<br />

Kommandozeile klaglos funktionieren.<br />

Der Image-Automat Glance<br />

Keine Wolke ohne Images von Betriebssystemen:<br />

Damit Benutzer schnell und<br />

ohne großes Vorwissen virtuelle Maschinen<br />

starten können, haben Admins ihnen<br />

entsprechende Images zur Verfügung zu<br />

stellen – sonst wird es nichts mit der<br />

Wolke. Glance übernimmt in Open Stack<br />

genau diese Aufgabe. De facto besteht<br />

der Dienst aus zwei einzelnen Komponenten:<br />

Der API (»glance‐api«) sowie der<br />

Registry (»glance‐registry«). Erstere bietet<br />

ein Interface für alle anderen Open Stack-<br />

Dienste, zweitere kümmert sich um die<br />

Pflege der Datenbank von Glance selbst.<br />

Den Anfang macht die Konfigurationsdatei<br />

von »glance‐api«. Die liegt in<br />

»/etc/glance/glance‐api.conf«. An ihrem<br />

Ende findet sich ein Eintrag namens<br />

»[keystone_authtoken]«. Ein solcher oder<br />

ähnlicher Eintrag begegnet Open Stack-<br />

Admins häufig – jeder Dienst muss sich,<br />

bevor er mit Keystone sprechen darf,<br />

selbst erstmal bei ihm anmelden. Die zitierte<br />

Stelle in »glance‐api.conf« ist der<br />

richtige Ort, um dafür die Credentials zu<br />

definieren. Der Vorteil: Die Konfiguration<br />

ist für fast alle Open Stack-Dienste ähnlich<br />

aus oder sogar identisch.<br />

Für den weiteren Verlauf des Artikels<br />

gilt deshalb: »auth_host« ist stets<br />

»192.168.122.111 «, »admin_tenant_name«<br />

ist stets »service« und »admin_password«<br />

ist stets »geheim«. »admin_user« ist stets<br />

der Name des Open Stack-Dienstes, der<br />

sich an Keystone anmelden soll, also<br />

»glance« im vorliegenden Fall, » nova« für<br />

Open Stack Nova, »quantum« für Open<br />

Stack Quantum und so weiter. Einige<br />

Dienste fragen nach einer »auth_url« –<br />

diese ist im Rahmen dieses Artikels stets<br />

»http://192.168.122.111:5000/v2.0/«.<br />

Wenn im lokalen Setup andere IPs zum<br />

Einsatz kommen, so sind diese freilich<br />

für »auth_host« und »auth_url« zu nutzen.<br />

Damit steht fest, was in »glance‐api.<br />

conf« für die jeweiligen Werte bei »[keystone_authtoken]«<br />

einzusetzen ist.<br />

Wie zuvor »keystone.conf« findet sich<br />

auch in »glance‐api.conf« die SQL-Anweisung<br />

in einer Zeile, die mit »sql_connection«<br />

beginnt. Nach der Glance-Installation<br />

steht dort eine SQLite-Datenbank,<br />

im konkreten Beispiel ist die SQL-Verbindung<br />

diese:<br />

sql_connection = mysql://glancedbadmin:U<br />

ohC3teiv@192.168.122.111/glance<br />

Weiter unten im File findet sich eine<br />

Sektion namens »[paste_deploy]«. Hier<br />

möchte Glance wissen, welche Authentifizierungs-Methode<br />

es verwenden soll<br />

und wo es nähere Einstellungen dazu<br />

findet. Für »glance‐api.conf« lautet der<br />

korrekte Eintrag bei »config_file =« in<br />

dem Abschnitt folglich »/etc/glance/<br />

glance‐api‐paste.ini« und bei »flavor=«<br />

führt der Wert » keystone« zum gewünschten<br />

Resultat. Nach diesen Änderungen ist<br />

die Datei für den Einsatz bereit. Analog<br />

zu ihr ist »/etc/glance/glance‐registry.<br />

conf« zu bearbeiten: Die Werte für die<br />

verschiedenen »auth_«-Variablen sind<br />

dieselben wie für »glance‐api«, auch die<br />

Datenbankverbindung sowie der Text<br />

Listing 2: Credentials<br />

01 OS_AUTH_URL="http://192.168.122.111:5000/v2.0/"<br />

02 OS_PASSWORD="geheim"<br />

03 OS_TENANT_NAME="admin"<br />

04 OS_USERNAME="admin"<br />

05 OS_NO_CACHE=1<br />

06 <br />

07 export OS_AUTH_URL OS_PASSWORD<br />

08 export OS_TENANT_NAME OS_USERNAME<br />

09 export OS_NO_CACHE<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

75


Virtualisierung<br />

Open Stack<br />

bei »flavor=« sind identisch. Lediglich<br />

bei »config_file« unterscheidet sich der<br />

Eintrag, denn für »glance‐registry.conf«<br />

ist dieser entsprechend »/etc/glance/<br />

glance‐registry‐paste.ini«. Damit ist die<br />

Konfiguration der Glance-Komponenten<br />

fertig.<br />

Höchste Zeit also, die Tabellen in den<br />

Glance-Datenbanken anzulegen. Dabei<br />

hilft »glance‐manage«:<br />

glance‐manage version_control 0<br />

glance‐manage db_sync<br />

Es folgt ein Neustart der beiden Glance-<br />

Dienste mittels »service glance‐api restart<br />

&& service glance‐registry restart«.<br />

Nun ist der Image-Store bereit für das<br />

erste Test-Image. Glücklicherweise unterstützt<br />

der Glance-Client den direkten<br />

Download von Images aus dem Netz. Um<br />

ein Ubuntu-12.04-Cloud-Image in den<br />

Image-Store aufzunehmen, genügt daher<br />

der folgende Befehl aus Listing 3.<br />

Im Anschluss sollte »glance image‐list«<br />

das entsprechende Image auch anzeigen<br />

– sobald im Feld »Status« der Wert »AC-<br />

TIVE« aufscheint, ist das Image bereit für<br />

die Nutzung.<br />

Quantum: Die Netzwerk-<br />

Hydra<br />

Zweifellos die aufwendigste Konfiugurationsarbeit<br />

erwartet Admins, wenn es um<br />

den Netzwerkdienst Quantum geht. Denn<br />

damit dieser funktioniert, sind auf allen<br />

drei Hosts Dienste einzurichten. Den<br />

Anfang macht Alice: Hier muss der eigentliche<br />

Quantum-Server samt entsprechendem<br />

Plugin laufen. Dieses Beispiel<br />

nutzt als Plugin OpenVSwitch, sodass<br />

der Quantum-Server selbst wie auch das<br />

OpenVSwitch-Plugin zu konfigurieren<br />

sind (Abbildung 3).<br />

Nach der Installation ist zunächst »/etc/<br />

quantum/api‐paste.ini« an der Reihe.<br />

Im Abschnitt »[filter:authtoken]« finden<br />

Listing 3: Image integrieren<br />

01 glance image‐create \<br />

02 ‐‐copy‐from http://uec‐images.<br />

ubuntu.com/releases/12.04/release/<br />

ubuntu‐12.04‐server‐cloudimg‐amd64‐disk1.img \<br />

03 ‐‐name="Ubuntu 12.04 cloudimg amd64" \<br />

04 ‐‐is‐public true \<br />

05 ‐‐container‐format ovf \<br />

06 ‐‐disk‐format qcow2<br />

Abbildung 3: Auf der Kommandozeile verrät der Befehl »ovs‐vsctl show«, was Quantum in der OpenVSwitch-<br />

Konfiguration verändert.<br />

sich die schon von Glance her bekannten<br />

Einträge, die durch die Werte für dieses<br />

Beispielsetup zu ersetzen sind. Als<br />

»auth_port« muss zwingend »35357« in<br />

der Datei stehen. Dann folgt die Konfiguration<br />

des OVS-Plugins: Dessen Konfigurationsdatei<br />

ist » /etc/quantum/plugins/<br />

openvswitch/ovs_quantum_plugin.ini«.<br />

Darin findet sich eine Zeile, die mit »sql_<br />

connection« anfängt und die Quantum<br />

verrät, wie es auf seine eigene MySQL-<br />

Datenbank zugreift. Hier lautet der korrekte<br />

Eintrag »sql_connection = mysql://<br />

quantumdbadmin:wozohB8g@192.168.1<br />

22.111/quantum«. Weiter unten sind in<br />

der Datei hinter der Zeile »# Example:<br />

bridge_mappings = physnet1:br-eth1«<br />

folgende drei Zeilen einzutragen:<br />

tenant_network_type = gre<br />

tunnel_id_ranges = 1:1000<br />

enable_tunneling = True<br />

Der Einfachheit halber empfiehlt es sich,<br />

diese Datei nun zu speichern und an die<br />

gleiche Stelle auf »bob« zu kopieren (für<br />

die Hosts Bob und Charlie werden später<br />

allerdings noch Veränderungen notwendig).<br />

Auch »/etc/quantum/api‐paste.ini«<br />

lässt sich eins zu eins auf den beiden<br />

Knoten übernehmen.<br />

Auf Alice lässt sich der Quantum-Server<br />

(Abbildung 4) samt OpenVSwitch-Plugin<br />

nun schon starten: »service quantum‐server<br />

start« erledigt das.<br />

Auf Bob läuft kein Quantum-Server, nachdem<br />

es sich allerdings im Beispiel um den<br />

Computing-Knoten handelt, braucht Bob<br />

zwingend den » quantum‐plugin‐openvswitch‐agent«,<br />

den Agent, der zum<br />

OpenVSwitch-Plugin gehört. Über ihn erhält<br />

Bob später sämtliche relevanten Netzwerkinfos<br />

von Alice (»quantum‐server«)<br />

und Charlie (»DHCP«- und »L3«-Plug in),<br />

um sein eigenes Netzwerk richtig zu konfigurieren.<br />

Das Paket für diesen Agent<br />

sollte bereits vorhanden sein, sodass jetzt<br />

noch die Agent-Konfiguration ansteht.<br />

Die findet sich in » /etc/quantum/plugins/openvswitch/ovs_quantum_plugin.<br />

ini«. Hinter der Zeile »# Example: bridge_<br />

mappings = physnet1:br‐eth1« sorgt der<br />

folgende Absatz für die korrekte Funktion<br />

des Agents auf Bob:<br />

tenant_network_type = gre<br />

tunnel_id_ranges = 1:1000<br />

integration_bridge = br‐int<br />

tunnel_bridge = br‐tun<br />

local_ip = 192.168.133.112<br />

enable_tunneling = True<br />

Mit diesen Zeilen startet der Open-<br />

VSwitch-Agent automatisch einen Tunnel<br />

zwischen Bob und dem Netzwerk-Knoten<br />

Charlie, über den die beiden Hosts dann<br />

Informationen austauschen.<br />

76 Ausgabe 01-2013 Admin www.admin-magazin.de


Open Stack<br />

Virtualisierung<br />

Wenn die Änderungen an »ovs_quantum_plugin.ini«<br />

vollzogen sind, sollte<br />

ein Duplikat der Datei von Bob am gleichen<br />

Ort auf Charlie landen, wobei für<br />

Charlie die IP-Adresse »192.168.133.112«<br />

durch »192.168.133.113« zu ersetzen<br />

ist. Auf beiden Hosts – Bob und Charlie<br />

– ist zusätzlich in » /etc/quantum/<br />

quantum.conf« noch »# rabbit_host« zu<br />

entkommentieren und mit dem Wert<br />

»192.168.122.111« zu versehen – nur so<br />

wissen die Agents auf Bob und Charlie,<br />

wie sie den RabbitMQ-Server auf Alice<br />

erreichen.<br />

Schließlich braucht Charlie noch spezifische<br />

Veränderungen, weil auf ihm<br />

auch der »quantum‐l3‐agent« und der<br />

»quantum‐dhcp‐agent« laufen. Die beiden<br />

Dienste versorgen VMs im Setup<br />

später einerseits mit DHCP-Adressen,<br />

und andererseits stellen sie per »iptables«<br />

die Möglichkeit her, die VMs über<br />

öffentliche IP-Adressen zu erreichen (im<br />

Beispiel 192.168.144.0/​25). Die gute<br />

Nachricht ist: Der DHCP-Agent braucht<br />

überhaupt keine Veränderungen an der<br />

Konfiguration – der L3-Agent hingegen<br />

schon: Seine Konfigurationsdatei ist<br />

»/etc/quantum/l3_agent.ini«.<br />

Externe Netze anlegen<br />

Eingangs sind wie gewohnt die Werte<br />

für die »auth_«-Variablen in die Konfiguration<br />

einzutragen. Weiter unten in<br />

der Datei findet sich überdies der Eintrag<br />

»# metadata_ip =«, der zu entkommentieren<br />

ist und im Beispiel den Wert<br />

»192.168.122.111« enthält – mehr zum<br />

Metadaten-Server später. Die Konfigurationsdatei<br />

bedarf weiterer Anpassungen,<br />

die derzeit allerdings noch nicht möglich<br />

sind. Denn dafür wären die IDs des<br />

externen Routers wie auch die ID des<br />

externen Netwerks nötig, die allerdings<br />

erst exisiteren, nachdem die Netzwerke<br />

entsprechend angelegt sind. Genau das<br />

ist daher der nächste Schritt: Das Anlegen<br />

der Netzwerke in Quantum. Dieser<br />

Schritt findet auf Alice statt.<br />

Weil auch das Anlegen von Netzwerken<br />

einige Kommandos umfasst, stellt der<br />

Autor dieses Artikels ein Skript unter [3]<br />

zur Verfügung. Dieses legt die im Beispiel<br />

vorgesehenen Netzwerke an: Einerseits<br />

ein „privates“ Netzwerk für die Kommunikation<br />

der virtuellen Maschinen untereinander,<br />

andererseits auch das pseudoöffentliche<br />

Netzwerk »192.168.144.0/25«,<br />

aus dem die VMs dann im weiteren Verlauf<br />

dynamische IP-Adressen („floating<br />

IPs“) erhalten. Nach dem Download<br />

und dem Ausführen des Skriptes gilt es,<br />

die Quantum-interne ID des Routers für<br />

das Floating-Netz wie auch die ID des<br />

Floating-Netztes selbst in Erfahrung zu<br />

bringen. Den ersten Wert fördert »quantum<br />

router‐list« auf den Bildschirm – der<br />

Wert bei »ID« in der Zeile für den Router<br />

»provider‐router« ist von Interesse. Dieser<br />

wiederum landet in der eben bereits bearbeiteten<br />

»/etc/quantum/l3_agent.ini« auf<br />

Charlie. Die ID des Floating-Netzwerkes<br />

lässt sich mit »quantum net‐list« erfragen<br />

– dabei ist der Wert des »ID«-Feldes<br />

beim Eintrag interessant, dessen Name<br />

» ext_net« ist. Der Wert landet in »/etc/<br />

quantum/l3_agent.ini« hinter dem Wert<br />

»gateway_external_net_id = «. Beide zu<br />

ändernden Werte sind auch zu entkommentieren,<br />

sodass die Quantum-Agents<br />

sie tatsächlich betrachten. Damit sind die<br />

Quantum-Konfigurationsdateien fertig.<br />

Mit Quantum kann es nun fast losgehen:<br />

Auf Bob und Charlie fehlen nur noch<br />

die internen Bridges, die OpenVSwitch<br />

verwendet, um die Quantum-Interfaces<br />

an die lokale Netzwerk-Konfiguration<br />

anzuschließen. Auf Bob und Charlie legt<br />

»ovs‐vsctl add‐br br‐int« die Bridge an,<br />

die für die VM-interne Kommunikation<br />

zuständig ist. Zusätzlich braucht Charlie<br />

auch die Bridge nach außen: » ovs‐vsctl<br />

add‐br br‐ext« und »ovs‐vsctl add‐port<br />

br‐ext eth2« erledigen die notwendige<br />

Konfiguration. Am Ende des Vorgangs<br />

steht ein Neustart aller Agents auf Bob<br />

und Charlie an: »restart quantum‐plugin‐openvswitch‐agent«<br />

sind sowohl<br />

auf Bob als auch auf Charlie notwen-<br />

dig, auf Charlie sorgt zudem »restart<br />

quantum‐l3‐agent« und »restart quantum‐dhcp‐agent«<br />

dafür, dass die Agents<br />

ihre Konfiguration neu laden.<br />

Direkt angenehm im Vergleich zu Quantum<br />

gestaltet sich die Konfiguration von<br />

Cinder. Die Komponente war in der letzten<br />

Open-Stack-Version Essex noch unter<br />

dem Namen »nova‐volume« Teil der<br />

Computing-Komponente, führt nun aber<br />

ein Eigenleben.<br />

Block-Storage mit Cinder<br />

Voraussetzung dafür, dass Cinder funktioniert,<br />

ist eine LVM-Volume-Gruppe<br />

namens »cinder‐volumes« auf dem Host,<br />

auf dem Cinder läuft. Meistens wird Cinder<br />

auf dem Cloud-Controller beheimatet<br />

sein, auch in diesem Beispiel werkelt das<br />

Programm auf Alice. Welche Storage-Devices<br />

Teil der LVM-Volume-Gruppe sind,<br />

ist Cinder übrigens herzlich egal – wichtig<br />

ist nur, dass es in dieser Volume-Gruppe<br />

selbst Volumes anlegen kann. Auf Alice<br />

ist entsprechend eine Volume-Gruppe<br />

»cinder‐volumes« für dieses Beispiel da.<br />

Nach der Installation der Cinder-Dienste<br />

ist der wichtigste Teil, dass in »/etc/<br />

cinder/cinder.conf« das Programm über<br />

»sql_connection« erfährt, wie es an seine<br />

Datenbank kommt. Der korrekte Eintrag<br />

im Rahmen des Artikels ist »sql_connection<br />

= mysql://cinderdbadmin:ceeShi4<br />

O@192.168.122.111:3306/cinder«. Anschließend<br />

steht »/etc/cinder/api‐paste.<br />

ini« auf dem Programm – die nötigen<br />

Anpassungen sind analog zu den Veränderungen<br />

von »api‐paste.ini« der anderen<br />

Programme, wobei die »service_«-<br />

Einträge die gleichen Werte erhalten wie<br />

ihre »auth_«-Pendants. »admin_user« ist<br />

»cinder«.<br />

Auch Cinder benötigt Tabellen in seiner<br />

MySQL-Datenbank, die das Kommando<br />

»cinder‐manage db sync« anlegt.<br />

Es folgt ein Restart der Cinder-Dienste:<br />

»for i in api scheduler volume; do restart<br />

cinder‐"$i"; done«. Zuletzt gilt es,<br />

einen lästigen Bug im »tgt«-iSCSI-Target<br />

Abbildung 4: Auf dem Cloud Controller läuft in einer Default-Installation nur der eigentliche Quantum-Server.<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

77


Virtualisierung<br />

Open Stack<br />

zu umgehen, der sonst die korrekte Funktion<br />

von Cinder verhindert: Dazu ist der<br />

vorhandene Eintrag in »/etc/tgt/targets.<br />

conf« durch den Eintrag »include /etc/<br />

tgt/conf.d/cinder_tgt.conf« zu ersetzen.<br />

Danach ist Cinder bereits fertig – der<br />

Befehl »cinder list« sollte eine leere Liste<br />

ausgeben, es sind ja noch keine Volumes<br />

konfiguriert.<br />

Die Computing-Komponente<br />

Nova<br />

Abbildung 5: Nach der Installation der Compute-Komponenten fungiert Bob als Compute-Knoten.<br />

Bis zu dieser Stelle ist bereits eine bunte<br />

Mischung an Open-Stack-Diensten bereit<br />

für ihren Einsatz – der wichtigste<br />

von allen fehlt aber immer noch: Nova.<br />

Das ist die Computing-Komponente, also<br />

eben jene, die virtuelle Maschinen auf<br />

den Hosts der Wolke startet und sie später<br />

auch wieder stoppt. Um Nova auf<br />

Touren zu bringen, sind in diesem Szenario<br />

Dienste sowohl auf dem Host Alice<br />

als auch auf Bob zu konfigurieren. Der<br />

Host Charlie, der ja in diesem Beispiel<br />

als Netzwerk-Knoten fungiert, braucht<br />

dagegen keine eigene Nova-Komponente<br />

(Abbildung 5).<br />

Zuerst die gute Nachricht: Die Nova-Konfiguration<br />

in »/etc/nova/nova.conf« kann<br />

auf den Hosts Alice und Bob identisch<br />

sein, Gleiches gilt für die API-Paste-Datei<br />

von Nova, die »/etc/nova/api‐paste.ini«<br />

heißt. Bob als Compute-Knoten braucht<br />

im Anschluss nur noch einige kleinere<br />

Anpassungen der Qemu-Konfiguration<br />

von Libvirt, um virtuelle Maschinen starten<br />

zu können. Aber langsam und der<br />

Reihe nach.<br />

Den Anfang macht Alice. In »/etc/nova/<br />

api‐paste.ini« findet sich die Keystone-<br />

Konfiguration des Dienstes in dem Eintrag<br />

»[filter:authtoken]«. Die einzutragenden<br />

Werte sind äquivalent zu denen der<br />

»api‐paste.ini«-Files der anderen Dienste,<br />

als Wert für »admin_user« dient hier aber<br />

»nova«.<br />

Zudem finden sich in der Datei auch noch<br />

diverse Einträge, die den Begriff »volume«<br />

in ihrem Namen haben, zum Beispiel<br />

»[composite:osapi_volume]«. Sämtliche<br />

Einträge dieser Art, in deren Namen also<br />

das Wort »volume« vorkommt, muss<br />

der Admin aus der Konfiguration entfernen,<br />

weil sich unter Umständen sonst<br />

»nova‐api« und »cinder‐api« gegenseitig<br />

in die Haare geraten. Nach dieser Änderung<br />

ist »api‐paste.ini« an die gleiche<br />

Stelle auf Bob zu kopieren.<br />

nova.conf für Open Stack<br />

Compute<br />

Dann folgt die eigentliche Konfigurationsdatei<br />

der Compute-Komponente,<br />

die »/etc/nova/nova.conf« heißt. Eine<br />

generische Version der Datei stellt der<br />

Autor dieses Artikels unter [4] bereit.<br />

Eine Übersicht der möglichen Parameter<br />

für »nova.conf« ist auf der Open Stack-<br />

Website unter [5] verfügbar. Die Beispielkonfiguration<br />

lässt sich so in nahezu<br />

jeder Open-Stack-Umgebung verwenden,<br />

allerdings sind möglicherweise die in ihr<br />

benutzten IP-Adressen zu ändern. Sowohl<br />

Alice als auch Bob sollten die Datei<br />

als »/etc/nova/nova.conf« haben – ist sie<br />

an Ort und Stelle, folgt das Anlegen der<br />

Nova-Tabellen in MySQL auf Alice:<br />

nova‐manage db sync<br />

Die Konfiguration von Nova ist damit<br />

abgeschlossen, auf Bob sind allerdings<br />

noch Veränderungen an der Qemu-Konfiguration<br />

von Libvirt und an der Libvirt-<br />

Konfiugration selbst nötig. Die Qemu-<br />

Konfiguration von Libvirt liegt in »/etc/<br />

libvirt/qemu.conf« – am Ende des Files<br />

sind noch folgende Zeilen anzuhängen:<br />

cgroup_device_acl = [<br />

"/dev/null", "/dev/full", "/dev/zero",<br />

"/dev/random", "/dev/urandom",<br />

"/dev/ptmx", "/dev/kvm", "/dev/kqemu",<br />

"/dev/rtc", "/dev/hpet","/dev/net/tun",<br />

]<br />

Auch die Libvirt-Konfiguration selbst<br />

braucht eine Änderung – an das Ende<br />

von »/etc/libvirt/libvirtd.conf« gehören<br />

die folgenden Zeilen:<br />

listen_tls = 0<br />

listen_tcp = 1<br />

auth_tcp = "none"<br />

Diese Einträge sorgen dafür, dass Libvirt<br />

einen TCP/​IP-Socket öffnet, um später<br />

Funktionen wie Live-Migration zu unterstützen.<br />

Damit das auch wirklich funktioniert,<br />

ist in »/etc/default/libvirt‐bin«<br />

die Zeile »libvirtd_opts="‐d"« durch »libvirtd_opts="‐d<br />

‐l"« zu setzen.<br />

Anschließend wird ein Neustart aller betroffenen<br />

Komponenten fällig, auf Alice<br />

geht das mit »for i in nova‐api‐metadata<br />

nova‐api‐os‐compute nova‐api‐ec2<br />

nova‐objectstore nova‐scheduler<br />

nova‐novncproxy nova‐consoleauth<br />

nova‐cert; do restart "$i"; done«. Auf<br />

Bob sorgt der Befehl »for in in libvirt‐bin<br />

nova‐compute; do restart $i; done« für<br />

den Neustart der wichtigen Komponenten.<br />

Ein »nova‐manage service list « sollte<br />

Abbildung 6: Ist das Dashboard installiert, erlaubt es das bequeme Starten und Stoppen neuer virtueller<br />

Maschinen über die grafische Oberfläche.<br />

78 Ausgabe 01-2013 Admin www.admin-magazin.de


Open Stack<br />

Virtualisierung<br />

danach die Nova-Dienste auf Alice und<br />

Bob auflisten und dabei für jeden Dienst<br />

als Status „:-)“ eingetragen haben.<br />

Im Grunde ist die Wolke damit bereits<br />

einsatzbereit, über die Konsole ließen<br />

sich bereits virtuelle Maschinen starten.<br />

Was noch fehlt, ist das Open Stack-Dashboard<br />

(Abbilung 6), das als Service-Servicing-Portal<br />

Endbenutzern das Anlegen<br />

virtueller Maschinen ermöglicht.<br />

Das Open-Stack-Dashboard<br />

Dessen Konfiguration ist nicht weiter<br />

schwierig: Nach der Installation der benötigten<br />

Pakete auf Alice ist die Datei<br />

»/etc/openstack‐dashboard/local_settings.py«<br />

für diese Aufgabe von Interesse.<br />

Am Ende dieser Datei fehlen ein paar<br />

Einträge für die korrekte Funktion des<br />

Dashboards:<br />

OPENSTACK_HOST = '192.168.122.111'<br />

QUANTUM_ENABLED = True<br />

SWIFT_ENABLED = True<br />

Danach sorgt ein Neustart des Apache2-Webservers<br />

mittels »restart apache2«<br />

dafür, dass das Dashboard seine<br />

Konfiguration neulädt. Direkt im Anschluss<br />

steht das Webinterface unter<br />

»http://192.168.122.111/horizon« zur<br />

Verfügung (Abbildung 7) – der Login<br />

geschieht mit dem Benutzernamen<br />

»admin«, das Passwort ist »geheim«.<br />

Die Sache mit dem<br />

Metadata-Server<br />

Virtuelle Maschinen, die aus speziellen<br />

Images stammen – nämlich aus solchen<br />

Images, die offiziell für Cloud-Umge-<br />

bungen vorbereitet sind – zeichnen sich<br />

durch eine Besonderheit aus: Sie versuchen<br />

nämlich während des Bootvorgangs<br />

per HTTP-Request Informationen über<br />

sich selbst von einem Cloud-Metadatenserver<br />

zu erhalten. Diese Technik stammt<br />

ursprünglich aus Amazons EC2-Umgebung<br />

– sie stellt sicher, dass eine virtuelle<br />

Maschine ihren Hostname kennt und<br />

diverse Parameter beim Systemstart zur<br />

Verfügung hat, beispielsweise die Konfiguration<br />

hinsichtlich des zu startenden<br />

SSH-Servers.<br />

Die Ubuntu-UEC-Images sind ein gutes<br />

Beispiel für den Einsatz dieser Funktion:<br />

Eine Maschine, die aus einem Ubuntu-<br />

Image für UEC-Umgebungen stammt,<br />

führt eben jenes »cloud‐init« genannt<br />

Tool beim Starten aus. Das Schema ist<br />

immer das gleiche: Ein HTTP-Request auf<br />

die URL »http://169.254.169.254:80« soll<br />

die entsprechenden Details beim Cloud-<br />

Controller abfragen. Damit diese Technik<br />

funktioniert, ist einerseits eine entsprechende<br />

IPTables-Regel notwendig, die<br />

jene IP-Adresse auf den Computing-Knoten<br />

auf den „richtigen“ Cloud-Controller<br />

per DNAT-Regel weiterleitet.<br />

Der „richtige“ Controller ist in diesem<br />

Beispiel »nova‐api‐metadata«, der auf<br />

Alice am Port 8775 lauscht. Die gute<br />

Nachricht ist: Die DNAT-Regel setzt der<br />

L2-Agent auf den Compute-Knoten automatisch.<br />

Die schlechte: Damit auch der<br />

Rückkanal vom Cloud-Controller hin zu<br />

den VMs funktioniert, ist auf dem Cloud-<br />

Controller – also Alice – eine entsprechende<br />

Route zu setzen. Diese enthält als<br />

Netzwerk das private VM-Netzwerk (im<br />

Beispiel 10.5.5.0/​24) und als Gateway die<br />

IP-Adresse, die auf dem Netzwerk-Host<br />

als Gateway-IP für virtuelle Maschinen<br />

dient. Je nach Konfiguration unterscheidet<br />

sie sich. Um sie herauszufinden, sind<br />

zwei Arbeitsschritte nötig:<br />

Per »quantum router‐list« ist zunächst die<br />

ID des Routers zu finden, die das externe<br />

Netzwerk nutzt. Danach fördert der Befehl<br />

»quantum port‐list ‐‐ ‐‐device_id ID<br />

‐‐device_owner network:router_gateway<br />

« das Gateway zu Tage, im Beispiel also<br />

192.168.144.100. Die korrekte Route auf<br />

Alice setzt der Admin dann per »ip route<br />

add 10.5.5.0/24 via 192.168.144.100«.<br />

Danach klappt der Zugriff auf den Metadatenserver.<br />

Dieser doch etwas umständliche<br />

Prozess wird wohl in einer<br />

der kommenden Open Stack-Versionen<br />

durch eine neue und bequemere Prozedur<br />

ersetzt werden.<br />

Perspektiven<br />

Die hier vorgestellte Open Stack-Installation<br />

ist das grundlegende Setup, das<br />

aus drei Knoten eine Wolke konstruiert.<br />

Themen wie die Hochverfügbarkeit einzelner<br />

Dienste oder das Zuweisen von<br />

„öffentlichen“ IP-Adressen an die VMs<br />

behandelt dann der dritte Teil der Serie<br />

im kommenden Admin-<strong>Magazin</strong> 02/​2013<br />

ausführlich. (jcb)<br />

n<br />

Infos<br />

[1] Keystone-Data-Skript: [http:// people.​<br />

madkiss. org/ ~madkiss/ openstack/​<br />

keystone_data. sh]<br />

[2] Keystone-Endpoints-Skript: [http://​<br />

people. madkiss. org/ ~madkiss/ openstack/​<br />

endpoints. sh]<br />

[3] Quantum-Networking-Skript: [http://​<br />

people. madkiss. org/ ~madkiss/ openstack/​<br />

quantum‐networking. sh]<br />

[4] Beispielhafte nova.conf [http:// people.​<br />

madkiss. org/ ~madkiss/ openstack/ nova.​<br />

conf]<br />

[5] nova.conf-Referenz: [http:// docs.​<br />

openstack. org/ essex/ openstack‐compute/​<br />

admin/ content/ compute‐options‐reference.​<br />

html]<br />

Abbildung 7: Das Dashboard zeigt zu gestarteten VMs diverse Informationen wie die zugewiesene IP-Adresse<br />

und auch die Hardware-Konfiguration an.<br />

Der Autor<br />

Martin Gerhard Loschwitz arbeitet als Principal<br />

Consultant bei hastexo. Er beschäftigt sich dort<br />

intensiv mit Hochverfügbarkeitslösungen und<br />

pflegt in seiner Freizeit den <strong>Linux</strong>-Cluster-Stack<br />

für Debian GNU/​<strong>Linux</strong>.<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

79


Test<br />

Exchange 2013<br />

© Wojciech Kaczkowski, 123RF<br />

Änderungen in Exchange Server 2013<br />

Neues Gewand<br />

Mit Exchange Server 2013 [1] hat Microsoft die neueste Version seiner<br />

Groupware-Lösung fertiggestellt. Dieser Artikel stellt die Neuerungen des<br />

Servers vor und berichtet, welche Funktionen weggefallen sind. Thomas Joos<br />

Schon während der Installation von Exchange<br />

Server 2013 fällt auf, dass der<br />

neue Server weitaus weniger Optionen<br />

anbietet. Die Serverrollen Hub-Transport<br />

und Unified-Messaging hat Microsoft gestrichen.<br />

Die Funktion der beiden Rollen<br />

übernehmen die Postfachserver und<br />

Clientzugriffserver in der neuen Version.<br />

Für den E-Mail-Transport in Exchange<br />

Server 2013 sind die drei Dienste Front-<br />

End Transport Service (FET), Hub Transport<br />

Service (HT) und Mailbox Transport<br />

Service (MT) zuständig, die jetzt zur<br />

Postfachserver-Rolle gehören.<br />

Die Transportdienste sind auch für die<br />

Umsetzung der verbesserten Transportregeln<br />

zuständig (Abbildung 1). Letztere<br />

tragen die Bezeichnung Data Loss Prevention<br />

(DLP) und sollen verhindern,<br />

dass sensible Daten noch das Firmennetz<br />

verlassen. Zusätzlich ist in Exchange Server<br />

2013 ein Virenscanner integriert. Die<br />

Server scannen alle ein- und ausgehenden<br />

E-Mails nach Viren. Unternehmen,<br />

die auf einen Virenscanner von Drittherstellern<br />

setzen, können diese Funktion<br />

natürlich deaktivieren.<br />

Hot gefixt<br />

Exchange Server 2013 lässt zwar generell<br />

in bestehende Organisationen mit<br />

Exchange Server 2007/​2010 installieren.<br />

Dazu ist aber das SP3 für Exchange Server<br />

2010 notwendig, sowie ein Hotfix für<br />

Exchange Server 2007. Ältere Versionen<br />

wie Exchange Server 2000/​2003 lassen<br />

sich nicht mit Exchange Server 2012 betreiben.<br />

Öffentliche Ordner-Datenbanken gibt es<br />

in Exchange Server 2013 in der bekannten<br />

Form nicht mehr, aber öffentliche<br />

Ordner sind natürlich weiterhin verfügbar.<br />

Gemeinsame Inhalte werden jetzt<br />

über spezielle Postfächer zur Verfügung<br />

gestellt, die wiederum zur Ausfallsicherheit<br />

mit Datenbankverfügbarkeits-Gruppen<br />

(DAG) abgesichert werden. Diese<br />

sind auch in der neuen Version noch<br />

verfügbar. Öffentliche Ordner sind daher<br />

in Exchange Server 2013 als Postfach innerhalb<br />

der Postfachdatenbank abgebildet.<br />

Um öffentliche Ordner zu nutzen,<br />

erstellen Sie zunächst ein Postfach für<br />

öffentliche Ordner und danach die öffentlichen<br />

Ordner in diesem Postfach.<br />

Exchange Administrative<br />

Center<br />

Die Verwaltung der Exchange-Infrastruktur<br />

findet vermehrt im erweiterten und<br />

webbasierten Exchange Administration<br />

Center (EAC) statt. Es gibt auch weiterhin<br />

die Exchange Verwaltungsshell, die jetzt<br />

auf der Powershell 3.0 basiert. Die Exchange-Verwaltungskonsole<br />

gibt es in Exchange<br />

Server 2013 nicht mehr. Die EAC<br />

ist nach der Installation über »https://<br />

Servername/ecp« erreichbar (Abbildung<br />

2). Sie haben auch die Möglichkeit,<br />

Office 365 an diese Konsole anzubinden.<br />

Die Kommunikation von Outlook und<br />

Exchange findet in den neuen Versionen<br />

über HTTP(S) statt, MAPI findet keine<br />

Verwendung mehr. Aus diesem Grund<br />

lassen sich nur noch Outlook 2007/​2010<br />

82 Ausgabe 01-2013 Admin www.admin-magazin.de


Exchange 2013<br />

Test<br />

und 2013 an Exchange Server 2013 anbinden.<br />

Ältere Versionen, zum Beispiel<br />

Outlook 2000/​2003, werden nicht mehr<br />

unterstützt.<br />

Die Datenbankverfügbarkeitsgruppen<br />

(DAG) gibt es bereits in Exchange Server<br />

2010. Diese haben als Betriebssystem<br />

Windows Server 2008/​2008 R2 <strong>Enterprise</strong>/​Datacenter<br />

als Betriebssystem vorausgesetzt.<br />

Da in Windows Server 2012<br />

die Editionen Standard/​Datacenter identisch<br />

sind, und es keine <strong>Enterprise</strong>-Edition<br />

mehr gibt, lassen sich DAG auch mit<br />

Windows Server 2012 Standard nutzen.<br />

DAG sind auch Bestandteil der Standard-<br />

Edition von Exchange Server 2013.<br />

Das Verschieben von Postfächern zu Exchange<br />

Server 2013 hat Microsoft ebenfalls<br />

verbessert. Es lassen sich mehr Postfächer<br />

und E-Mail-Benachrichtigungen<br />

auf einmal verschieben. Bei Problemen<br />

kann der Assistent wiederholen, und<br />

Postfächer können priorisiert werden.<br />

Außerdem besteht die Möglichkeit, den<br />

Zugriff nach dem Verschieben erst nach<br />

einer Überprüfung freizuschalten.<br />

Exchange Server 2013<br />

installieren<br />

Um Exchange Server 2013 zu installieren,<br />

ist auf dem Server die Erweiterung<br />

Microsoft Unified Communications Managed<br />

API 4.0, Core Runtime 64-Bit [2]<br />

notwendig, ebenso wie Microsoft Office<br />

2010 Filter Packs – Version 2.0 [3]<br />

und Microsoft Office 2010 Filter Packs<br />

– Version 2.0 – Service Pack 1 [4]. Diese<br />

drei Voraussetzungen müssen Sie manuell<br />

installieren, alles andere kann der<br />

Exchange-Installationsassistent automatisch<br />

laden. Die neue Version ist nur als<br />

64-Bit-System verfübar. Die Domäne darf<br />

zwar auf Domänencontroller basieren,<br />

die mit 32-Bit-Versionen von Windows<br />

Server 2003 laufen, Microsoft empfiehlt<br />

aber auch, die Domänencontroller mit<br />

einem 64-Bit-System zu installieren.<br />

Microsoft empfiehlt für Postfachserver<br />

mindestens 8 GByte freien Arbeitsspeicher,<br />

für Clientzugriff-Server mindestens<br />

4 GByte. Sie können Exchange nicht auf<br />

Core-Servern installieren, es ist eine vollständige<br />

Installation von Windows Server<br />

2008 R2 oder am besten Windows Server<br />

2012 notwendig. Die Verwaltungstools<br />

von Exchange Server 2013 können Sie<br />

Abbildung 1: Mit neuen Transportregeln lässt sich Exchange Server 2013 besser absichern.<br />

auch auf Arbeitsstationen mit Windows<br />

7/​8 installieren.<br />

Erweitertes Schema<br />

Vor der Installation von Exchange Server<br />

2013 bietet es sich an, über den Server-<br />

Manager die Remoteserververwaltungs-<br />

Tools für Active Directory auf dem Exchange-Server<br />

zu installieren, das Snap-In<br />

Active Directory-Schema zu starten und<br />

über das Kontextmenü eine Verbindung<br />

zum Schemamaster aufzubauen. Wie<br />

jede neue Exchange-Version erweitert<br />

auch Exchange Server 2013 das Schema.<br />

Bei einer Neuinstallation von Exchange<br />

Server 2013 geben Sie den Befehl »setup<br />

Abbildung 2: Die Verwaltung von Exchange Server 2013 findet webbasiert statt.<br />

/prepareAd /IAcceptExchangeServer-<br />

LicenseTerms /OrganizationName: Organisationsname«<br />

ein, damit der Assistent<br />

das Active Directory-Schema erweitert.<br />

Neben Schemaerweiterungen und Rechten,<br />

legen diese Befehle eine neue OU mit<br />

den entsprechenden Sicherheitsgruppen<br />

an. Mit »setup /PrepareAllDomains« bereiten<br />

Sie alle Domänen der Gesamtstruktur<br />

für Exchange vor.<br />

Die Schemaerweiterungen sollten Sie<br />

am besten direkt auf dem Schemamaster<br />

durchführen. Welcher das in der Gesamtstuktur<br />

ist, lässt sich über »dsquery<br />

server ‐hasfsmo schema« erfahren. In<br />

einigen Fällen erscheint ein Schema-Erweiterungsfehler<br />

mit der Nummer 8224.<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

83


Test<br />

Exchange 2013<br />

Abbildung 3: Den E-Mail-Fluss verwalten Sie in der Exchange-Verwaltungskonsole an der zentralen Stelle<br />

»Nachrichtenfluss«.<br />

Dieser ist vor allem auf virtuellen Servern<br />

häufig. Das Problem liegt an TCP Chimney<br />

Offload and Receive Side Scaling, da<br />

hier die Funktionen von der CPU, nicht<br />

der Netzwerkkarte berechnet werden.<br />

Das Problem lässt sich lösen, indem man<br />

die beiden Funktionen deaktiviert. Das<br />

funktioniert in der Befehlszeile mit:<br />

netsh int tcp set global rss=disabled<br />

netsh int tcp set global chimney=disabled<br />

Der Befehl »netsh int tcp show global«<br />

zeigt den Status an.<br />

E-Mail-Versand und<br />

‐Empfang konfigurieren<br />

Der Empfang- und Versand von E-Mails<br />

setzt sich aus verschiedenen Bereichen<br />

zusammen. Nach der Installation kann<br />

ein Exchange-Server zunächst noch<br />

keine E-Mails empfangen und senden.<br />

Sie müssen dazu erst einige Einstellungen<br />

in der Exchange-Verwaltungskonsole<br />

vornehmen. Hier fällt auf, dass Microsoft<br />

die verschachtelte Struktur der alten Exchange-Verwaltungskonsole<br />

überarbeitet<br />

und die notwendigen Befehle in einen<br />

gemeinsamen Bereich integriert hat:<br />

»E‐Mail‐Empfang – Exchange« nimmt<br />

zunächst nur E-Mails für Domänen an,<br />

die im Menü »Nachrichtenfluss« bei »Akzeptierte<br />

Domänen« hinterlegt sind (Abbildung<br />

3). Damit ein Exchange-Server<br />

E-Mails entgegennehmen kann, muss ein<br />

Empfangsconnector erstellt und so konfiguriert<br />

sein, dass er E-Mails vom sendenden<br />

Server akzeptiert. Empfangsconnectoren<br />

finden Sie über »Nachrichtenfluss<br />

| Empfangsconnectors«. Standardmäßig<br />

legt Exchange bereits Connectoren an.<br />

Damit Exchange-Server E-Mails intern<br />

zustellen können, muss die E-Mail-<br />

Adresse in der E-Mail in der Organisation<br />

vorhanden sein. Welche E-Mail-<br />

Adressen der Server an die Anwender<br />

verteilt, sehen Sie auf der Registerkarte<br />

»E‐Mail‐Adressenrichtlinie« im Bereich<br />

»Nachrichtenfluss«. Postfächer für Anwender<br />

erstellen Sie über »Empfänger |<br />

Postfächer«. An dieser Stelle können Sie<br />

auch gleich neue Benutzerkonten im Active<br />

Directory anlegen. Damit Exchange<br />

E-Mails nach extern versenden kann,<br />

muss mindestens ein Sendeconnector<br />

erstellt sein. Diese Konfiguration finden<br />

Sie über »Nachrichtenfluss« auf der Registerkarte<br />

»Sendeconnectors«. Nach der<br />

Installation ist noch kein solcher Sendeconnector<br />

vorhanden.<br />

Hilfe bei der SMTP-<br />

Diagnose<br />

Ein wichtiges Diagnoseprogramm für den<br />

E-Mail-Fluss ist Smtpdiag, das Sie von<br />

der Microsoft-Internetseite [5] kostenlos<br />

he runterladen können. Mit diesem Tool<br />

können Sie Probleme beim SMTP-Versand<br />

in der Eingabeaufforderung diagnostizieren<br />

und so die Sendeconnectors des Servers<br />

testen. Die Installationsdateien des<br />

Tools enthalten ein ausführliches Word-<br />

Dokument, das die Verwendung erklärt.<br />

Das Tool überprüft, ob eine E-Mail per<br />

SMTP zugestellt werden kann. Geben Sie<br />

den Befehl »smtpdiag Absenderadresse<br />

Empfängeradresse« ein, zum Beispiel<br />

»smtpdiag joost@contoso.com thomas.<br />

joos@web.de«. Das Tool überprüft dann,<br />

ob der Server die E-Mail durch die DNS-<br />

Auflösung zustellen könnte, und gibt<br />

Probleme sehr detailliert aus. Sie sehen<br />

bei der Ausgabe auch, wenn Server Verbindungen<br />

nicht akzeptieren und können<br />

gezielt bei den entsprechenden Servern<br />

zur Fehlerbehebung ansetzen.<br />

Über die Microsoft-Seite [6] können Sie<br />

die Verbindung Ihrer Exchange-Organisation<br />

mit dem Internet testen. Das Tool<br />

dient zum Testen der Verbindung von<br />

Outlook, Smartphones oder Office 365.<br />

Haben Sie den gewünschten Test ausgewählt,<br />

geben Sie noch die Daten des<br />

Exchange-Servers ein, den Sie testen wollen,<br />

und die Benutzerdaten, mit denen<br />

Sie die Verbindung aufbauen. Anschließend<br />

testet das Tool die Verbindung und<br />

zeigt an, ob die Konfiguration funktioniert<br />

(Abbildung 4).<br />

Exchange Server 2013 und<br />

Sharepoint Server 2013<br />

Unternehmen, die Sharepoint 2013 einsetzen,<br />

können über Sharepoint besser<br />

Postfächer und öffentliche Ordner in Exchange<br />

Server 2013 durchsuchen. Dazu<br />

verwendet der neue Exchange-Server<br />

eine vollkommen neue Suchschnittstelle.<br />

E-Mails die Anwender in Sharepoint 2013<br />

auf Servern mit Exchange Server 2013<br />

finden, lassen sich sogar in PST-Dateien<br />

exportieren. Auch an Fast Search Server<br />

lässt sich Exchange anbinden. Die neue<br />

Exchange-Version lässt sich auch an Domänen<br />

anbinden, die auf Windows Server<br />

2003 basieren, es ist nicht unbedingt<br />

Windows Server 2012 notwendig. Sie können<br />

Exchange Server 2013 zwar auf Domänencontrollern<br />

installieren, Microsoft<br />

empfiehlt das allerdings nicht. Wenn Sie<br />

Exchange installiert haben, können Sie<br />

allerdings den Server weder zu einem<br />

Domänencontroller heraufstufen, noch<br />

einen Domänencontroller herabstufen,<br />

nachdem Exchange installiert ist.<br />

Microsoft gibt Exchange Server 2013 auch<br />

für die Virtualisierung [7] frei. Optimal<br />

dazu geeignet ist Hyper-V in Windows<br />

Server 2012, aber auch Windows Ser-<br />

84 Ausgabe 01-2013 Admin www.admin-magazin.de


Exchange 2013<br />

Test<br />

ver 2008 R2 wird unterstützt.<br />

Outlook 2003 und verknüpfte<br />

Connectoren sind in Exchange<br />

Server 2013 nicht mehr verfügbar.<br />

Diese lassen sich daher<br />

nicht mehr nutzen. Bei<br />

einer solchen Verknüpfung<br />

sendet Exchange alle E-Mails,<br />

die über einen bestimmten<br />

Empfangsconnector eingehen,<br />

unabhängig von anderen<br />

Regeln über den verknüpften<br />

Sendeconnector. Eine solche<br />

Verknüpfung hat immer Vorrang.<br />

Die Verknüpfung erfolgt<br />

über die Exchange-Verwaltungsshell.<br />

Für verknüpfte<br />

Connectoren werden andere<br />

Connectoren und Regeln immer<br />

deaktiviert. Vor dem Einsatz von<br />

Exchange Server 2012 müssen Sie diese<br />

Connectoren daher auflösen.<br />

Auch die verwalteten Ordner sind nicht<br />

mehr verfügbar. Deren Funktionen sind<br />

jetzt in den Retention Policies integriert.<br />

Aktivieren Sie die Anti-Spam-Filter auf<br />

Postfach-Servern, lassen sich diese nur<br />

noch in der Exchange-Verwaltungsshell<br />

verwalten. Die Hub-Transport- und Unfied-Messaging-Serverrollen<br />

sind nicht<br />

mehr verfügbar. Die Funktion dieser<br />

Server übernehmen Postfachserver und<br />

Clientzugriffserver. Die MMC-basierte<br />

Management-Konsole gehört der Vergangenheit<br />

an. Die Verwaltung findet entweder<br />

über die Exchange-Verwaltungsshell<br />

oder die webbasierte Verwaltungskonsole<br />

statt.<br />

Die Verwaltung der Datenbanken, der<br />

angebundenen Smartphones/​Tablets<br />

und der Grenzwerte für Postfächer hat<br />

Microsoft enorm vereinfacht. Es gibt we-<br />

Abbildung 4: Microsoft unterstützt bei der Diagnose von Verbindungen.<br />

niger Menüs und keine verschachtelten<br />

Strukturen mehr.<br />

Die neue Exchange-Version unterstützt<br />

keinen Zugriff mehr auf freigegebene<br />

Postfächer anderer Benutzer, die Moderation<br />

von Verteilerlisten, S/​MIME und Anpassungen<br />

des Lesebereichs in Outlook<br />

Web App. Außerdem hat Microsoft viele<br />

Tools wie den Best Practices Analyzer<br />

entfernt. Die Tools unterstützen nur noch<br />

Exchange Server 2010. Neben diesen Tool<br />

hat Microsoft auch den Log-Viewer und<br />

andere Anwendungen aus der Toolbox<br />

entfernt.<br />

Outlook Web App<br />

Für Anwender hat Microsoft die Oberfläche<br />

von Outlook Web App erneuert.<br />

Diese ist an Outlook 2013 orientiert. Einmal<br />

synchronisiert, können Anwender<br />

auch offline mit Outlook Web App 2013<br />

arbeiten. Neu ist auch die Integration von<br />

Abbildung 5: Die Outlook Web App hat Microsoft an seine aktuelle Design-Strategie angepasst.<br />

Apps für Outlook Web App.<br />

So lässt sich die Oberfläche<br />

mit neuen Funktionen erweitern.<br />

OWA 2013 funktioniert<br />

am besten mit Firefox ab Version<br />

14, Chrome ab Version<br />

18 und Internet Explorer ab<br />

Version 10. Die neue Oberfläche<br />

hat Microsoft auch für<br />

den Touch-Betrieb optimiert,<br />

sodass auch Anwender mit<br />

Tablets und Clients damit<br />

arbeiten können (Abbildung<br />

5). Auch die Ansicht des Kalenders<br />

und der Kontakte hat<br />

Microsoft verbessert.<br />

Exchange-Zertifikat<br />

ändern<br />

Exchange Server 2013 setzt wie die Vorgänger<br />

auf SSL-gesicherte Verbindungen<br />

und Verschlüsselung. Aus diesem Grund<br />

benötigt jeder Exchange-Server ein eigenes<br />

Serverzertifikat. Während der Installation<br />

stellt sich jeder Exchange-Server<br />

ein selbst signiertes Zertifikat aus. Das<br />

Problem dabei ist, dass kein Client dieser<br />

Zertifizierungsstelle vertraut, was in Zertifikatsfehlermeldungen<br />

resultiert. Eine<br />

Lösung für das Problem ist entweder auf<br />

eine interne Zertifizierungsstelle auf Basis<br />

der Active Directory-Zertifikatsdienste zu<br />

setzen, oder ein Zertifikat eines Drittherstellers.<br />

Internen Zertifizierungsstellen<br />

vertrauen Clients, die Mitglied der gleichen<br />

Active Directory-Gesamtstruktur<br />

sind, automatisch. Bei Zertifizierungsstellen<br />

von Drittherstellern müssen Sie<br />

das Zertifikat der Zertifizierungsstelle<br />

manuell in die vertrauenswürdigen<br />

Stammzertifizierungsstellen integrieren,<br />

sofern diese noch nicht bekannt ist.<br />

In Exchange Server 2013 haben Sie die<br />

Möglichkeit, Serverzertifikate direkt in<br />

der webbasierten Exchange-Verwaltungskonsole<br />

zu verwalten. Um dem Server<br />

ein Zertifikat zuzuweisen, klicken Sie in<br />

der Exchange-Verwaltungskonsole auf<br />

Server und dann auf »Zertifikate«. Jeder<br />

Exchange-Server in der Organisation erhält<br />

sein eigenes Zertifikat. Um ein neues<br />

Zertifikat zu installieren, klicken Sie zunächst<br />

auf das Pluszeichen. Der Assistent,<br />

erstellt eine Zertifikatanforderung<br />

die Sie dann entweder über die Active-<br />

Directory-Zertifikatdienste anfordern<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

85


Test<br />

Exchange 2013<br />

oder über das Webfrontend<br />

des Drittherstellers.<br />

Anbinden<br />

den Zertifikaten dieser Zertifizierungsstelle<br />

vertraut.<br />

Fazit<br />

Im ersten Schritt des Assistenten<br />

geben Sie den Namen<br />

ein, mit dem das Zertifikat in<br />

der Konsole angezeigt werden<br />

soll. Auf der nächsten Seite<br />

legen Sie fest, dass Sie auch<br />

untergeordnete Domänen mit<br />

dem gleichen Zertifikat anbinden<br />

wollen. Anschließend<br />

wählen Sie den Server aus,<br />

auf dem Sie die Anforderung<br />

des Zertifikats speichern wollen<br />

(Abbildung 6).<br />

Im Assistenten geben Sie noch den Namen<br />

der Domäne ein, über die von extern<br />

oder intern auf die Server zugegriffen<br />

werden soll. Ihnen zeigt der Assistent<br />

an, welche Domänen im Zertifikat für<br />

den Zugriff hinterlegt sind. Sehr wichtig<br />

an dieser Stelle ist, dass Sie den Namen<br />

mit dem der Server aus dem Internet<br />

erreichbar ist, als allgemeiner Name hinterlegen.<br />

Ansonsten erhalten Clients, die aus dem<br />

Internet auf den Server zugreifen, eine<br />

Fehlermeldung, da der Name des Zertifikats<br />

nicht mit der URL für den Zugriff<br />

übereinstimmt. Dieser Bereich ist<br />

vor allem für die Verwendung von Outlook<br />

Anywhere sehr wichtig. Wenn ein<br />

Zertifikatsfehler in Outlook Web App erscheint,<br />

können Anwender diesen ohne<br />

große Auswirkungen bestätigen, Outlook<br />

verweigert allerdings die Verbindung bei<br />

solchen Fehlern. Auf der nächsten Seite<br />

geben Sie noch Daten zu dem Zertifikat<br />

und Ihrer Organisation an und speichern<br />

anschließend die Anforderung als Text-<br />

Datei. Mit dieser Datei fordern Sie das<br />

Zertifikat anschließend an.<br />

Webkonfiguration<br />

Im nächsten Schritt öffnen Sie das<br />

Webfrontend des Zertifikateausstellers.<br />

Arbeiten Sie mit den Active Directory-<br />

Zertifikatdiensten, können Sie diese über<br />

die Adresse »https://Servername/certsrv«<br />

erreichen. Als Nächstes wählen Sie die<br />

Option »Reichen Sie eine Zertifikatanforderung<br />

ein, die eine Base64‐codierte<br />

CMD‐ oder PKCS10‐Datei verwendet,<br />

Abbildung 6: Über SSL-Zertifkate sichern Sie Exchange vor Gefahren ab.<br />

oder eine Erneuerungsanforderung, die<br />

eine Base64‐codierte PKCS7‐Datei verwendet«.<br />

Im nächsten Fenster, geben Sie im Feld<br />

»Gespeicherte Anforderung« den kompletten<br />

Text der »*.req«-Datei ein, die<br />

Sie im Vorfeld erstellt haben. Sie können<br />

dazu die Datei im Editor öffnen und den<br />

Inhalt in die Zwischenablage kopieren.<br />

Sie müssen den kompletten Text der Datei<br />

dazu verwenden. Klicken Sie dazu in die<br />

Datei, und markieren Sie den kompletten<br />

Text mit [Strg]+[A]. Mit [Strg]+[C]<br />

kopieren Sie den Text in die Zwischenablage,<br />

mit [Strg]+[V] fügen Sie ihn in das<br />

Feld ein. Wählen Sie als Zertifikatvorlage<br />

noch »Webserver«, und klicken Sie dann<br />

auf »Einsenden«.<br />

Anschließend laden Sie das Zertifikat als<br />

»*.cer«-Datei herunter und speichern sie<br />

auf dem Server. Danach wechseln Sie<br />

wieder in die Exchange-Verwaltungskonsole<br />

und klicken auf »Server | Zertifikate«.<br />

Klicken Sie auf das Zertifikat in der Konsole<br />

und dann auf »Abschließen«. Geben<br />

Sie anschließend den Pfad der »*.cer«-<br />

Datei ein, und schließen Sie den Vorgang<br />

ab. Das Zertifikat sollte jetzt als »Gültig«<br />

angezeigt werden. Dazu muss es der Zertifizierungsstelle,<br />

von der Sie das Zertifikat<br />

stammt, bei den vertrauenswürdigen<br />

Stammzertifizierungsstellen auf dem Exchange-Server<br />

hinterlegt sein. Arbeiten<br />

Sie mit den Active-Directory-Zertifikatsdiensten,<br />

installiert der Exchange-Server<br />

das Zertifikat der Vertrauensstellung automatisch<br />

über die Gruppenrichtlinien.<br />

Das Zertifikat der Stammzertifizierungsstelle<br />

muss auf dem Exchange-Server hinterlegt<br />

sein, damit der Exchange-Server<br />

Exchange Server 2013 enthält<br />

zahlreiche Neuerungen, die<br />

nicht unbedingt eine Aktualisierung<br />

von Exchange Server<br />

2007/​2010 rechtfertigen. Lange<br />

erwartete Änderungen wie die<br />

Integration der Datenbanken<br />

in SQL-Server sucht man vergebens.<br />

Die Verwaltung ist<br />

etwas einfacher, allerdings ist<br />

die Weboberfläche nicht ganz<br />

so bequem wie die bewährte<br />

Exchange-Verwaltungskonsole. Die Integration<br />

eines Virenschutzes ist schön,<br />

allerdings hat eh jedes Unternehmen, das<br />

auf Exchange setzt, schon einen Scanner<br />

für Postfächer. Die neuen Transportregeln<br />

dienen vor allem der Sicherheit.<br />

Office 365 lässt sich genauso an Exchange<br />

Server 2010 anbinden wie an Exchange<br />

Server 2013. Aus unserer Sicht<br />

rechtfertigen die Änderungen kaum ein<br />

Update. Nur Unternehmen die von anderen<br />

Systemen zu Exchange wechseln<br />

wollen, sollten gleich die neue Version<br />

verwenden. Diese ist im Vergleich natürlich<br />

etwas schneller, unterstützt Windows<br />

Server 2012 besser und arbeitet besser<br />

mit Sharepoint zusammen. Revolutionäre<br />

Änderungen gibt es nicht. (ofr) n<br />

Infos<br />

[1] Exchange Server 2013: [http:// technet.​<br />

microsoft. com/ en‐US/ exchange/ fp179701]<br />

[2] Unified Communications Managed API 4.0<br />

Runtime: [http:// go. microsoft. com/ fwlink/​<br />

? LinkId=260990]<br />

[3] Microsoft Office 2010 Filter Packs: [http://​<br />

go. microsoft. com/ fwlink/ ? LinkID=191548]<br />

[4] Service Pack 1 for Microsoft Office Filter<br />

Pack 2010: [http:// go. microsoft. com/​<br />

fwlink/ ? LinkId=262358]<br />

[5] Smtpdiag:<br />

[http:// www. microsoft. com/ downloads/​<br />

details. aspx? displaylang=de& FamilyID=bc1<br />

881c7‐925d‐4a29‐bd42‐71e8563c80a9]<br />

[6] Remote Connectivity Analyzer: [https://​<br />

www. testexchangeconnectivity. com]<br />

[7] Exchange 2013 Virtualization:<br />

[http:// technet. microsoft. com/ en‐us/​<br />

library/ jj619301. aspx]<br />

86 Ausgabe 01-2013 Admin www.admin-magazin.de


<strong>Linux</strong>-<strong>Magazin</strong><br />

ACADEMY<br />

JETZT MIT NEUEN<br />

Lernzielen! *<br />

*Anpassung der Lernziele 2012<br />

Online-Training<br />

Prüfungsvorbereitung<br />

für LPIC 1 & 2<br />

20%<br />

Treue-Rabatt für<br />

Abonnenten<br />

Besorgen Sie sich Brief und Siegel für Ihr<br />

<strong>Linux</strong>-Knowhow mit der LPI-Zertifizierung.<br />

- Training für die Prüfungen LPI 101 und 102<br />

- Training für die Prüfungen LPI 201 und 202<br />

Sparen Sie mit Paketpreisen!<br />

Auszug aus dem Inhalt:<br />

❚ Hardware-Einstellungen,<br />

Paketverwaltung<br />

❚ Arbeiten auf der Kommandozeile<br />

❚ Partitionen und Dateisysteme<br />

❚ Shell-Umgebung<br />

❚ Netzkonfiguration und -verwaltung<br />

❚ Protokolle<br />

❚ DNS-Server einrichten und verwalten<br />

❚ Verschlüsselung und Rechteverwaltung<br />

❚ Kernel kompilieren und patchen<br />

❚ RAID-Konfiguration,<br />

Logical Volume Manager<br />

❚ Web-, Proxy-, Samba-Server<br />

Mit vielen Praxisbeispielen!<br />

* Anpassung der Lernziele in 2012<br />

academy.linux-magazin.de/lpic


Test<br />

Low Energy Server<br />

© Sunagatov Dmitry, 123RF<br />

Im Test: Thomas Krenns Low Energy Server<br />

Schön schlank<br />

Kleiner als ein externes CD-Laufwerk, leicht, leise und extrem sparsam im<br />

Energieverbrauch – so präsentiert sich Thomas Krenn’s Low Energy Server.<br />

Das <strong>ADMIN</strong>-<strong>Magazin</strong> hat ihn getestet. Jens-Christoph Brendel<br />

weiter, wenn man das Kistchen als Server<br />

ernst nimmt – als Client für eine Webanwendung<br />

oder eine Desktopvirtualisierung<br />

zum Beispiel ist es so allerdings<br />

nicht nutzbar.<br />

Gut vorstellbar sind aber Anwendungen<br />

als LDAP-Server, als FTP- oder Fileserver,<br />

als Name- oder DHCP-Server, als (kleiner)<br />

Web- oder Mailserver und dergleichen<br />

– an passender Software mangelt<br />

es in den Debian-Repositories jedenfalls<br />

nicht. Hinzukommen manche Bereiche<br />

der Softwareentwicklung, wo es nicht<br />

um Performancetests geht und wo keine<br />

Projekte im Kernel-Format kompiliert<br />

werden. Dort tut der Kleine sicher gute<br />

Dienste. Auch wo der Server mobil sein<br />

soll, beispielsweise für Kunden-Demos,<br />

kann das Modell von Krenn seine Vorteile<br />

ausspielen. Wo genau die Grenzen verlaufen,<br />

sollen Benchmarks klären.<br />

Server werden normalerweise ja mit<br />

dem Hubwagen angeliefert, diesen aber<br />

konnte man getrost einhändig zum<br />

Schreibtisch tragen, denn Thomas Krenns<br />

„Low Energy Server“ im Format einer<br />

Zigarrenkiste (4,5 H x 12 B x 16 T cm)<br />

bringt es nur auf 875 Gramm (Abbildung<br />

1). Das 18-Watt-Netzteil kommt separat,<br />

ein optisches Laufwerk ließe sich auch<br />

nur extern via USB konnektieren, und an<br />

die Stelle einer Grafikkarte tritt Intels in<br />

den Chipsatz integrierter Graphics Media<br />

Accelerator in der kleinsten Ausführung<br />

GMA 500.<br />

Sparsam und schlank<br />

Lohn der Zurückhaltung bei der Ausstattung<br />

ist ein tatsächlich bemerkenswert<br />

niedriger Energieverbrauch: Um die 6<br />

Watt sind es in Ruhe. Selbst wenn man<br />

den kleinen Server etwa mit dem <strong>Linux</strong>-<br />

Tool »stress« schwer beschäftigt, kommt<br />

man unter hoher CPU-Last kaum über<br />

8 Watt und bleibt bei I/​O-Stress immer<br />

noch unter 9 Watt. Ein normaler PC-Tower<br />

schluckt unter diesen Bedingungen<br />

schon mal gerne 150 Watt. Bei all dem<br />

bleibt das Gehäuse handwarm und absolut<br />

lautlos – denn es gibt keinen Lüfter<br />

(Abbildung 2), die Kühlung funktioniert<br />

rein passiv. In unser Exemplar passte<br />

eine optionale, zweite Gigabit-Ethernet-<br />

Schnittstelle, alternativ wäre auch WLAN<br />

möglich gewesen.<br />

Eine reine Serveranwendung bräuchte sicher<br />

keinen permanenten Monitor. Rechnet<br />

man den nämlich mit ein, relativiert<br />

sich der Energiesparvorteil ein wenig,<br />

denn ein Standard-Monitor frisst alleine<br />

dreimal so viel Strom wie der unbelastete<br />

Low Energy Server. In dieser Konstellation<br />

sparte ein Netbook mehr Energie,<br />

das mit einer ähnlichen CPU selbst unter<br />

Last mit 18 Watt auskommt und damit<br />

auch sein – freilich kleineres – Display<br />

versorgt.<br />

Nach dem Booten – was unser Exemplar<br />

dank Intel-SSD an Stelle einer Festplatte<br />

recht zügig absolvierte – landet man in<br />

einem ASCII-Terminal unter einem sehr<br />

schlanken Debian 6.0.6 mit weniger als<br />

300 installierten Paketen. Ein grafischer<br />

Desktop ist nicht am Start. Das stört nicht<br />

Benchmarks<br />

Für diese Benchmarks haben wir eine<br />

Reihe anderer Geräte zum Vergleich<br />

herangezogen. Der am leichtesten zu<br />

schlagende Konkurrent war ein Netbook<br />

HP mini, ebenfalls mit Atom-CPU unter<br />

einem aktuellen Ubuntu 12.04. Eine<br />

Stufe über ihm rangierte ein Mittelklasse<br />

Laptop als Mitbewerber, ein ThinkPad<br />

Edge mit Pentium B940-CPU und 4 GByte<br />

RAM. Und schließlich ließen wir auch<br />

noch einen ausgewachsenen kleinen Server<br />

antreten, einen Dell PowerEdge T110<br />

mit Intel Core i3-CPU und 8 GByte RAM<br />

(Tabelle 1).<br />

Gemessen haben wir mit dem Sysbench-<br />

Benchmark [1], der sowohl Aussagen<br />

über die Rechenleistung als auch über die<br />

I/​O-Performance bietet und gemeinsam<br />

mit MySQL auch eine OLTP-Last bewältigt.<br />

Eigentlich ist dieser Benchmark einmal<br />

für Datenbanken entwickelt worden,<br />

aber das Zusammenspiel seiner Komponenten<br />

ergibt auch für manche andere<br />

Anwendungen einen einen ganz guten<br />

Querschnitt des aktuellen Leistungsvermögens.<br />

Tabelle 1: Die Probanden<br />

Krenn-Server Netbook Laptop DELL-Server<br />

CPU-Typ Intel Atom Z530 Intel Atom N450 Intel Pentium B940 Intel Core i3 530<br />

Takt (GHz) 1,6 1,66 2 2,93<br />

RAM (GByte) 1 1 4 8<br />

Platte/​SSD Intel SSD SA2CW080G3 Hitachi Travelstar 7K500 WDC WD5000BPVT WDC WD1002FBYS<br />

Plattenkapazität (MByte) 80 500 500 1000<br />

88 Ausgabe 01-2013 Admin www.admin-magazin.de


Low Energy Server<br />

Test<br />

Abbildung 1: Ein Server im Format einer<br />

Zigarrenkiste – außerdem geräuschlos und sehr<br />

genügsam im Stromverbrauch.<br />

Das Rechnen, so viel ist schnell klar, ist<br />

nicht die große Stärke des Stromsparservers.<br />

In dieser Disziplin belegt er den<br />

letzten Platz, noch hinter seinem Atom-<br />

Geschwister, dem Netbook. Beide werden<br />

von den Konkurrenten mit den stärkeren<br />

CPUs klar distanziert (Abbildung 3).<br />

Anders sieht es beim I/​O aus: Hier ist<br />

der Stromsparserver in seinem Element,<br />

denn an seine SSD kommen mechanische<br />

Platten natürlich nicht heran (Abbildung<br />

4). Der Dell-Server hat allerdings so viel<br />

RAM, dass die 10 GByte Testfiles fast<br />

komplett in seinen Cache passen. Dadurch<br />

kommt er trotz herkömmlicher<br />

Abbildung 2: Lüfter finden sich keine in dem Mini-<br />

Server, die CPU wird passiv gekühlt und gibt die<br />

Abwärme über das Gehäuse ab.<br />

Festplatte auf kokurrenzfähige Werte.<br />

Die beiden mit RAM nicht so gut ausgestatteten<br />

Probanden stoßen dagegen an<br />

die Grenzen der Plattenmechanik. Die<br />

Kehrseite der Medaille ist freilich, dass<br />

man die drei Rechner mit Platten und<br />

ganz besonders den Dell-Server mit moderaten<br />

Kosten auf viel höhere Speicherkapazitäten<br />

aufrüsten kann, wogegen das<br />

Volumen der SSD des Stromsparservers<br />

nicht auf ein Vielfaches wachsen könnte,<br />

soll er bezahlbar bleiben.<br />

In der Disziplin OLTP-Workload, bei der<br />

sich Zugriffe auf den Massenspeicher mit<br />

Berechnungen mischen, haben wieder die<br />

beiden Testteilnehmer mit den schwachbrüstigen<br />

Atom-CPUs das Nachsehen<br />

(Abbildung 5). Das Rennen machte der<br />

überraschend gut platzierte Laptop Kopf<br />

an Kopf mit dem DELL-Server.<br />

Fazit<br />

Verglichen mit einem Standard-PC kann<br />

man mit dem Low Energy Server im Jahr<br />

vielleicht an die 140 Euro Stromkosten<br />

sparen. Dann hätte er sich in gut drei Jahren<br />

amortisiert – die Preise beginnen bei<br />

500 Euro. Wenn die Entwicklungsabteilung<br />

geschlossen umsteigt, kann sie sich<br />

so die Weihnachtsfeier finanzieren. Das<br />

aber wäre nicht der einzige Vorteil: Es<br />

stünden zusätzlich mehr Platz auf dem<br />

Schreibtisch oder im Serverraum, viel<br />

weniger Lärm und keine Abwärme auf<br />

der Haben-Seite. Wo die Rechenleistung<br />

für den Wechsel ausreicht – das ist das<br />

hauptsächliche Gegenargument – sollte<br />

der sparsame Server Kunden für sich gewinnen<br />

und zufriedenstellen können. n<br />

Infos<br />

[1] Sysbench: [http:// sysbench. sourceforge.​<br />

Primzahlen bis 20 000<br />

Laufzeit der Berechnung (größer ist schlechter)<br />

Random File-I/O<br />

Mittlere Zugriffszeit pro Request (kleiner ist besser)<br />

OLTP-Workload<br />

Transactions pro Sekunde (größer ist besser)<br />

Sekunden<br />

ms<br />

transactions/s<br />

Krenn-<br />

Server<br />

Netbook<br />

Kandidaten<br />

Laptop<br />

DELL-<br />

Server<br />

Krenn-<br />

Server<br />

Netbook<br />

Kandidaten<br />

Laptop<br />

DELL-<br />

Server<br />

Krenn-<br />

Server<br />

Netbook<br />

Kandidaten<br />

Laptop<br />

DELL-<br />

Server<br />

Abbildung 3: In puncto Rechenleistung bewegt sich<br />

der Low Energy Server auf Netbook-Niveau.<br />

Abbildung 4: Dank der eingebauten SSD kann der<br />

Energiesparserver beim I/​O punkten.<br />

Abbildung 5: Der OLTP-Aufgabenmix zwingt die Kontrahenten<br />

mit Atom-CPU deutlich früher in die Knie.<br />

MAGAZIN<br />

ONLINE<br />

<strong>Linux</strong>-<strong>Magazin</strong> newsLetter<br />

Newsletter<br />

informativ<br />

Nachrichten rund um die Themen <strong>Linux</strong> und<br />

Open Source lesen Sie täglich im Newsletter<br />

des <strong>Linux</strong>-<strong>Magazin</strong>s.<br />

kompakt<br />

www.admin-magazin.de<br />

tagesaktuell<br />

www.linux-magazin.de/newsletter<br />

Admin<br />

Ausgabe 01-2013 89


Security<br />

SHA-3<br />

© crstrbrt, 123RF<br />

SHA-3, der neue Hash-Standard<br />

Uneinsichtig<br />

Nach fünf Jahren hat die US-Standardisierungsorganisation vor Kurzem den Algorithmus Keccak zum neuen<br />

kryptographischen Hash-Standard gekürt. In der Praxis lässt jedoch selbst die Umstellung auf den Vorgänger<br />

SHA-2 noch auf sich warten. Hanno Böck<br />

Kryptographische Hash-Funktionen<br />

sind ein wichtiger Baustein bei der sicheren<br />

Kommunikation im Internet. In<br />

den letzten Jahren geriet hier einiges in<br />

Bewegung. Die lange Zeit eingesetzten<br />

Verfahren MD5 und SHA-1 waren sich<br />

plötzlich nicht mehr so sicher wie ursprünglich<br />

gedacht. So nutzte der Virus<br />

Flame, der im Mai diesen Jahres auf<br />

zahlreichen Rechnern im nahen Osten<br />

entdeckt wurde, die Schwäche von MD5,<br />

um sich über den Update-Service von<br />

Windows zu installieren.<br />

Infolge der kryptographischen Durchbrüche<br />

entschied die US-Standardisierungsbehörde<br />

NIST (National Institute<br />

for Standards and Technology), einen<br />

Wettbewerb [1] zur Entwicklung eines<br />

neuen Hash-Standards ins Leben zu rufen.<br />

Vor wenigen Wochen wurde der Sieger<br />

gekürt: Der Algorithmus Keccak [2],<br />

entwickelt von einem belgischen Team<br />

von Wissenschaftlern. Es ist der zweite<br />

Wettbewerb dieser Art: Bereits der symmetrische<br />

Verschlüsselungsstandard AES,<br />

der heute in fast allen kryptographischen<br />

Anwendungen zu finden ist, wurde mithilfe<br />

eines ähnlichen Wettbewerbs 2003<br />

verabschiedet.<br />

Fingerabdruck<br />

Doch worum geht es bei kryptographischen<br />

Hash-Funktionen eigentlich? Kryptographische<br />

Hash-Funktionen bilden<br />

eine beliebige Eingabe, etwa eine Datei,<br />

auf eine Ausgabe fester Länge ab. Die<br />

Ausgabe wird in der Regel als sogenannte<br />

Hexadezimalzahl angegeben. Der MD5-<br />

Hash des Wortes „Hallo“ beträgt etwa<br />

d1bf93299de1b68e6d382c893bf1215f.<br />

Um als sicher zu gelten, muss eine kryptographische<br />

Hash-Funktion zwei Bedingungen<br />

erfüllen:<br />

n Nicht umkehrbar: Es soll extrem<br />

schwierig sein, bei einem gegebenen<br />

Hash eine Eingabe zu finden, die diesen<br />

Hash als Ausgabe produziert.<br />

n Kollisionsresistenz: Es soll extrem<br />

schwierig sein, zwei Eingaben zu<br />

finden, die dieselbe Ausgabe produzieren.<br />

Kryptographische Hash-Funktionen<br />

werden zu vielen Zwecken eingesetzt.<br />

90 Ausgabe 01-2013 Admin www.admin-magazin.de


SHA-3<br />

Security<br />

Der wichtigste sind digitale Signaturen.<br />

Signaturverfahren wie RSA werden dabei<br />

nicht über die gesamte Eingabe gebildet,<br />

sondern nur über den Hash einer<br />

Eingabe. Doch auch an vielen anderen<br />

Stellen finden Hash-Funktionen Anwendung.<br />

Sichere Protokolle wie SSL/​<br />

TLS sind komplexe Konstruktionen, die<br />

Hash-Funktionen als Bausteine für unterschiedliche<br />

Zwecke einsetzen.<br />

MD5 gebrochen, SHA-1<br />

gefährdet<br />

Im Jahr 2004 gelang es einem Team<br />

um die chinesische Wissenschaftlerin<br />

Xiaoyun Wang erstmals, eine praktische<br />

Kollision der MD5-Funktion zu zeigen<br />

und zwei Eingabedateien zu produzieren,<br />

die denselben MD5-Hash besitzen. Doch<br />

Warnsignale gab es schon lange: Bereits<br />

1996 warnte der inzwischen verstorbene<br />

Bochumer Professor Hans Dobbertin vor<br />

Schwächen in MD5.<br />

Die chinesischen Forscher beließen es<br />

jedoch nicht beim Angriff auf MD5: Im<br />

Jahr 2005 verbesserte Wangs Team bekannte<br />

Angriffe gegen den bis dahin als<br />

sicher geltenden Standard SHA-1 mehrmals.<br />

Zwar blieben diese theoretisch –<br />

bis heute konnte noch niemand eine reale<br />

Kollision vorführen – doch klar war: Auch<br />

SHA-1 konnte mittelfristig nicht mehr als<br />

sicher gelten.<br />

Übrig blieben die bis dahin kaum<br />

genutzten Hash-Funktionen der SHA-<br />

2-Familie mit den Namen SHA-224,<br />

SHA-256, SHA-284 und SHA-512. Doch<br />

selbst hier schwante manchen Kryptographen<br />

Unheil: Denn die Methoden, die<br />

bei SHA-2 genutzt werden, unterscheiden<br />

sich nur geringfügig von denen in MD5<br />

und SHA-1.<br />

Die US-Behörde NIST kündigte daraufhin<br />

an, einen neuen Hash-Standard entwi-<br />

Nutzung von SHA-2<br />

Auf Unix-Systemen stehen in der Regel eine<br />

Reihe von Kommandozeilentools bereit, um<br />

Hash-Funktionen zu berechnen. Für die alten,<br />

inzwischen unsicheren Funktionen gibt es<br />

»md5sum« oder »sha1sum«, analog dazu existieren<br />

die Tools »sha256sum«, »sha224sum«,<br />

»sha384sum« und »sha512sum«.<br />

In den meisten modernen Programmiersprachen<br />

stehen Funktionen bereit, um die Hash-<br />

Funktionen zu berechnen. In Python stehen die<br />

ckeln zu wollen. Dafür wurde ein Wettbewerb<br />

ausgerufen: Weltweit sollten die<br />

besten Kryptografen Vorschläge für den<br />

neuen Standard einreichen. Diese wurden<br />

auf mehreren Konferenzen diskutiert<br />

und auf mögliche Schwächen abgeklopft.<br />

Neben den nahe liegenden Gründen war<br />

auch der Ruf lautgeworden, generell dem<br />

Thema mehr Aufmerksamkeit zu widmen.<br />

Kryptografische Hash-Funktionen<br />

seien bislang von der Forschung vernachlässigt<br />

worden.<br />

64 Vorschläge [3] wurden eingereicht,<br />

die sich dann in mehreren Runden zunächst<br />

auf 15 und dann auf 5 Finalisten<br />

reduzierten. Den Kandidaten, die es in<br />

Runde zwei schafften, war es danach<br />

erlaubt, kleine Verbesserungen an ihren<br />

Algorithmen vorzunehmen, um auf mögliche<br />

Kritikpunkte zu reagieren.<br />

Krypto-Wettbewerb<br />

Der Wettbewerb trug nicht nur dazu bei,<br />

dass zahlreiche neue Hash-Funktionen<br />

entwickelt wurden, er verbesserte auch<br />

deutlich das Verständnis der Kryptografen.<br />

Eine nicht unbedeutende Erkenntnis<br />

des Wettbewerbs: Die SHA-2-Funktionen<br />

sind offenbar besser als viele dachten.<br />

Der bekannte Kryptograf Bruce Schneier<br />

schlug wenige Wochen vor der finalen<br />

Entscheidung daher vor, den Wettbewerb<br />

ohne Sieger zu beenden [4]. Keiner der<br />

Finalisten sei deutlich besser als SHA-<br />

512, einige seien geringfügig schneller,<br />

aber nicht so viel schneller dass<br />

es einen neuen Standard rechtfertigen<br />

würde. Schneier selbst hatte zusammen<br />

mit anderen mit der Hashfunktion Skein<br />

einen der aussichtsreichen Kandidaten<br />

für SHA-3 ins Rennen geschickt. Egal,<br />

wie der Wettbewerb ausgeht: Schneier<br />

empfahl allen Anwendungsentwicklern,<br />

unabhängig vom Ausgang zumindest<br />

Funktionen der »hashlib«-Bibliothek zur Verfügung,<br />

ein Aufruf von »hashlib.sha512.("Hallo").<br />

hexdigest()« gibt den hexadezimalen Hash aus.<br />

Die folgenden Zeilen machen das Gleiche mit<br />

PHP:<br />

$input = "Hallo";<br />

echo hash('sha512',$input);<br />

Die die entsprechende Funktion heißt also<br />

»hash« und übernimmt den Typ als Parameter.<br />

vorerst weiterhin auf SHA-512 zu setzen,<br />

da der Algorithmus bewährt und gut untersucht<br />

sei.<br />

Doch Schneiers Worte bleiben ungehört.<br />

Am 2. Oktober verkündete das NIST den<br />

Sieger: Keccak, eine Entwicklung eines<br />

belgischen Wissenschaftsteams, soll zum<br />

neue SHA-3-Standard werden. Für den<br />

Mitentwickler Joan Daemen war dies ein<br />

besonderer Erfolg: Er hatte bereits den<br />

Verschlüsselungsalgorithmus Rijandel<br />

mitentworfen, der später zum Standard<br />

AES wurde.<br />

Das NIST begründete seine Entscheidung<br />

damit, dass Keccak von der internen<br />

Struktur deutlich anders aufgebaut sei<br />

als die bestehenden SHA-2-Funktionen.<br />

Sollten sich in Zukunft doch Probleme<br />

zeigen, hätte man eine Alternative, die<br />

davon höchstwahrscheinlich nicht betroffen<br />

ist. Auch Bruce Schneier konnte mit<br />

der Entscheidung gut leben. Trotz seiner<br />

vorigen Kritik betonte er, dass er keinerlei<br />

Sorgen um die Sicherheit von Keccak<br />

habe und es eine gute Entscheidung sei.<br />

Den endgültigen SHA-3-Standard hat das<br />

NIST bisher noch nicht veröffentlicht,<br />

somit ist auch bisher eine Nutzung von<br />

SHA-3 kaum anzuraten. Der Hintergrund:<br />

Der Keccak-Algorithmus bietet zahlreiche<br />

Varianten, in denen er genutzt werden<br />

kann, erst nach Veröffentlichung des<br />

Standards wird klar sein, mit welchen<br />

genauen Parametern die Funktion dann<br />

genutzt werden soll.<br />

SHA-2 wenig verbreitet<br />

Nach wie vor gilt also: Sichere Anwendungen<br />

sollten vorerst auf die SHA-2-<br />

Funktionen setzen. Doch obwohl die<br />

Prob leme in SHA-1 nun schon seit sieben<br />

Jahren bekannt sind, tun sich hier zahlreiche<br />

Probleme auf. SHA-1 ist noch weit<br />

verbreitet und auch MD5 längst nicht<br />

ausgerottet.<br />

Im Jahr 2008 konnte ein Forscherteam<br />

auf dem 25C3, dem Jahreskongress des<br />

Chaos Computer Clubs, einen Angriff<br />

auf MD5-Signaturen präsentieren [5],<br />

der es ihnen ermöglichte, ein gefälschtes<br />

Root-Zertifikat einer von allen Browsern<br />

unterstützten SSL-Zertifizierungsstelle zu<br />

erzeugen. Erst infolge dieses Praxisangriffs<br />

ließen sich die Zertifizierungsstellen<br />

überzeugen, die Nutzung von MD5<br />

zu beenden. Doch statt direkt auf SHA-2<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

91


Security<br />

SHA-3<br />

01 $$nonumber<br />

zu wechseln, nutzen die meisten<br />

inzwischen den ebenfalls<br />

potenziell anfälligen Algorithmus<br />

SHA-1.<br />

Fehler potenziert<br />

Das Interessante hierbei: Eigentlich<br />

sollte ein solcher Angriff<br />

selbst mit der unsicheren<br />

MD5-Funktion überhaupt<br />

nicht möglich sein. Denn SSL-<br />

Zertifizierungsstellen fügen in<br />

das Zertifikat eine zufällig erzeugte<br />

Seriennummer ein. Für<br />

den erfolgreichen Angriff war<br />

es aber nötig, zwei Zertifikate<br />

mit identischem MD5-Hash zu<br />

erzeugen, die Angreifer mussten<br />

also vorher exakt wissen,<br />

welche Daten in das Zertifikat<br />

eingetragen werden. Doch sie fanden einen<br />

Fehler bei der Zertifizierungsstelle<br />

RapidSSL: Diese fügte keine zufällige<br />

Seriennummer ein, sondern eine inkrementell<br />

erhöhte. Da die Zertifikate relativ<br />

günstig waren, konnten die Angreifer<br />

eine wahrscheinliche Seriennummer raten<br />

und nach mehreren Versuchen gelang<br />

ihnen der Angriff.<br />

Ein Angriff auf MD5 mit ganz praktischen<br />

Auswirkungen wurde dann 2012<br />

bekannt: Der Virus Flame enthielt eine<br />

gültige Code-Signatur von Microsoft [6]<br />

und konnte sich so über den Windows-<br />

Update-Service verbreiten. Die genauen<br />

Details der Attacke sind unbekannt, doch<br />

Kryptografen gehen davon aus, dass die<br />

Programmierer von Flame Wissen über<br />

weitere Schwächen von MD5 haben, die<br />

bisher nicht öffentlich bekannt sind.<br />

Umstellung auf SHA-2<br />

schleppend<br />

Im Jahr 2011 waren noch nahezu alle<br />

SSL-Zertifikate mit einer SHA-1-Signatur<br />

versehen (Abbildung 1). Erst im Jahr 2012<br />

fingen erste Zertifizierungsstellen mit<br />

dem Wechsel auf SHA-2 an. Das Prob lem<br />

hierbei: die Abwärtskompatibilität. Fragte<br />

Listing 1: Apache-Konfiguration<br />

02 SSLProtocol ‐SSLv2 +SSLv3 +TLSv1 +TLSv1.1 +TLSv1.2<br />

03 SSLCipherSuite TLSv1:SSLv3:!SSLv2:HIGH:MEDIUM:!LOW:<br />

!MD5<br />

Abbildung 1: Heute noch absoluter Normalfall: Zertifikat enthält SHA-1-Signatur.<br />

man bei den Zertifizierungsstellen nach,<br />

so erhielt man die Antwort, dass das<br />

nach wie vor häufig genutzte Windows<br />

XP vor dem Service Pack 3 keine SHA-2-<br />

Signaturen unterstützt. Derartige Kompatibilitätsprobleme<br />

dürften in Zukunft<br />

eher noch zunehmen. Wer will schon von<br />

seinem Webservice für einen geringen<br />

Sicherheitsgewinn etwa die Nutzer alter<br />

Smartphones ausschließen?<br />

Noch schwieriger sieht die Situation bei<br />

den Übertragungsprotokollen aus. Der<br />

alte, nach wie vor häufig genutzte SSL-<br />

Standard in der Version 3 unterstützt nur<br />

MD5- und SHA-1-Signaturen. Auch die<br />

Nachfolger TLS 1.0 und 1.1 bringen keine<br />

Besserung, erst mit TLS 1.2 werden neuere<br />

Algorithmen mit SHA-2 unterstützt.<br />

Auf der Serverseite wird für die Aktivierung<br />

von TLS 1.2, etwa im Apache-Webserver,<br />

die Version 1.0.1 von OpenSSL benötigt.<br />

Doch bisher unterstützt einzig der<br />

Opera-Browser TLS 1.2. Somit können<br />

Serveradministratoren zwar den neuen,<br />

sichereren Standard aktivieren, genutzt<br />

wird er aber vermutlich kaum. Und die<br />

Abschaltung der alten Algorithmen dürfte<br />

für die lange Zeit nicht infrage kommen.<br />

Die Abschaltung von MD5-Signaturen ist<br />

aber schon heute bedenkenlos möglich<br />

und empfehlenswert.<br />

Aktiviert werden kann TLS 1.2 – OpenSSL<br />

1.0.1 und eine aktuelle 2.2 oder 2.4-Version<br />

des Apache-Webservers vorausgesetzt<br />

– mit der Konfigurationsoption »SS-<br />

LProtocol«. Eine mögliche Serverkonfiguration<br />

könnte wie in Listing 1<br />

aussehen.<br />

Mit hoher Wahrscheinlichkeit<br />

bestehen heute noch keinerlei<br />

Sicherheitsprobleme, wenn<br />

man SHA-1 verwendet. Doch<br />

die Erfahrung mit MD5 lehrt,<br />

dass die Umstellung weg von<br />

schwachen Algorithmen sehr<br />

lange dauert. Trotz der seit<br />

1996 bekannten Probleme<br />

konnte der Flame-Virus noch<br />

2012 – ganze 18 Jahre später<br />

– erfolgreich die MD5-Signaturen<br />

des Windows-Update-<br />

Service angreifen.<br />

Zukunftsunsicher<br />

Erste Kollisionen von SHA-1<br />

werden vermutlich innerhalb<br />

der nächsten Jahre vermeldet. Für praxisrelevante<br />

Angriffe ist aber die genaue Art<br />

der Kollision entscheidend: Die Probleme<br />

bei MD5 wurden erst dann relevant, als<br />

es auch möglich war, sinnvolle Daten,<br />

etwa Zertifikate, mit einer Kollision zu<br />

erzeugen. Doch das dauerte bei MD5<br />

nur kurze Zeit, und die Angriffe wurden<br />

schnell besser. (ofr)<br />

n<br />

Infos<br />

[1] SHA-3-Wettbewerb beim NIST: [http:// csrc.​<br />

nist. gov/ groups/ ST/ hash/ sha‐3/]<br />

[2] Keccak-Algorithmus: [http:// keccak.​<br />

noekeon. org/]<br />

[3] Alle Vorschläge im SHA-3-Wettbewerb:<br />

[http:// ehash. iaik. tugraz. at/ wiki/ The_<br />

SHA‐3_Zoo]<br />

[4] Blogeintrag von Bruce Schneier: [http://​<br />

www. schneier. com/ blog/ archives/ 2012/ 09/​<br />

sha‐3_will_be_a. html]<br />

[5] Vortrag auf 25C3 über gefälschte MD5-<br />

Signatur: [http:// media. ccc. de/ browse/​<br />

congress/ 2008/ 25c3‐3023‐en‐making_the_<br />

theoretical_possible. html]<br />

[6] Analyse der MD5-Kollision im Flame-Virus:<br />

[http:// www. research. leiden. edu/ news/​<br />

cryptanalyst. html]<br />

Der Autor<br />

Hanno Böck ist freier Journalist und ehrenamtlicher<br />

Entwickler bei Gentoo <strong>Linux</strong>. Nebenher arbeitet<br />

er beim Webhosting-Unternehmen schokokeks.org<br />

mit, das für den Betrieb seiner Dienste<br />

ausschließlich auf freie Software setzt.<br />

92 Ausgabe 01-2013 Admin www.admin-magazin.de


R<br />

CeBIT Open Source<br />

5.–9.3.2013<br />

Werfen Sie einen Blick hinter die Kulissen<br />

von <strong>Linux</strong> und Open Source!<br />

Das tägliche Vortragsprogramm liefert Ihnen<br />

Hintergrundinformationen aus erster Hand!<br />

Jetzt in Halle 6!<br />

Stand F02<br />

Auf der Bühne: Hochkarätige Vertreter der Open-Source-Szene, u.a.<br />

Klaus Knopper,<br />

KNOPPER.NET<br />

Jon „maddog“ Hall,<br />

<strong>Linux</strong> International<br />

Peer Heinlein,<br />

Heinlein Support GmbH<br />

Powered by<br />

Presented by<br />

Sponsored by<br />

<strong>Linux</strong><br />

Professional<br />

Institute


Security<br />

Automatische Portscans<br />

© Paul Vasarhelyi, 123RF<br />

Automatisierte Portscan-Auswertung in großen Netzen<br />

Leider geöffnet<br />

Das eigene Netz regelmäßig mit einem Portscan abzusuchen, beugt ungewollt laufenden Serverdiensten vor.<br />

Bei mehreren Hundert Servern ist das allerdings kein leichtes Unterfangen. Dr. Portscan bietet eine Lösung.<br />

Felix von Eye, Michael Grabatin, Wolfgang Hommel, Stefan Metzger<br />

Eines der Hauptprobleme regelmäßiger<br />

Portscans in großen Netzen ist ihr<br />

Aufwand: Mit der Serveranzahl wächst<br />

die Liste offener Ports schnell in eine<br />

Größenordnung, die manuell nicht mehr<br />

überschaubar ist. Notwendig wäre eine<br />

sorgfältige, deshalb sehr zeitintensive<br />

Auseinandersetzung mit den Scan-Ergebnissen<br />

– aber dafür fehlt oft das Personal.<br />

Zudem gibt es in vielen Organisationen<br />

keinen präzise definierten, zentral verfügbaren<br />

Soll-Zustand, mit dem das Ergebnis<br />

abgeglichen werden könnte. Das<br />

ist insbesondere dann so, wenn einzelne<br />

Abteilungen eigenständig neue Server in<br />

Betrieb nehmen dürfen.<br />

Analysiert man seine Netze zudem von<br />

unterschiedlichen Standorten aus, etwa<br />

organisationsintern und von außen, hat<br />

man zusätzlich mit unterschiedlichen Ergebnislisten<br />

zu kämpfen. Die resultieren<br />

unter anderem aus Verbindungen, die<br />

Firewalls blockieren, oder den Scan-Zeitpunkten.<br />

Die manuelle Auswertung und<br />

das Erkennen von Veränderungen sind<br />

dann noch mühsamer.<br />

Reporting-Tool<br />

Ein im Deutschen Forschungsnetz (DFN)<br />

entstandenes Open-Source-Werkzeug<br />

hilft bei der Automatisierung verteilter<br />

Portscans und deren Auswertung. Dr.<br />

Portscan ist ein Delta-Reporting Tool, das<br />

nahezu beliebige Portscan-Werkzeuge unterstützt,<br />

die parallel oder zeitversetzt in<br />

beliebigen Zeitintervallen beliebig überlappende<br />

Netz- und Portbereiche analysieren.<br />

Die Ergebnisse dieser Scan-Läufe<br />

werden automatisiert aggregiert und<br />

miteinander verglichen. Dabei entdeckte<br />

Veränderungen können in Berichte für<br />

verschiedene Zielgruppen einfließen oder<br />

als Parameter an Skripte und Programme<br />

übergeben werden. Auf dieser Basis können<br />

verfeinerte Diagnosen gestellt und<br />

das Ergebnis mit einem definierten Soll-<br />

Zustand abgeglichen werden.<br />

Im Folgenden beschreiben wir den allgemeinen<br />

Aufbau verteilter Portscan-<br />

Infrastrukturen, die Architektur und<br />

Funktionsweise von Dr. Portscan und<br />

grundlegende Schritte zu Installation und<br />

Inbetriebnahme.<br />

Verteilte Portscans<br />

Der Einsatz von Portscans als proaktive<br />

Sicherheitsmaßnahme muss zunächst<br />

sorgfältig geplant werden, um<br />

zu aussagekräftigen Ergebnissen zu<br />

kommen. Mit den folgenden Fragestellungen<br />

sollte sich der Administrator dabei<br />

auseinandersetzen:<br />

n Welche Portscan-Werkzeuge sollen<br />

eingesetzt werden? Neben dem Klassiker<br />

»nmap« gibt es zahlreiche weitere<br />

kostenlose, aber auch kommerzielle<br />

Scanner. Auch Sicherheits- und<br />

Netzmanagement-Werkzeuge können<br />

explizit oder implizit Informationen<br />

über offene Ports liefern und somit als<br />

Datenquelle dienen.<br />

n Von wie vielen und welchen Systemen<br />

aus sollen die Portscans laufen? Durch<br />

eine entsprechende Platzierung mehrerer<br />

Portscanner lassen sich zum Beispiel<br />

Innen- und Außenansichten der<br />

analysierten Netze unterscheiden.<br />

n Wie häufig soll von diesen Systemen<br />

aus gescannt werden? Dabei ist beispielsweise<br />

zu beachten, dass einige<br />

Internet-basierte Portscan-Dienste nur<br />

fixe Intervalle vorsehen.<br />

n In welchem Umfang soll jeweils gescannt<br />

werden? Portscans von außen<br />

sind im Allgemeinen langsamer als<br />

LAN-interne Scans. Deshalb möchte<br />

man sie eventuell auf einzelne Subnetze<br />

oder nur eine Teilmenge der<br />

möglichen TCP/​UDP-Ports einschränken.<br />

n Wie können die ermittelten offenen<br />

Ports validiert, also einem Soll-Zustand<br />

gegenübergestellt werden? Neben einem<br />

Initialscan mit anschließender<br />

94 Ausgabe 01-2013 Admin www.admin-magazin.de


Automatische Portscans<br />

Security<br />

manueller Prüfung kann gegebenenfalls<br />

der in einer Asset-Datenbank oder<br />

in einem Configuration-Management-<br />

System dokumentierte Soll-Zustand<br />

herangezogen werden.<br />

Abbildung 1 zeigt etwas vereinfacht die<br />

aktuelle Konfiguration als Beispiel, anhand<br />

dessen wir nun auf den Einsatz von<br />

Dr. Portscan eingehen.<br />

Dr. Portscan im Überblick<br />

Im Vergleich zum bekannten Werkzeug<br />

»ndiff«, das die Gegenüberstellung von<br />

genau zwei Nmap-Scan-Ergebnissen<br />

möglich macht, erlaubten die Skripte, auf<br />

die Dr. Portscan zurückgeht, von Anfang<br />

an die Gegenüberstellung einer beliebigen<br />

Anzahl von Portscan-Ergebnislisten,<br />

die von verschiedenen Maschinen aus<br />

erzeugt wurden. Nach einiger Zeit wurde<br />

jedoch das Arbeiten mit in unterschiedlichen<br />

Intervallen erzeugten Outputs so<br />

unübersichtlich und war zudem fest an<br />

ein einziges Portscan-Produkt gebunden,<br />

dass eine vollständig neue, modulare<br />

und um beliebige Portscan-Werkzeuge<br />

erweiterbare, datenbankbasierte Lösung<br />

geschaffen wurde, mit der Portscan-Berichte<br />

erstellt und skriptbasierte Reaktionen<br />

auf Veränderungen in den Portscan-<br />

Ergebnissen gezielt angestoßen werden<br />

können.<br />

Abbildung 2 zeigt die Systemarchitektur<br />

von Dr. Portscan mit ihren wichtigsten<br />

Komponenten: Als Datenquellen<br />

(1) dienen beliebig viele verschiedene<br />

Hosting<br />

Provider<br />

Werkzeug:<br />

Ort:<br />

Intervall:<br />

Scanbereich:<br />

Ports:<br />

W erkzeug: nm ap<br />

O rt:<br />

Intern (zentral)<br />

Intervall: Täglich/4 Stunden<br />

Scanbereich: xxx.xxx.xxx.0/1 6<br />

Ports: alle 65535 TCP/U DP<br />

S1<br />

N etzm anagem ent<br />

CM S<br />

nmap<br />

Extern<br />

28 Tage<br />

xxx.xxx.xxx.0/24<br />

ca. 2500 TCP/UDP<br />

S4<br />

D r. Portscan<br />

Portscan-Werkzeuge. Sogenannte Input-<br />

Agenten (2) sind für das Konvertieren der<br />

produktspezifischen Scan-Ergebnisse in<br />

ein einheitliches Format zuständig. Der<br />

Input-Agent für Nmap enthält beispielsweise<br />

Parser für die XML- und die sogenannte<br />

grep-bare Ausgabe von Nmap<br />

ab Version 5. Der Aufwand für die Implementierung<br />

weiterer Input-Agenten ist<br />

vom anzubindenden Portscan-Werkzeug<br />

abhängig, bleibt in der Regel aber überschaubar,<br />

da durch die anzupassenden<br />

Code-Teile lediglich eine Liste der ermittelten<br />

IP-Adressen und offenen Ports generiert<br />

werden muss.<br />

Der Delta-Reporter (3) überträgt die von<br />

den Input-Agenten gelieferten Ergebnisse<br />

in eine Datenbank (4), die die Ergebnisse<br />

aller Portscans erfasst und auswertet. Die<br />

dabei generierten Informationen weisen<br />

auf Veränderungen gegenüber den letzten<br />

Scan-Läufen hin.<br />

Output-Agenten<br />

Die frei definierbaren Output-Agenten (5)<br />

können eine Gesamtübersicht liefern, Berichte<br />

über Veränderungen in einzelnen<br />

Subnetzen erstellen und per E-Mail an<br />

den zuständigen Administrator verschicken<br />

oder beliebige Skripte anstoßen, um<br />

nähere Informationen über den Dienst,<br />

der hinter einem neu geöffneten Port<br />

steckt, einzuholen oder mit einem definierten<br />

Soll-Zustand abzugleichen.<br />

Dr. Portscan ist auf eine zentrale, relationale<br />

Datenbank ausgelegt, um zunächst<br />

S3<br />

S2<br />

W erkzeug:<br />

O rt:<br />

Intervall:<br />

Scanbereich:<br />

Ports:<br />

Vulnerability-<br />

Scanner<br />

Hosting Provider<br />

W erkzeug:<br />

O rt:<br />

Intervall:<br />

Scanbereich:<br />

Ports:<br />

nm ap<br />

Extern<br />

Täglich<br />

xxx.xxx.xxx.0/23<br />

ca. 1 0000 TCP<br />

sam hain<br />

Intern (System -lokal)<br />

5 M inuten<br />

xxx.xxx.xxx.xxx/32<br />

0-1 023 TCP/U DP<br />

die Ergebnisse der dezentralisiert durchgeführten<br />

Portscans an einer Stelle in<br />

einem einheitlichen Format zu sammeln.<br />

Da sowohl die Input-Agenten, der Delta-<br />

Reporter als auch die Output-Agenten<br />

in Perl implementiert sind, kommt ein<br />

breites Spektrum an Open-Source- und<br />

kommerziellen Datenbank-Produkten in<br />

Frage. Die minimal gehaltene Beispielkonfiguration<br />

setzt auf SQLite. Damit<br />

ist ein schnelles Ausprobieren von Dr.<br />

Portscan möglich, ohne zusätzlich einen<br />

Datenbank-Server und eine neue Datenbank<br />

einrichten zu müssen. Für größere<br />

Installationen bietet sich die Verwendung<br />

von MariaDB, PostgreSQL oder ein anderes<br />

relationales Datenbankmanagementsystem<br />

an, für das Perl-DBI-Module<br />

verfügbar sind.<br />

Die Datenbank speichert alle Informationen<br />

für jede gescannte Maschine und<br />

jeden auffällig gewordenen Port. Ausschlaggebend<br />

dabei sind die Veränderung<br />

gegenüber dem letzten Lauf des Portscanners,<br />

auf den der Eintrag zurückgeht. Die<br />

Tabelle 1 zeigt die derzeit unterstützten<br />

Veränderungstypen.<br />

Datenquellen und Input-<br />

Agenten<br />

Die eigentlichen Datenquellen, also die<br />

Portscan-Werkzeuge, sind zunächst<br />

unabhängig von den Input-Agenten zu<br />

konfigurieren. Beispielsweise könnte<br />

auf einer <strong>Linux</strong>-Maschine das Werkzeug<br />

»nmap« per Cronjob automatisiert einmal<br />

pro Tag wie folgt aufgerufen werden, um<br />

alle Ports eines Netzbereichs zu scannen,<br />

der einem herkömmlichen Class-B-Netz<br />

entspricht:<br />

/usr/bin/nmap ‐v ‐v ‐oG ‐ ‐p 1‐65535 U<br />

10.1.0.0/16 > /tmp/nmap‐results.txt<br />

Jeder Datenquelle ist ein Input-Agent<br />

zugeordnet; seine Hauptaufgabe ist das<br />

Erzeugen einer Liste aller IP-Adressenund<br />

Port-Paare, die von der Datenquelle<br />

als offen erkannt wurden. Er liest die<br />

Ausgabe des Scan-Werkzeugs und parst<br />

sie. Der obige Nmap-Aufruf würde beispielsweise<br />

bei einem Webserver folgende<br />

Textausgabe liefern:<br />

Host: 10.1.123.123 (www.example.com) U<br />

Ports: 80/open/tcp//http///, 443/open/tcpU<br />

Abbildung 1: Beispielszenario für verteilte Portscans mit dem Werkzeug Dr. Portscan.<br />

//https///<br />

Ignored State: filtered<br />

www.admin-magazin.de<br />

Admin<br />

Ausgabe 01-2013<br />

95


Security<br />

Automatische Portscans<br />

Nr.<br />

Tabelle 1: Veränderungstypen<br />

Beschreibung<br />

0 Keine Veränderung gegenüber dem<br />

letzten Scan-Lauf<br />

1 Neue Maschine (IP-Adresse ist zum<br />

ersten Mal auffällig geworden)<br />

2 Maschine läuft nicht mehr<br />

4 Veränderter DNS-Name<br />

8 Neuer offener Port, der vorher noch<br />

nie offen war<br />

16 Port inzwischen geschlossen (Port war<br />

früher offen)<br />

32 Port wieder geöffnet, nachdem er zwischenzeitlich<br />

geschlossen war<br />

Das Ergebnis des Input-Agents – eine<br />

einfache Textdatei mit einer IP-Adresse,<br />

einem Port sowie der Protokollangabe<br />

und optional einem Zeitstempel pro Zeile<br />

– wird anschließend entweder zur Abholung<br />

durch den Delta-Reporter hinterlegt<br />

oder im Push-Verfahren, etwa per »scp«,<br />

auf eine andere Maschine übertragen.<br />

Dieser Zwischenschritt ist oft deshalb<br />

notwendig, weil die von Dr. Portscan in<br />

der Default-Konfiguration verwendete<br />

SQLite-Datenbank (ohne Zusatzsoftware<br />

wie cubeSQL) gar nicht über das Netz<br />

erreichbar ist und auch andere Datenbanken<br />

häufig per Firewall gegenüber<br />

Zugriffen aus dem Internet abgeschottet<br />

werden, sodass kein direktes Eintragen<br />

der Ergebnisse in die zentrale Datenbank<br />

möglich wäre.<br />

Delta-Reporter, Output-<br />

Agenten und Reports<br />

Zunächst überträgt der Delta-Reporter<br />

die von den Input-Agenten gelieferten<br />

Portscan-Ergebnisse in die zentrale Datenbank.<br />

Dabei überprüft er für jedes<br />

IP-Adress- und Port-Paar unter Berücksichtigung<br />

des Layer-4-Protokolls, ob<br />

zum entsprechenden Scanner bereits ein<br />

Eintrag vorliegt oder neu erzeugt werden<br />

muss. Bei Aktualisierung vorhandener<br />

Einträge wird der Veränderungstyp entsprechend<br />

gesetzt.<br />

Nach Abschluss des Imports aller<br />

Portscan-Ergebnisse kann der Output-<br />

Agent den zentralen Datenbestand auswerten.<br />

Da primär Veränderungen gegenüber<br />

dem bisherigen Zustand interessant<br />

sind, suchen Output-Agenten in der Regel<br />

nur nach Datenbank-Einträgen mit passendem<br />

Veränderungstyp. Um zu verhindern,<br />

dass ein Output-Agent mehrfach<br />

dasselbe Ereignis bearbeitet, trägt dieser<br />

seinen Identifikator in eine entsprechende<br />

Spalte der Datenbanktabelle ein.<br />

Anzahl und Art der verwendeten Output-<br />

Agenten sind beliebig an den eigenen<br />

Bedarf anpassbar. Dr. Portscan bietet einen<br />

vorgefertigten Output-Agenten, der<br />

dem Administrator einen Gesamtüberblick<br />

über alle Veränderungen seit dem<br />

letzten Bericht liefert. Die Auswertung<br />

durch die Output-Agenten lässt sich aber<br />

auch gezielt einschränken. So ist es denkbar<br />

nur Ereignisse bestimmter Subnetze<br />

zu betrachten, um gezielt dafür zuständige<br />

Server- oder Netzverantwortliche<br />

zu informieren, oder nur ausgewählte<br />

Ereignisse, zum Beispiel neu geöffnete<br />

Ports, um diese einem definierten Soll-<br />

Zustand gegenüberzustellen. Um generell<br />

Mehrfachmeldungen und Fehlalarme zu<br />

vermeiden, empfiehlt sich das folgende<br />

Vorgehen:<br />

n Ports werden erst als offen oder geschlossen<br />

gemeldet, wenn frei konfigurierbare,<br />

Scanner-spezifische<br />

Schwellenwerte überschritten werden.<br />

Diese Schwellenwerte tragen zu einer<br />

Stabilisierung des Portscans bei und<br />

vermeiden Falschmeldungen. Denn es<br />

kommt immer wieder vor, dass ein<br />

gescanntes System just zum Zeitpunkt<br />

des Scans temporär nicht erreichbar<br />

ist oder dass bei Scans aus dem Internet<br />

bei aggressiveren Timing-Werte<br />

der Portscan-Tools nicht immer alle<br />

offenen Ports zuverlässig erkannt werden.<br />

n Bei jeder Meldung wird geprüft, ob sie<br />

bereits durch andere Output-Agenten<br />

mit derselben Report-Zielgruppe beziehungsweise<br />

vom selben Output-Agenten<br />

aufgrund der Ergebnisse eines anderen<br />

Scanners berichtet wurden. In<br />

diesem Fall kann die erneute Meldung<br />

gänzlich unterdrückt oder explizit als<br />

Bestätigung eines bereits bekannten<br />

Sachverhalts gekennzeichnet werden.<br />

n Diskrepanzen zwischen den Ergebnissen<br />

verschiedener Scanner sind im Regelfall<br />

legitim und können etwa durch<br />

unterschiedlichen Scanzeitpunkt,<br />

Scanumfang oder Scannerstandort<br />

verursacht werden. Diese unterschiedlichen<br />

Sichten auf dasselbe System gilt<br />

es im Report geeignet aufzubereiten,<br />

zum Beipsiel indem pro Berichtspunkt<br />

die aktuell vorliegenden Ergebnisse der<br />

unterschiedlichen Scanner aufgeführt<br />

werden. In der Konfiguration wird jeder<br />

Scanner einer Gruppe zugeordnet,<br />

innerhalb derer alle Sensoren dieselbe<br />

Sicht haben sollten, um Inkonsistenzen<br />

erkennen zu können.<br />

Durch Veränderungen der Scanner-Infrastruktur<br />

kann es von Zeit zu Zeit notwendig<br />

werden, den gespeicherten Datenbestand<br />

zu bereinigen. In Dr. Portscan<br />

enthaltene und optional zu verwendende<br />

Skripte löschen beispielsweise Einträge<br />

mit sehr alten Zeitstempeln, eines bestimmten<br />

Scanners, (wenn dieser außer<br />

Betrieb genommen wurde), alle Einträge<br />

in einem bestimmten Netzbereich oder<br />

alle Einträge zu einer IP-Adresse, (zum<br />

Beispiel wenn im eine Maschine durch<br />

eine andere mit derselben IP-Adresse ersetzt<br />

wird).<br />

Installation und<br />

Inbetriebnahme<br />

Die folgende Installationsbeschreibung<br />

geht davon aus, dass der Delta-Reporter,<br />

die Output-Agenten und die Datenbank<br />

auf derselben Maschine installiert werden.<br />

Die Scanner laufen im Gegensatz<br />

dazu auf beliebigen Systemen. Sie müssen<br />

lediglich ihre Scanergebnisse an die<br />

zentrale Delta-Reporting-Instanz übermitteln<br />

können.<br />

Die aktuellste Version von Dr. Portscan<br />

<