Linux-Server einrichten mit Fedora - so geht's
Kleine, sogenannte Home-Server kommen aktuell an vielen Orten zum Einsatz: zumeist in Form eines NAS-Servers. Doch warum auf halbem Weg stehen bleiben? PC Magazin Professional zeigt, welche Vorteile es bringt, einem Linux-Server typische Verwaltungsaufgaben für zu Hause und im Büro zu übergeben. So richten Sie einen Linux-Server für ein NAS, Medienzentrum & Co. ein.

Warum Linux als kleinen Server in einem solchen Umfeld einsetzen, wenn es problemlos möglich ist, die dafür benötigten Funktionalitäten über einen modernen NAS-Server einzurichten und bereitzustellen? Dafür gibt es verschiedene Gründe: Der erste und fast schon wichtigste ist die Sicherheit...
Warum Linux als kleinen Server in einem solchen Umfeld einsetzen, wenn es problemlos möglich ist, die dafür benötigten Funktionalitäten über einen modernen NAS-Server einzurichten und bereitzustellen?
Dafür gibt es verschiedene Gründe: Der erste und fast schon wichtigste ist die Sicherheit. Es gibt immer wieder Löcher und Bugs in zentralen Software-Komponenten, die es möglich machen, Computersysteme zu kompromittieren und zu in zieren.
Sicher stellen auch die Anbieter von NAS-Systemen immer wieder Firmware-Updates für ihre Produkte bereit. Diese dienen aber in der Regel nicht dazu, kurzfristig Sicherheitslücken zu schließen, sondern sie erweitern die Funktionalität der Systeme und bringen die Komponenten auf den aktuellen Stand. Deswegen erscheinen sie in relativ großen Zeitabständen, sodass manche Sicherheitslücken monatelang offen bleiben.
Je nach Qualität des Herstellers kann es auch nach einiger Zeit nur noch wenige oder gar keine Updates mehr für einzelne NAS-Systeme geben. Damit sind sie für Server, auf denen immerhin kritische Daten für das eigene Büro gelagert werden und die in der Regel täglich mehrere Stunden im Einsatz sind - vor allem wenn es sich um ältere Produkte ohne Aktualisierungen handelt - nur bedingt geeignet.
Bei Linux ist das anders, hier stehen die Patches üblicherweise nach kurzer Zeit zur Verfügung, und der Server lässt sich so konfigurieren, dass er sich zu bestimmten Zeiträumen, zum Beispiel täglich, über einen mithilfe eines Zeitplaners durchgeführten Job selbst aktualisiert, ohne dass ein Anwender dazu aktiv werden muss. Das bringt in kleinen Firmen ebenso wie in Büros von Freiberuflern, aber auch im Heimnetzwerk, wo oft kein IT-Fachwissen existiert, große Vorteile mit sich.
Flexibilität und geringe Hardware-Ansprüche
Ein weiteres wichtiges Argument, das für Linux spricht, ist die Flexibilität. Bei Linux entscheidet nicht der Server-Hersteller, welche Funktionen das System unterstützen soll, sondern der Anwender. Läuft in einem kleinen Netzwerk beispielsweise bereits ein DNS- oder ein DHCP-Server (etwa auf dem Router), muss sich der Benutzer nicht mit der Thematik auseinandersetzen, diese Funktionalität zusätzlich auch noch auf dem neuen Server zu implementieren.
Benötigt er aber einen VPN-Zugang, so kann er sich jederzeit entscheiden, dieses Feature auf seinem Linux-basierten Server zu realisieren. Bei einem NASServer wäre das so gut wie unmöglich, es sei denn, der Hersteller implementiert gerade sowieso VPNFunktionen auf seinen Geräten. In vielen Firmen und Büros gibt es zudem heutzutage alte PCs, die sich für den Desktop-Einsatz nicht mehr eignen, zum Beispiel weil sie zu wenig Speicher haben, oder weil die Grafikkarte modernen Anwendungen nicht mehr genügt.
Oftmals übernehmen auch Tablets die Aufgaben, die früher von Desktop-Rechnern durchgeführt wurden, so dass Letztere plötzlich frei sind. Egal, aus welchem Grund, solche Hardware kann immer bestens den Job eines Home Servers übernehmen. Das gilt zumindest solange, wie das betroffene System nicht ein so hohes Alter aufweist, dass es über keine leistungsfähigen Energiesparfunktionen verfügt.
Es ist deutlich billiger, ein paar Festplatten nachzurüsten und in dem alten PC ein Linux-RAID als Speichersystem einzurichten, als einen NAS-Server mit neuen Festplatten zu kaufen.

Das Bereitstellen von genug Speicher ist auf einem Linux-Home-Server also ebenfalls kein Problem. Außerdem sind Linux-basierte Ex-Desktops oftmals schneller als Low-End-NAS-Systeme, da sie in der Regel einen besseren Prozessor und mehr Arbeitsspeicher mitbringen.
Warum gerade die Fedora - Distribution?
Viele Anwender stehen dann vor der Frage, welche der vielen unterschiedlichen Linux-Distributionen sie am besten für den Einsatz als Server im kleinen Büro oder auch im Heimbereich verwenden sollen.
Dieser Beitrag zeigt Ihnen, wie sich die wesentlichen Funktionen eines solchen Servers, zu denen beispielsweise die Funktionen eines DHCP-, File- und Medien-Servers gehören, mithilfe der zurzeit in der Version 20 aktuellen Linux Distribution "Fedora" realisieren lassen.
Die Entscheidung für Fedora fiel, weil diese Linux-Version sehr gut gepflegt wird und stets über aktuelle Software verfügt. Fedora Linux dient als eine Art Testumgebung für die Enterprise Linux-Varianten von Redhat. Die Firma führt neue Funktionen und Programme immer zuerst in Fedora ein und testet sie in diesen Versionen, bevor diese Möglichkeiten in die Enterprise-Versionen einfließen.

Das bedeutet, Anwender von Fedora arbeiten stets mit aktuellen Paketen und Kernel-Versionen. Damit ist dafür gesorgt, dass alle Features, die Anwender in kleinen und Heimnetzwerken benötigen, auch verfügbar sind und funktionieren.
Ein weiterer nicht zu unterschätzender Vorteil: ITFachleute und Anwender, die beispielsweise in ihrer Firma bereits Erfahrung mit der Verwaltung eines Redhat-Servers gemacht haben, kommen auch mit diesen Systemen sehr schnell zurecht.
Wer nun denkt, dass Fedora vielleicht für den Einsatz in einem kleinen Netzwerk oder Büro zu progressiv und instabil sei, da die Software nicht ausreichend getestet wurde, kann ganz beruhigt sein. Die Stabilitätsanforderungen an einen solchen Server sind bei Weitem nicht so hoch wie die an einen Server im Rechenzentrum, und die Schlüsselkomponenten wie Kernel und DHCP-Server sowie Samba für das Bereitstellen von Dateien im Netz haben schon eine sehr lange Entwicklungszeit hinter sich.Instabilitäten spielen da kaum eine Rolle.
Weitere wichtige Argumente, die für Fedora sprechen, sind Verbreitung und Support. Treten einmal Probleme auf, so können Anwender aufgrund der großen Nutzerbasis im Internet leicht Lösungen finden. Außerdem steht zusätzlich eine große Fedora-Community zur Verfügung, die Anwendern beim Beseitigen von Schwierigkeiten hilft.
Installation des Servers
Für diesen Beitrag kam die Version Fedora 20 in der 64-Bit-Version auf einem Dual-Core-Rechner mit 2,4 GHz-Taktfrequenz und vier GByte RAM zum Einsatz. Die Festplattenkapazität des eingesetzten Systems betrug zwei TByte, davon wurde der meiste Speicherplatz allerdings für Multimedia-Dateien genutzt.
Das Fedora-Project sagt, dass Betriebssystem sei auf Rechnern mit einer 1-GHz-CPU mit einem GByte RAM und zehn GByte Festplattenplatz lauffähig, in diesem Fall hat man aufgrund der schlechten Performance aber nicht allzu viel Spaß an der Lösung.

Wer wirklich mit dieser minimalen Konfiguration arbeiten möchte oder muss, sollte auf den recht speicherfressenden Gnome-Desktop verzichten und eine genügsamere Oberfläche wie beispielsweise XFCE verwenden.
Damit Fedora in der Standardinstallation mit Gnome richtig läuft, sollte schon eine Dual-Core-CPU mit mindestens 2 GByte RAM zur Verfügung stehen. Wenn die Hardware erst einmal bereitsteht, können Sie an die Installation des Basis-Systems gehen.
Dazu ist es am einfachsten, die Installations-DVD von der Webseite unter www.fedoraproject.org herunterzuladen und auf einen Rohling zu brennen. Anschließend wird der zukünftige Home-Server von der neu gebrannten DVD gestartet. Daraufhin startet ein Installationsprogramm, das die wesentlichen Konfigurationsparameter abfragt und die Installation durchführt.
Dazu gehören beispielsweise die Konfiguration der Datenträger oder die Einrichtung des Netzwerks. Wollen Anwender ein RAID-Array einsetzen, so müssen sie nicht unbedingt einen RAID-Controller in den Server einbauen, da das Installationsprogramm im Rahmen der Datenträgerbereitstellung auch das Anlegen von Software-RAIDs unterstützt.

Fedora kann dabei mit den RAID-Leveln 0, 1, 4, 5, 6 und 10 umgehen. Für einen Server mit zwei Platten, der auf Geschwindigkeit ausgelegt ist, würde sich RAID-0 empfehlen.
Liegt Ihr Fokus aber mehr auf Datensicherheit, so sollten Sie sich an dieser Stelle für eine RAID-1-Spiegelung entscheiden. Im Rahmen der Installationsroutine steht dem Nutzer auch die Option zur Verfügung, nun die zu verwendende Software zu selektieren.
Wir entschieden uns an dieser Stelle für den Einsatz eines minimalen Linux-Systems mit grafischer Benutzeroberfläche und dem Gnome-Desktop. Es ist grundsätzlich möglich, alle benötigten Pakete bereits während des Setups auszuwählen und zu installieren. In der Praxis werden sich gerade die Anforderungen an einen Server im Umfeld kleiner Netzwerke oder auch im SOHO-Bereich (Small Office, Home Office) aber immer wieder ändern. Aus diesem Grund wollen Nutzer dann auch immer wieder Software installieren oder löschen.
Nachdem die Grundinstallation ausgeführt wurde, verfügt der Linux-Server dann über eine funktionierende Netzwerkanbindung und eine grafische Benutzeroberfläche.
Ein wichtiger Bestandteil: der DHCP-Server
Damit die Namensauflösung auch im kleinen Netzwerken richtig funktioniert, soll der hier vorgestellte Server auch die Funktionalität eines DHCPServers bereitstellen, damit die Namensauflösung funktioniert.
Die Installation des DHCP-Servers läuft über den Befehl yum install dhcp. Sobald dieser Vorgang abgeschlossen ist, muss der Nutzer dann noch die Datei /etc/dhcp/dhcpd.conf an die lokalen Gegebenheiten angepassen. Wie eine solche Datei aussehen könnte, zeigt das Beispiel im Kasten auf der Seite 63. Danach kann der Nutzer den DHCP-Dienst mit dem Befehl "systemctl start dhcpd.service" starten.
Soll er bei jedem Hochfahren des Rechners automatisch starten, so kann man dies durch den Befehl "systemctl enable dhcpd.service" erreichen. Damit ist die Einrichtung des DHCP-Dienstes auch schon abgeschlossen.
Dateien bereitstellen: der File-Server
Eine der wichtigsten Aufgaben eines Servers besteht gerade in kleineren Netzwerken darin, den Client- Systemen Dateifreigaben - sogenannte Shares - bereitzustellen, auf denen die Nutzer dann ihre Daten ablegen können. Dabei kann es sich sowohl um Bilder und andere Multimedia-Dateien als auch um Dokumente oder Installationsdateien für Software handeln.
Ein File-Server für heterogene und Windows- Netze lässt sich unter Linux mithilfe des Pakets samba leicht realisieren. Zur Installation von samba muss ein Anwender zunächst den folgenden Befehl aufrufen: yum install samba samba-common samba-client
Nach dem Setup muss er dann zunächst einmal dafür sorgen, dass samba mit der auf Fedora-Systemen standardmäßig aktiven Sicherheitslösung SELinux klarkommt. Der einfachste Weg dazu besteht darin, SELinux zu deaktivieren. Das funktioniert über die Datei /etc/selinux/config.

Wer hier den Wert SELINUX, der üblicherweise auf enforcing steht, neu vergibt, erreicht dass SELinux seine Arbeit einstellt. Der Wert permissive dürfte dabei für einen Server in solchen Umgebungen ausreichen.
Soll SELinux hingegen nicht deaktiviert werden, so müssen Sie anders vorgehen: Der Befehl: setsebool -P samba_enable_home_dirs on sorgt bei Bedarf dafür, dass sich die Home-Verzeichnisse der Benutzer auch dann über samba im Netz teilen lassen, wenn die Lösung SELinux weiter aktiv ist.
Im nächsten Schritt müssen Sie dann das Verzeichnis neu anlegen, das in der Installation als Netzwerkspeicher dienen soll: Das kann dann zum Beispiel ein Verzeichnis wie /home/shares sein. Der eigentliche Speicherort des Verzeichnisses spielt im laufenden Betrieb keine Rolle, er muss nur auf dem richtigen Storage-Device liegen.

Damit SELinux dem Programm samba erlaubt, das betroffene Verzeichnis im Netz bereitzustellen, muss es mit dem Label samba_share_t versehen werden. Das können Sie in diesem Fall mit folgenden Befehl einfach erreichen: chcon -t samba_share_t /home/shares
Allerdings geht ein solcher Eintrag wieder verloren, wenn das Dateisystem mit einem neuen Label versehen wird oder wenn Befehle wie restorecon auf dem System ablaufen. Eine dauerhaftere Lösung besteht darin, das Labeling mit semanage durchzuführen. In diesem Fall müssen Anwender die folgenden beiden Befehle auf dem System ausführen; semanage fcontext -a -t samba_share_t ,/home/ shares(/.*)?' restorecon -R -v /home/shares".
Im laufenden Betrieb können Sie dann den Befehl ls -ldZ /home/shares dazu verwenden, die vergebenen Label anzuzeigen und auf diese Weise den Erfolg der Konfiguration zu überprüfen.
Nach der Konfiguration von SELinux und der Vorbereitung des freizugebenden Verzeichnisses kommt nun die eigentliche samba- Konfiguration an die Reihe. Dazu öffnet der Benutzer die Datei /etc/samba/smb.conf und gebt der zu verwendenden Workgroup einen Namen. Außerdem muss er in der Zeile hosts allow angeben, welche IP-Adressen auf die Freigaben zugreifen dürfen. Ein Eintrag wie hosts allow = 127. 192.168.1. erlaubt beispielsweise dem Localhost und allen Clients aus dem Subnetz 192.168.1.0 den Zugriff.
Die anderen Parameter können bleiben wie sie sind, es ist nun nur noch die Definition des Shares hinzuzufügen. Wie diese aussehen könnte, zeigt das Beispiel im Kasten auf Seite 64. Sollen mehrere unterschiedliche Shares zum Einsatz kommen, so folgen die Einträge einfach nacheinander.
Das Programm samba lässt sich auch einsetzen, um einen Domänen-Controller unter Windows zu betreiben und um Drucker im Netz bereitzustellen. Damit die Anwender im Netzwerk es auch wirklich nutzen können, sind zum Abschluss der Konfiguration nur noch die zugreifenden Benutzerkonten oder -gruppen erforderlich.

In der Praxis ist es gerade in kleinen Installationen mit einem begrenzten Anwenderkreis sinnvoll, für den Zugriff auf die Freigaben die gleichen Credentials zu verwenden, die die Anwender bereits auf ihren Windows-Clients verwenden. In diesem Fall muss der für das System Verantwortliche beim Einbinden des Shares unter Windows kein zusätzliches Login-Konto eintragen.
Multimedia-Daten verteilen: der Medien-Server
Wer einen Linux-Server in seinem Netzwerk betreibt, kann dazu den Server mediatomb verwenden, um DLNA- (Digital Living Network Alliance: eine Vereinigung, die eine Reihe von Protokollen und Standards zur Vernetzung entwickelt hat) und UPnP-Funktionalitäten (Universal Plug and Play) bereitzustellen.
Die Installation gestaltet sich denkbar einfach und kann vom Nutzer mit folgendem Befehl gestartet werden: yum install mediatomb.
Anschließend finden Sie die Konfigurationsdatei unter dem Pfad /etc/mediatomb.conf. Hier ist es lediglich erforderlich, unter MT_INTERFACE den Namen des zu verwendenden Interfaces anzugeben.
Danach können Sie den Server über den Befehl mediatomb -port 50500 starten. Im nächsten Schritt sollten Sie zunächst einmal testweise mit einem Browser über die URL https:// {IP-Adresse des Servers}:50500 auf das Web-Interface des DLNA/UPnP-Systems zugreifen.
Funktioniert das, so ist alles in Ordnung, und der Server kann wieder beendet werden. In einem nächsten Schritt können Sie nun mediatomb so einrichten, dass der Server beim Systemstart automatisch aktiv ist.
Das geht über den Befehl: systemctl enable mediatomb.service Der anschließende Start der Software als Dienst kann vom Nutzer über systemctl start mediatomb.service veranlasst werden.
Nach dem Abschluss dieser Arbeiten sind die Nutzer dazu in der Lage, über das Web- Interface die auf dem Server verfügbaren Mediadateien wie Bilder und Videos zu Mediatomb hinzuzufügen. Anschließend kann jedes im Netz vorhandene UPnP-fähige Gerät darauf zugreifen.
Fazit:
Ein Server, der vielfältige Dienste in kleinen Netzen sowohl in Büros und kleinen Betrieben als auch daheim leistet, lässt sich auf Basis von Fedora 20 einfach einrichten, verwalten und aktualisieren.
Wer will, kann sein bestehendes System im laufenden Betrieb noch erweitern, etwa durch die Installation der bereits zu Beginn erwähnten VPN-Funktionalitäten oder durch die Implementierung einer eigenen Cloud-Lösung mit OwnCloud.
Damit steht ein flexibles, sicheres, leistungsfähiges und preisgünstiges System für viele Anwendungszwecke zur Verfügung.