• Teilen
  • Bookmark "Server Sicherheit – eine kleine Zusammenfassung" auf del.icio.us
  • Bookmark "Server Sicherheit – eine kleine Zusammenfassung" auf Digg
  • Bookmark "Server Sicherheit – eine kleine Zusammenfassung" auf Reddit
  • Bookmark "Server Sicherheit – eine kleine Zusammenfassung" auf StumbleUpon
  • Bookmark "Server Sicherheit – eine kleine Zusammenfassung" auf Facebook
  • Bookmark "Server Sicherheit – eine kleine Zusammenfassung" auf Twitter
  • Bookmark "Server Sicherheit – eine kleine Zusammenfassung" auf Slashdot

Server Sicherheit – eine kleine Zusammenfassung

Diese Liste soll dem Leser einen kleinen Überblick über grundlegende Sicherheitsmaßnahmen für Homeserver bzw. Server verschaffen. Alle hier erwähnten Maßnahmen stellen alleine noch keine wirkliche Sicherheit dar, sondern können nur Teil eines Sicherheitskonzeptes sein! Diese Auflistung erhebt keinerlei Ansprüche auf Vollständigkeit!

Absolute Grundlagen

Zunächst eine kleine Auflistung grundlegender, eigentlich selbstverständlicher Dinge:

  • Sichere Passwörter: für Server weit über 8 Stellen; mit Zahlen, Groß- und Kleinbuchstaben und Sonderzeichen, pwgen kann hier helfen. Diese Passwörter auf keinen Fall in Textdateien auf dem Server oder einem anderen System speichern
  • Wenn möglich für jeden Dienst ein anderes Passwort verwenden (z.B. auf keinen Fall das MySQL root Passwort auch für den Admin User auf dem System verwenden)
  • Aus Fehlern vergangener Lücken/Einbrüche lernen; bei einem erfolgreichen Einbruch das ganze System neu aufsetzen
  • Sicherheit ist kein Spass, Lücken können ernsthafte Folgen haben
  • Nichts für Anfänger: wenn dann erst einmal im geschützten Heimnetz ohne offene Ports (Portweiterleitungen und -umleitungen) Erfahrung sammeln

Aktuell bleiben

Dies bezieht sich sowohl auf Softwareversionen des Systems als auch auf das Wissen des Admins.

Admin

  • Maillinglisten der verwendeten Software und Distribution lesen, damit man über evtl. Sicherheitslücken schnellst möglichst informiert wird und so reagieren kann
  • IT-News Seiten wie heise.de oder golem.de häufig besuchen und über Trends, Sicherheitslücken & co. informieren
  • Schnell auf Sicherheitslücken reagieren
  • Viele Anleitungen/HowTos und vor allem Bücher lesen, um ständig dazu zu lernen

Software

  • System aktuell halten: regelmäßige Updates, cron-apt oder apti-cron können etwas Arbeit abnehmen

Backup

Regelmäßige Backups helfen bei Defekt der Hardware das System schnell wieder herzustellen. Aber auch im Fall eines Hacks, wenn das System anschließend neu aufgesetzt wird, kann auf die Sicherungen zurückgegriffen werden. Dies ist aber nur ratsam, wenn der Angreifer die Backups nicht manipulieren konnte. Vorteilhaft ist es folglich, wenn der Backupclient keinen Zugriff auf die Backups und nicht der Client die Backups schreibt, sondern der Backupserver die Backups „abholt“. Sehr zu empfehlen ist hier beispielsweise das Sicherheitskonzept von Bacula.

Firewall & offene Ports

Der Umstand, dass Homeserver meistens hinter einem Router mit eingebauter Firewall betrieben werden, verschafft bei einer richtigen Konfiguration jener schon eine gewisse Sicherheitsbasis.

  • Möglichst wenige Ports nach außen hin öffnen, HTTP(S) und SMTP reichen oftmals schon
  • Wenn der SSH Port geöffnet wird, dann nur mit dem entsprechenden Sicherheitsmaßnahmen, wie Verlegen der Ports, Port-Knocking, Login mit Passwort verbieten, nur Key erlauben! Viele dieser Maßnahmen sollten so oder so in Betracht gezogen werden! Es ist eher der Einsatz eines VPN (z.B. OpenVPN), statt die Öffnung des SSH-Ports zu empfehlen
  • Ports für lokale Dienste wie NFS, CUPS, SAMBA, etc. auf keinen Fall im Router öffnen
  • Nur Ports für Dienste öffnen, die man wirklich durchgeblickt hat und über deren Sicherheit man sich sicher ist.
  • Nur die Software installieren, die wirklich benötigt wird. Hier gilt wie für offene Ports je mehr Software/offene Ports, desto höher die Wahrscheinlichkeit einer Sicherheitslücke in einer dieser Komponenten

Webserver & Webanwendungen

  • Bei Webanwendungen gilt wieder: aktuell halten
  • Wirklich nur der Öffentlichkeit Zutritt ermöglichen, wenn der Inhalt auch für diese bestimmt ist
  • Anwendungen wie phpMyAdmin wenn überhaupt unter geheimen Subdomains laufen lassen, die durch eine zusätzlicher HTTP Auth gesichert ist oder Zugang nur für das interne Netzwerk erlauben.
  • Administrationsbereich eines CMSes schützen
  • Rechte der Dateien der Webanwendung überprüfen
  • Sichere Webanwendungen verwenden, auf CMSe verzichten, die für ihre Sicherheitslücken bekannt sind
  • Bei PHP Webanwendungen in eine Sandbox/in das Webroot einsperren und Safemode aktivieren, außerdem evtl. mod_security verwenden. Auch diese Maßnahmen stellen alleine noch keine wirkliche Sicherheit dar, sondern sind wieder nur Teil eines Sicherheitskonzeptes!

Rechte, Skripte & Co.

  • Skripte, die wichtige Daten oder Passwörter enthalten (z.b. die MySQL Zugangsdaten in einem MySQL-Dumper) sollten von anderen Benutzern nicht lesbar sein → Schreib-, Lese- und Ausführrechte z.B. nur für Root
  • Skripte, die mit Root-Rechten regelmäßig via Cron-Jobs ausgeführt werden, sollten wirklich nur von Root beschreibbar sein, sonst könnte der Angreifer den Inhalt der Skripte manipulieren und so beliebige Befehle mit Root-Rechten ausführen
  • Root-Login allgemein verbieten, sudo verwenden
  • Loggen, wo es nur geht, auf keinen Fall Logging abschalten. Die Rechte von Logdateien evtl. so verändern, dass der Angreifer sie nicht manipulieren kann.
  • Skripten aus fremden Quellen nicht blind vertrauen, sondern des Source-Code zuvor überprüfen

Zusätzliche Tools

  • Tools wie chkrootkit und rkhunter zur Rootkitbekämpfung nutzen
  • Durch sichere Passwörter sinkt die Wahrscheinlichkeit, dass eine Bruteforce Attacke Erfolg erzielt. Fail2ban oder Denyhosts können Bruteforcer bei einer gewissen Anzahl an gescheiterten Versuchen bannen, bieten aber nur bedingt mehr Sicherheit, da der Angreifer einfach mit einem neuen Computer (mit anderer IP-Adresse) aus seinem Botnetz vorbeischauen könnte.
  • Täglich die Logs kontrollieren: Tools wie Logcheck können auch hier etwas Arbeit ersparen, ein richtiger Blick in die Logs bleibt trotzdem nicht erspart (Logcheck könnte auch Fehler enthalten)
  • In die globale bashrc ein Befehl setzen der bei jedem Login über diesen benachrichtigt (z.B. versenden einer Mail oder Jabbernachricht)
  • Regelmäßig Sicherheitsscanner wie OpenVAS einsetzen, Nicht blind der eigenen Sicherheit trauen, sondern ausprobieren

Links

Diskussion

Geben Sie Ihren Kommentar ein. Wiki-Syntax ist zugelassen:
ENQRT
 
  • Teilen
  • Bookmark "Server Sicherheit – eine kleine Zusammenfassung" auf del.icio.us
  • Bookmark "Server Sicherheit – eine kleine Zusammenfassung" auf Digg
  • Bookmark "Server Sicherheit – eine kleine Zusammenfassung" auf Reddit
  • Bookmark "Server Sicherheit – eine kleine Zusammenfassung" auf StumbleUpon
  • Bookmark "Server Sicherheit – eine kleine Zusammenfassung" auf Facebook
  • Bookmark "Server Sicherheit – eine kleine Zusammenfassung" auf Twitter
  • Bookmark "Server Sicherheit – eine kleine Zusammenfassung" auf Slashdot
Sonstiges
Drucken/exportieren
Archiv

Archivierter Inhalt der alten Seite