Netzwerkpraxis

Linux und Windows miteinander vernetzen

13.10.2015 von Thomas Joos
Auch Windows- und Linux-Rechner müssen miteinander kommunizieren, wenn sie in einem gemeinsamen Netzwerk arbeiten. Dieser Workshop zeigt, wie man diese Vernetzung realisieren kann.

Sicherheitstests auf Linux-Basis in Windows-Netzwerken

Wollen Administratoren Sicherheits- und Penetrationstests im Netzwerk durchführen, kommen sie kaum um Linux herum. Hier gibt es spezielle Distributionen, die sich auf das Thema konzentriert haben. Auch viele Überwachungsumgebungen bauen auf Linux auf und sollten daher mit Windows-Netzwerken integrierbar sein. Die Live-Distributionen Kali-Linux bietet zum Beispiel hunderte Sicherheits- und Penetrations-Tools für Netzwerke, die auch in Windows-Netzwerken sinnvoll eingesetzt werden können. Kali basiert auf Debian Wheezy, kann also wie ein normales Debian-System im Netzwerk integriert werden.

Mit Kali können Sie auch Windows-Netzwerke nach Angreifern untersuchen und Sicherheitslücken von Windows-Servern und -Rechnern schließen.

Für eine Installation von Kali booten Sie mit der Live-DVD und wählen danach Applications\System Tools\Install Kali Linux. Über einen Assistenten können Administratoren anschließend Kali Linux fest auf dem PC oder in der VM installieren. Nach der Grundeinrichtung besteht bei den meisten Linux-Distributionen eine der ersten Aufgaben darin die Netzwerkanbindung zu überprüfen. Dazu öffnen Sie am besten immer eine Konsole geöffnet. Das Icon dazu ist im oberen Bereich des Fensters zu finden. Mit ifconfig -a wird die Netzwerkverbindung bei den meisten Distributionen angezeigt.

Netzwerk- und Active-Directory-Einstellungen vornehmen

Die Einstellungen zum Netzwerk können Sie bei neuen Distributionen auch mit einem Editor anpassen. Dazu bearbeiten Sie den Inhalt der Datei interfaces im Verzeichnis etc\network auf dem Linux-System. Auf diesem Weg passen Sie zum Ubuntu an. Sie können die Datei mit jedem Editor bearbeiten, zum Beispiel mit vi, dem Standard-Editior in den meisten Linux-Distributionen. Nach der Änderung der Konfigurationsdateien starten Sie das Netzwerk mit sudo /etc/init.d/networking restart neu. Die Namensauflösung und DNS-Server passen Sie wiederum in der Datei /etc/resolv.conf an. Auch diese können Sie mit vi bearbeiten.

Linux-Distributionen bieten häufig verschiedene Oberflächen zur Konfiguration der Netzwerk-Anbindung.

Kerberos und Linux mit Winbind

Um und Active Directory gemeinsam zu betreiben, müssen Sie über kurz oder lang auf Kerberos setzen. Bei vielen Distributionen, zum Beispiel Ubuntu, installieren Sie Kerberos über die Systemerweiterung Winbind. In einigen Linux-Distributionen, auch in Ubuntu, bearbeiten Sie dazu die Datei /etc/resolvconf/resolv.conf.d/base. Um die Änderungen zu überprüfen, starten Sie den Server mit sudo reboot neu. Um zum Beispiel auf Linux-Servern die notwendigen Erweiterungen für die Anbindung an Active Directory herunterzuladen, verwenden Sie den Befehl:

sudo apt-get install krb5-user libpam-krb5 winbind samba smbclient libnss-winbind libpam-winbind

Haben Sie die notwendigen Erweiterungen installiert, öffnen Sie die Kerberos-Konfigurationsdatei krb5.conf im Verzeichnis etc. Hier müssen Sie notwendige Daten für die Domänenanbindung vornehmen. Wenn die Kerberos-Anbindung funktioniert, können Sie der Active Directory-Domäne beitreten. Dazu verwenden Sie am besten Samba. Die entsprechende Konfigurationsdatei finden Sie im Verzeichnis smb.conf /etc/samba.

Suse Linux Enterprise Server für Microsoft Azure

In vielen Unternehmen sind Linux-Server nicht nur lokal auf Servern oder virtuellen Maschinen im Einsatz, sondern müssen auch in der Cloud funktionieren. Vor allem in den Diensten Amazon Web Services, Microsoft Azure und Google Compute Enigine ist der Betrieb von Linux-Servern wichtig, auch in Zusammenarbeit mit anderen Servern, auch von anderen Herstellern.

In Microsoft Azure erstellen Sie ebenfalls Linux-Server, die mit anderen Computern kommunizieren können.

Geht es um den Betrieb von virtuellen Servern in der Cloud, spielt vor allem SUSE Linux Enterprise Server eine wichtige Rolle. Der Linux-Server lässt sich in Microsoft Azure einbinden. Wie in Amazon EC2, arbeitet Suse auch mit Microsoft zusammen um virtuelle Server in Microsoft Azure zur Verfügung zu stellen. SLES lässt sich in Azure-Cloud-Dienste integrieren um eine einfach zu verwaltende Cloudumgebung bereitzustellen. Die Umgebung arbeitet mit anderen Servern und Dienste in Microsoft Azure zusammen. Durch die Samba-Technologie, lässt sich SUSE Linux Enterprise auch in Microsoft Azure nahtlos in alle bestehenden Microsoft Windows Datei- und Drucksysteme integrieren und unterstützt diese. Zusätzlich lässt sich die Lösung mit bereits vorhandenen Verzeichnis- und Domain-Infrastrukturen wie Microsoft Active Directory, NetIQ eDirectory und OpenLDAP verbinden. Sie können die Anbindung auch in einer Azure-Testumgebung durchführen und auf diesem Weg Linux mit Windows-Servern verknüpfen:

1. Rufen Sie im Azure-Portal die Option Virtuelle Computer\Neu\Aus Katalog auf.

2. Im Portal stehen verschiedene Anbieter zur Verfügung, zum Beispiel SUS mit SUSE Linux Enterprise Server.

3. Arbeiten Sie den Assistenten durch und lassen Sie den Linux-Server erstellen. Danach können Sie diesen verwalten, wie lokale Server auch und auch eine Anbindung an Windows-Netzwerke durchführen.

Virtuelle Linux-Server in Windows-Netzwerke einbinden

Mit Hyper-V in Windows Server 2012 R2 lassen sich Linux-Server nahezu genauso effizient nutzen, wie Windows-Server. Dazu hat Microsoft auch die Integration Services überarbeitet, mit denen sich Linux-Server optimal mit Hyper-V verbinden. Virtualisieren Sie Hardware, zum Beispiel Netzwerkkarten, ist Zusatzsoftware notwendig. Im Falle von Linux handelt es sich um die Linux Integration Services (LIS). Diese übernehmen die Steuerung der virtuellen Hardware und erlauben die Netzwerk-Kommunikation von Linux-Servern mit Windows und dem Rest des Netzwerkes.

Verfügt die Linux-Distribution, die Sie einsetzen, noch nicht über die aktuellen Linux Integration Services, können Sie diese kostenlos bei Microsoft herunterladen und manuell in der Distribution installieren. Achten Sie darauf, dass Sie für den Einsatz unter Windows Server 2012 R2 und Hyper-V Server 8.1 mindestens die Version 3.5 der Linux Integration Services benötigen.

Bei vielen Linux-Distributionen müssen Sie für die Installation noch eine Legacy-Netzwerkkarte für die Installation verwenden. Nachdem Sie LIS 3.5 installiert haben, können Sie diese aber gegen eine normale Netzwerkkarte ersetzen. Moderne Distributionen, wie auch Univention Corprate Server lassen sich problemlos mit Hyper-V virtualisieren und in bestehende Netzwerke einbinden. Auch eine Integration in Active Directory-Umgebungen ist auf diesem Weg möglich.

Virtuellen Linux-Computer können Sie auch mit den Livemigrations-Funktionen in Windows Server 2012 R2 nutzen, nicht nur die Hyper-V-Replikation. Arbeiten Sie mit Jumbo Frames im Netzwerk, müssen Sie ebenfalls auf LIS 3.5 setzen. Diese unterstützen Ethernet-Frames mit einer Größe von mehr als 1.500 Bytes. Auch VLANs lassen sich jetzt in Linux nutzen, wenn Sie mit Hyper-V virtualisieren.

Nachdem Sie den virtuellen Server erstellt und mit Linux installiert und gestartet haben, sollten Sie im ersten Schritt überprüfen, ob in der entsprechenden Distribution bereits Linux Integration Services (LIS) installiert sind. Dazu melden Sie sich mit root-Rechten an der Linux-VM an und verwenden den folgenden Befehl:

/sbin/modinfo hv_vmbus

In der Konsole überprüfen Sie die Anbindung von Linux an Hyper-V zur besseren Kommunikation im Netzwerk.

Anschließend zeigt Linux an, ob LIS installiert sind und welche Version im Einsatz ist. Wenn LIS nicht im Einsatz ist, laden Sie sich die ISO-Datei der LIS 3.5 bei Microsoft herunter und verbinden Sie diese als CD/DVD-Laufwerk mit der VM, auf der Sie die Version installieren oder aktualisieren wollen. Danach müssen Sie die ISO-Datei im Betriebssystem bereitstellen:

mount /dev/cdrom /media

Im Anschluss wechseln Sie in das Verzeichnis der Linux-Version, die Sie einsetzen. Eine Aktualisierung führen Sie mit dem Befehl ./upgrade.sh aus. Wenn noch keine Integration Services installiert sind, finden Sie im entsprechenden Verzeichnis auch eine SH-Datei, durch deren Aufruf Sie LIS installieren, zum Beispiel mit ./install.sh. Wir gehen im nächsten Abschnitt ausführlicher auf eine Neuinstallation ein.

Linux Integration Services installieren Sie am einfachsten über ein Linux-Terminal.

Sie können in einem Linux-Terminal überprüfen, ob die Treiber von LIS in das System eingebunden sind. Dazu verwenden Sie den Befehl /sbin/lsmod | grep hv. Im unteren Bereich bei hv_vmbus zeigt das Terminal die geladenen Treiber an. Folgende sind besonders wichtig:

hv_netvsc - Hierbei handelt es sich um den neuen Treiber für virtuelle Netzwerkkarten.

hv_utils - Dieser Treiber unterstützt zum Beispiel Key-Value Pair (KVP) Exchange mit virtuellen Linux-Computern. Diese Technik überträgt den vollqualifizierten Domänennamen an den Host, sowie die LIS-Version, die auf dem virtuellen Server installiert ist. Auch die IP-Adressen (IPv4 und IPv6) werden über diesen Treiber von der VM an den Host übertragen. Über diesen Treiber können Sie zum Beispiel mit der PowerShell Daten des virtuellen Linux-Computers abrufen. Außerdem verbindet diese Funktion die virtuellen Computer mit der Datensicherungslösung des Hosts. Auf diese Weise erkennt die Datensicherung den Zustand der virtuellen Linux-VM und erlaubt deren Sicherung im laufenden Betrieb.

hv_timesource - Dieser Treiber kann die Zeit zwischen VM und Host synchronisieren

hv_vmbus - Hierbei handelt es sich um einen Kommunikationskanal zwischen Host und der Linux-VM.

Samba als Ersatz für Microsoft Active Directory

Wenn es um die Authentifizierung von Benutzer und der Absicherung von Daten in Netzwerken geht, kommen Administratoren kaum um eine Windows-Domäne. Administratoren die aber auf Linux Dienste setzen wollen, können eine Windows-Domäne auch mit einem kostenlosen Samba-Server darstellen. Bis Samba 3.0 geht das allerdings nur auf Basis des veralteten Domänenmodells von Windows NT 4.0. Mit Samba 4 bieten die Entwickler eine komplett freie Software die ein Active Directory aufbauen kann.

Mit Samba 4 stellen die Entwickler einen Server für ein vollständiges Active Directory zur Verfügung.

Samba 4 steht auf verschiedenen Wegen als Linux-Distribution oder als bereits installierte virtuelle Festplatte auf Basis von Hyper-V (VHD), Open Virtualization Format (OVF) oder als VMware-Image, beziehungsweise KVM zur Verfügung. Den Download dazu finden Sie entweder bei SUSE. Auch Univention Corporate Server bietet eine Linux-Distribution mit Samba 4 und zusätzlich eine webbasierte Verwaltungsoberfläche.

Wer sich Samba in einer eigenen Linux-Installation direkt von den Entwicklern herunterladen will, findet die Installationsdateien und Anleitungen auf der Seite der Entwickler, ein Whitepaper zur Installation ist auf der Wiki-Seite von Samba zu finden.

IPCop ohne Linux-Fachwissen einrichten

Unternehmen die keine zentrale Datenablage suchen, sondern eine Firewall, können auch auf Distributionen wie IPCop setzen. IPCop ist eine freie Linux-Distribution die Netzwerke vor Angriffe aus dem Internet schützen kann. Nach der Einrichtung erfolgt die Verwaltung über ein Webinterface, wie bei den anderen Lösungen für Unternehmen.

Netzwerke lassen sich auch mit Linux-Server sichern.

Es gibt auch eine deutsche Community. IPCop stellt nach der Installation eine Firewall, einen Proxyserver auf Squid-Basis und einen DHCP-Server zur Verfügung. Auch Serverdienste wie Intrusion Detection (SNORT) und VPN, sowie dynamisches DNS sind verfügbar. Sie können IPCop aber nicht als Dateiserver nutzen. Nach der Installation ist die Verwaltungsoberfläche über http//<Servername>:81 oder https://<Servername>:8443 erreichbar. Der Datenverkehr der internen Netzwerkschnittstelle (Grün) und der Internetschnittstelle (Rot) lässt sich mit Grafiken anzeigen. So erkennen Sie auch Spitzenzeiten beim Internetzugriff und können entsprechend reagieren. IPCop kann auch Netzwerkprioritäten vergeben (Traffic Shaping) und ermöglicht das definieren von Grenzwerten für den Internetzugriff. IPCop kann außerdem auch Benutzer authentifizieren und dabei auf Samba oder Active Directory-Domänencontroller setzen. (hal)