PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Rootserver und Sicherheit



LordDarkmage
02.04.05, 06:11
Hi!

Ich wollte mal nachhorchen wie es eigentlich mit Sicherheit so steht, wenn man einen Rootserver hat. Bislang habe ich meine beiden Server mit nem Paketfilter von http://harry.homelinux.org geschützt, ab und an mal chrootkit drüber laufen lassen und mein Debian immer so schlank wie möglich gehalten, damit nur die wirklich notwendigen Dienste laufen. Kann man noch mehr tun? Was denn z. B.?

Vielleicht könnte man ja hier einen etwas umfassenderen Thread machen, der vielleicht am Ende als Sticky endet, damit zukünftig nicht mehr so viele Server offen stehen wie ein Scheunentor.

MfG
LordDarkmage

carnil
02.04.05, 06:14
Hallo

Auf die Frage ob man noch mehr tun kann, insbesondere mit "Schwerpunkt" Debian: Securing Debian Manual (http://www.nl.debian.org/doc/manuals/securing-debian-howto/index.en.html). Hat weitere nützliche Hinweise.

MfG carnil

LordDarkmage
02.04.05, 06:19
Ja, danke. Werd ich mir zu gemüte führen.
Vielleicht noch hier und da einige Tips? Nicht nur für Debian. Könnte ja für jeden was dabei sein.

Krischi
02.04.05, 08:00
Eine erste kleine Hilfe zum "abhärten" verschiedener Distributionen könnte Bastille (http://www.bastille-linux.org/) sein, das, wenn ich mich richtig erinnere, auch in der von carnil verlinkten Anleitung erwähnt wird.
Für Debian auch leicht über apt zu bekommen.

Das Tool allein reicht natürlich nicht, aber ist schon mal ein Anfang.
:)

MannOhMann
02.04.05, 08:36
cd /usr/bin
chmod 700 chown uname wget elinks *cc*


weiters
/tmp als eigene partition und noexec einhängen
ebenso /dev/shm/

mal so auf die schnelle...

X-piet
02.04.05, 10:52
http://www.debian.org/doc/manuals/securing-debian-howto/index.de.html

nochmal in Deutsch "Absichern von Debian".

X-piet

bla!zilla
02.04.05, 13:39
Also ich betreibe selber einen Rootserver bei Strato mit SuSE 9.1. Wichtig ist IMHO:

- nur installieren was nötig ist
- keine unnötigen Dienste anbieten
- nach Möglichkeit für Dienste eine chroot-Umgebung aufbauen
- MTA gegen unerlaubtes relaying sichern
- Packetfilter betreiben.

Innerhalb von einem Monat hat mein Packetfilter über 48.000 Pakete verworfen, vor allem Anfragen auf Port 445/tcp und den NetBIOS Ports 135-138/tcp. DHCP Anfragen werden nur von einem der Strato-Server angenommen, Postfix erlaubt relaying nur vom Server selber und nach SMTP-AUTH authentisierung. Apache, PHP usw. sind auf einem aktuellen Stand.

Tomek
02.04.05, 13:50
Hier gibt es einen weiteren Thread in einem anderen Forum mit weiteren Maßnahmen dazu: Wie sichert ihr eure Server ab (http://www.linuxserverforum.de/vb/showthread.php?t=689)

Man ist aber im Prinzip nie fertig mit solchen Maßnahmen und findet immer wieder neue Tipps und Möglickeiten um die Sicherheit zu verbessern. Letzendlich ist es ein Kompromiss zwischen Aufwand/Zeit, Sicherheit und Komfort.

peschmae
02.04.05, 14:14
Am besten jeden Dienst auf eine eigene virtuelle (Xen oder hypervisor) Maschine und dann möglichst viele verschiedene IDS drauf - und wenn sich was rührt sofort alles vernichten :ugly:

MfG Peschmä

LordDarkmage
03.04.05, 07:20
Das mit den vServern hab ich mir auch schonmal überlegt. Jetzt ohne Witz.


Man ist aber im Prinzip nie fertig mit solchen Maßnahmen und findet immer wieder neue Tipps und Möglickeiten um die Sicherheit zu verbessern.
Darum ja dieser Thread. Anregungen holen, was man so tun kann. Meist mangelt es ja an Ideen.

Imago
03.04.05, 11:43
Innerhalb von einem Monat hat mein Packetfilter über 48.000 Pakete verworfen, vor allem Anfragen auf Port 445/tcp und den NetBIOS Ports 135-138/tcp.
hmm rein aus Unwissenheit mal gefragt:
Pakete die an nicht geöffnete Ports gehen werden doch eh nicht angenommen, auch ohne Paketfilter oder? Warum macht es da Sinn nochmal explizit den Paketfilter anzuweisen, diese Ports "zu sperren"?

Da ich auf meiner Maschine kein Samba/Winbind etc zu laufen habe, dh die Ports 445/135-139 eh zu sind, können mir die Anfragen an diese Ports doch herzlich egal sein oder?


CU
Imago

schiffmeister
03.04.05, 13:23
- grsecurity patch für den kernel (o.ä. patch)
- apache richtig confen z.b. mit:

Timeout 120
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
<IfModule prefork.c>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 256
MaxRequestsPerChild 10000
</IfModule>
(quelle linuxserverforum.de)
- php.ini anpassen (vor allem bei php4, teilweise bei php5 schon standard)

open_basedir=/home/kunden/webs/web1 <-- für jede(n) domain/kunden
magic_quotes_qpc=on
allow_url_fopen_=no
disable_functions = system, exec, shell_exec, passthru, phpinfo, show_source
register_globals=off
expose_php = Off
display_errors = Off
log_errors = On
error_log = /var/log/php/error.log
mysql.allow_persistent = Off

- eaccelerator vielleicht...
- suPHP (http://www.suphp.org) als schnittstelle zwischen apache und php (oder mod_fastcgi, nur kein mod_php auch wenn's schneller ist...)
- sshd_conf anpassen

AllowUsers user1 user2
PermitRootLogin no
vielleicht noch ne gruppe mitgeben u event. max. anzahl sessions pro user definieren...
- iptables (icmp einschränken, usw.)
- sysctl.conf anpassen

cat /etc/sysctl.conf
#
# /etc/sysctl.conf - Configuration file for setting system variables
# See sysctl.conf (5) for information.
#
#kernel.domainname = example.com
#net/ipv4/icmp_echo_ignore_broadcasts=1
net/ipv4/tcp_max_syn_backlog=1024
net/ipv4/tcp_synack_retries=1
net/ipv4/tcp_syncookies=1
net/ipv4/ip_forward=1

X-piet
03.04.05, 16:29
Schon korrekt Imago. Der Packetfilter macht Sinn gegen DDOS, Portscans, Fingerprintscans, Black u. Whitelists für IP-Ranges, Ports etc.. Also ganz unnütz ist er nicht. Ganz zu schweigen von den Logs. ;)

Ansonsten gilt, nur die Dienste anbieten die gebraucht werden und möglichst auf aktuellem Stand halten.

X-piet

Tomek
03.04.05, 16:38
Der Packetfilter macht Sinn gegen DDOS
Öhm, wie bzw. inwiefern?

X-piet
03.04.05, 17:09
Sicher nicht alle und an erster Stelle stehen Sie in meinem Post falsch. ;) Ein Beispiel wäre TCP-SYN-Flooding (IP-Spoofing verhindern, SYN-Pakete begrenzen).

Wirklich sinnvoll wären Sie nur direkt am Backbone zu bekämpfen.

X-piet

Tomek
03.04.05, 17:20
Eben, selbst wenn du alles direkt am Server blockierst oder ignorierst. Die Leitung bis zum Server selbst ist dicht.

Ich habe z.B. mit iptables die Anzahl der ICMP-Echoreplies begrenzt, so dass die Echorequests nach einer bestimmten Anzahl ignoriert werden. Das gleiche könnte man mit anderen Protokollen und Ports machen. Aber ich bezweifel, dass es im Endeffekt was bringt.

RapidMax
03.04.05, 17:31
Kommt auf die Art des DOS an. Wenn dir einer die Leitung auslastet, kannst du wie schon bemerkt nichts tun. Vielfach wird aber einfach versucht, die Ressourcen des Servers zu erschöpfen (z.B. x-mal eine aufwändige PHP-Seite aufzurufen). Wenn der Angreifer es nicht fertig bringt, seine Anfragen so zu stellen, dass sie nicht von normalen Anfragen zu unterscheiden sind, können solche Angriffe über geeignete Filterregeln abgeblockt werden.

Gruss, Andy

schiffmeister
04.04.05, 14:53
- chroot/jail vielleicht für den apache u seine anhänger. fragt sich aber, ob sich der riesige aufwand lohnt.
- mit virtullen user(-gruppen) arbeiten

wenn man mag:
- intrusion detection
- bastille

wenn man die kapazität hat: vserver :ugly:
den dann relativ gut absichern

cane
05.04.05, 11:58
Du solltest außerdem dir die Linkliste dieses Unterforums ansehen (erster Topic) und die Suchfunktion nutzen.

Es gibt schon einige interessante Topics zum Thema :)

mfg
cane