Sicherheit

Cumputersicherheit ist in unserer heutigen Zeit das A und O. Die gilt auch insbesondere für Server, die über das Internet zu erreichen sind. Schnell kann ein unzureichend gesicherter Webserver zur Spamschleuder werden. Im folgendem Artikel möchte ich aufzeigen, welche Möglichkeiten es gibt, den SSH Zugang unter Linux abzusichern.

Die IT Welt wandelt sich sehr schnell, wesentlich schneller als noch vor 10 Jahren. Als Syadmin muss ich da natürlich auf dem laufenden bleiben. Neben Neuentwicklungen ist natürlich die Sicherheit ein wichtiges Thema. Und leider ist da ein Thema dabei, welches für mich eigentlich doch recht unverständlich ist und doch höre ich immer wieder davon. Die Rede ist vom „gehackten“ Servern. Von einem Hack kann jedoch oft überhaupt nicht die Rede sein, da die Server teils total ungeschützt im Internet sind. Weder der SSH Zugriff, noch der Root Login ist limitiert. Da ich selber einen Root-Server administriere, möchte ich gerne ein paar Hinweise geben, um den eigenen Server sicherer zu machen.

Zu erst einmal eine kurze Definition von SSH für alle diejenigen, die nichts damit anfangen können. SSH steht für Secure Shell und beschreibt ein Netwerkprotokoll, mit dem man verschlüsselt auf Server zugreifen kann. Unter in der Unix und Linux Welt gehört es zum Standardwerkzeug für die Administration von entfernten Geräten. Nun kommen wir aber zu den Möglichkeiten, den SSH Zugang abzusichern.

Authentifizierung über Public-Keys

Bei diesem Verfahren nutzt man eine asymmetrische Verschlüsselung, um den Nutzer zu authentifizieren. Dabei wird ein öffentlicher Schlüssel und ein privater Schlüssel erzeugt. Der öffentliche Schlüssel wird auf dem Zielsystem deponiert, während der private Schlüssel auf dem eigenem System verbleibt. Den privaten Schlüssel sollte man noch mit einer Passphrase sichern. Man sollte anschließend den Passwort Login auf dem Zielsystem deaktivieren. Damit können Brute Force Attacken, bei denen das Passwort durch probieren erraten wird, verhindert werden.

Fail2Ban

Das Tool Fail2Ban sollte auf keinem Server fehlen. Im Grunde beobachtet es die Anmeldeversuche und blockt die IP Adresse nach einer gewissen Anzahl von fehlgeschlagenen Anmeldeversuchen. Dabei lässt sich die Sperrdauer, die Anzahl der Anmeldeversuche, die Ports und zu überwachenden Dienste einstellen.

Paketfilter

Auch ein Paketfilter sollte zu den essentielen Sicheritsmaßnahmen zählen. Seit der Kernelversion 2.4 gehört iptables quasi zum Lieferumfang von Linux. Darin sind Regeln für die Behandlung von Paketen definiert. Zugegeben ist die Syntax nicht unbedingt userfreundlich gestaltet, jedoch sollte sich jeder Sysadmin einarbeiten. Hier kann ich das Tool UFW empfehlen. Die hier definierten Regeln werden nach iptables geladen und werden ebenfalls vom Kernel verarbeitet. Der Paktefilter sollte so eingestellt werden lassen, das nur die Ports, die tatsächlich benötigt werden, offen sind. Jeder offene Port ist ein Einfallstor. Daher sollten nur die notwendigen Ports offen sein.

Updates

Updates sollten absolut nicht vernachlässigt werden. Fehlende Sicherheitsupdates öffnen Tür und Tor für Hacker. Daher sollte dies absolut nicht auf die Leichte Schulter genommen werden. Natürlich ist gerade eine Downtime für Administratoren immer nicht so schön. Aber selbst da gibt es Anhilfe, so dass man den Server fast nicht neustarten muss. Seit der Kernelversion 4.0 lässt dieser sich live patchen ohne das komplette System neuzustarten. Leider lässt sich noch nicht alles live patchen, wie z.B. der Spectre Patch aber es ist schon einmal ein riesen Meilenstein. Ein Update der Dienste ist ganz schnell erledigt. Dazu muss der Server nicht neugestartet werden und der Neustart des Dienstes verläuft meist kaum merkbar. Also gibt es keinen Grund, Updates nicht durchzuführen.


21.02.2017

Kommentar verfassen