Login
Immer anmelden
SSL Login

 
Newsletter
Werbung
Shopping
International Shopping
 
 


Yatego Shopping bei über 10000 Händlern und über
3 Mio. Artikel.


Linux

:

Linux-Bücher

Handy
Shop

  und Computer.

Viele Services

:

Apple iPad Reader,


Ratgeber,

 

Techniktops,

 

Yatego Clicks

  & über 3000

Gutscheine.

 
So, 23. April 2006, 00:00

Teil 2: Den Server absichern

Aufbau von /etc/sudoers

In der Datei befinden sich vordefinierte Kommentare, die helfen sollen, die Datei übersichtlich zu gestalten.

# /etc/sudoers
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL) ALL
schroedi ALL=(ALL) ALL

Den Eintrag root ALL=(ALL) ALL können Sie auskommentieren.

Mögliche Beispiele für die Verwendung von sudo:

sudo -u www-data vim /var/www/htdocs/index.html

Hier verwenden Sie den User www-data, um mit dem Editor die Datei index.html zu bearbeiten.

Um einen Server neu zu booten, verwenden Sie folgendes. Dieses Recht sollte nicht jedem Benutzer zugestanden werden.

sudo shutdown -r +15 "quick reboot"

Standardmäßig loggt sudo die Aktivitäten im Zusammenhang mit dem Sudo-Kommando ins Syslog, wo die Meldungen in den Dateien /var/log/auth.log oder /var/log/messages erscheinen. Beispiel:

Feb 20 16:22:38 127.0.0.1 sudo: schroedi : TTY=pts/1 ; PWD=/home/schroedi ;
USER=root ; COMMAND=/bin/ls -al /root/
Feb 20 16:23:12 127.0.0.1 sudo: schroedi : TTY=pts/1 ; PWD=/home/schroedi ;
USER=root ; COMMAND=/bin/cat /etc/passwd

Sollten Personen, die nicht Mitglieder der Sudoers sind (nicht in der Datei /etc/sudoers eingetragen sind), einen Befehl mit sudo ausführen wollen, wird dies ebenfalls geloggt und möglicherweise eine Email generiert.

Envelope-to: root@localhost
To: root@localhost
Subject: *** SECURITY information for localhost***
From: "M. Schroeder" <schroedi@localhost>
localhost : Jan 17 07:51:36 : schroedi : user NOT in sudoers ; TTY=pts/0 ;
PWD=/home/schroedi/.ssh ; USER=root ; COMMAND=/sbin/ifconfig eth0

An dieser Stelle werden Sie erkennen, dass sudo nicht nur ein erheblicher Sicherheitsgewinn sein kann, wenn Sie es restiktiv verwenden, sondern auch, dass Sie jederzeit nachvollziehen können, wer auf Ihrem Server was gemacht hat.

Diese Logging-Konfiguration kann ebenso durch Optionen in der Datei /etc/sudoers verändert werden.

Außerdem können Sie nun nach Art von Apple oder Ubuntu den Root-Account deaktivieren, da dieser zum Arbeiten nicht mehr verwendet wird. Ich verbiege in der Datei /etc/passwd die Standard-Shell auf /bin/false, danach sollte das Einloggen und das su - nicht mehr funktionieren.

root:x:0:0:root:/root:/bin/false

Server absichern

Firewall

Vorweg sollte gesagt werden:

Es wird nie und nimmer eine hundertprozentige Sicherheit geben. Dennoch können Sie es einen Angreifer so schwierig wie möglich machen, Ihren Server auszuhebeln. In diesem Kapitel möchte ich Ihnen zeigen, wie Sie Ihren Server mit einer Firewall absichern können, was es hierbei zu beachten gibt und vor allem, wo es den einen oder anderen Trick gibt.

Firewall in der Praxis

In der Praxis ist ein Server, der ohne Firewall betrieben wird, ein gefundener Spielplatz für üble Zeitgenossen und Skriptkiddies.

Der Betrieb einer Firewall ist also unumgänglich. Es ist nur eine Frage der Zeit, bis Ihr Server von einem Portscanner überprüft wird und dann durch einen Angreifer als offen erkannt wird.

Es gibt sicher zahlreiche Bücher über Firewalls und Serversicherheit. An dieser Stelle will ich Ihnen zeigen, wie Sie Ihren Server sicher machen können. Außerdem erhalten Sie einen Einblick in den Sinn und Zweck einer Firewall sowie deren Konfigurationsphasen.

Warum sollte man eine Firewall überhaupt einsetzen?

Auch wenn auf der Webseite einiger Provider erklärt wird, dass auf einem Rootserver eine Firewall nicht notwendig ist, ist es meines Erachtens sehr sinnvoll, seinen Rechner nur die Ports oder Dienste zur Verfügung stellen zu lassen, die Sie wirklich benötigen.

Ein weiterer Vorteil ist die Kontrolle des Datenverkehrs auf den einzelnen Ports. Sie können ihn entweder komplett unterbinden, nur von innen nach außen zulassen oder an einen bestimmten Port weiterleiten.

Außerdem werden Sie in einem weiteren Workshop-Teil lernen, wie Sie den ein- und ausgehenden Traffic ermitteln können und diesen grafisch aufbereitet als HTML-Datei darstellen.

Sofern Sie sich über eine Rechnerverbindung an Ihrem Server anmelden, dann sollten Sie zunächst dafür sorgen, dass Sie nur sichere Dienste verwenden. Verwenden Sie Telnet oder Dienste wie rlogin, sollten Sie wissen, dass das Passwort dort im Klartext übertragen wird. Es könnte also von jemandem mitgeschnitten (gesnifft) werden. Mit SSH werden die Anmeldepasswörter nicht im Klartext übertragen.

Sollten Sie sich immer über einen bestimmten Rechner auf Ihrem Server einloggen, dann können Sie diese Information ebenfalls für das Absichern verwenden. Sie können dann den SSH-Login auf eine bestimmte IP-Adresse limitieren oder, sofern Sie sich über einen Provider einwählen und nicht sicher sein können, dass Sie immer die gleiche IP-Adresse erhalten, einen Adressbereich definieren. In der Regel benutzen Provider immer den gleichen Pool von IP-Adressen.

Auch andere Dienste wie HTTP, POP3/IMAP oder SMTP sind gefragt bei der Gegenseite. Im Internet kursieren zahlreiche Exploits für einschlägige Servertypen. Wollen Sie einen Mailserver mit den Diensten POP und SMTP nur für einen Bereich von Personen oder Rechnern verwenden, dann können Sie diese Ports ebenfalls auf einen Bereich beschränken.

Ihr Ziel sollte es sein, nur die Ports zu öffnen, die Sie für den Betrieb des jeweiligen Dienstes benötigen. Das hat für Sie den Vorteil, dass ein Angreifer nicht umhin kommt, einen Exploit auf den Dienst anzuwenden, oder anderweitig manipulieren muss.

Firewall Policy

Jede Firewall ist nur so sicher wie die Idee, die dahinter steckt. Sie sichern aber nicht nur nach außen, sondern auch nach innen. Also sollten Sie für jeden Bereich, den Sie verwenden wollen, eine eigene Policy definieren.

Der erste wichtige Ansatz, den Sie festlegen sollten, ist, dass Sie alles prinzipiell dicht machen - alles sperren (Default Policy = DENY).

Danach haben Sie die Dienste, die Sie zur Verfügung stellen wollen. Diese müssen Sie öffnen, da sonst der Dienst nicht benutzbar ist.

Eine Default-Policy auf dem Papier könnte wie folgt aussehen:

  1. Grundsätzlich ist jeder Verkehr aller Protokolle und Dienste von innen nach außen und umgekehrt verboten, sofern dieser nicht ausdrücklich durch eine nachfolgende Regel gebilligt wurde.
  2. Von außen: Web-Zugang ist nur über die Ports http/https möglich.
  3. Für Wartungsarbeiten steht ein SSH-Zugang, der nur über den Administrationsserver möglich ist, zur Verfügung.
  4. ICMP-Echo-Anfragen für den Server sind aktiviert. Damit können Sie Ihren Server anpingen.

Die Administration des Servers werden Sie nun hoffentlich mit ssh durchführen. Hier können Sie einen IP-Adressbereich angeben, von dem aus der sshd verfügbar ist.

Kommentare (Insgesamt: 0 || Kommentieren )
Pro-Linux
Forum
Neue Nachrichten