/dev/blog/ID10T

Linux: neuen Server absichern

• Linux • Comments
Advertisement

Wenn man sich "mal eben" einen Server oder vServer gemietet hat, sollte man diesen erstmal "grundsichern". Diese Minimalsicherung besteht aus 3 Punkten. Ich gehe hier von Debian aus, da dieses meiner Erfahrung nach am Häufigsten verwendet wird und auch ich es nutze.

1. Update

Der logischste Punkt. Ein nicht geupdatetes System oder veraltete Dienste sind ein geöffnetes Scheunentor. Dies lässt sich mit

apt-get update && apt-get upgrade && apt-get dist-upgrade

aber auch direkt schmerzlos beheben.

2. Root per SSH verbieten

Der Root Account existiert auf jeder Linux Distribution. Deswegen ist dieser Account Teil einer jeden Bruteforcing Attacke. Wenn ihr dem Root Account den Login via SSH verbietet, muss der Angreifer neben eurem Passwort zusätzlich auch noch den Usernamen erraten.

Legen wir also zuerst unseren neuen User an.

adduser sshuser

Natürlich solltet ihr keinen so einfallslosen Namen nehmen, sondern eben einen, der schwer zu erraten ist.
Im Prozess der Usergenerierung müsst ihr auch direkt das Passwort anlegen, welches natürlich ebenfalls schwer zu erraten sein sollte. Ichhabe vor einiger Zeit schonmal beschrieben, wie man komplexe und doch merkbare Passwörter erstellen kann.

Prüft unbedingt, ob ihr euch mit diesem User auch per SSH einloggen könnt, bevor ihr fortfahrt. Ist dies nämlich nicht der Fall, sperrt ihr euch selbst aus!

Nun geht es ans editieren der sshd_config, die ihr im /etc/ssh-Verzeichnis findet. Ich nutze hierfür den vi, euch steht natürlich die Benutzung eines anderen Editors offen. Eine kurze Einführung in den vi findet ihr beispielsweise HIER.

vi /etc/ssh/sshd_config

Sucht nach dem Eintrag

PermitRootLogin yes

und ändert ihn in

PermitRootLogin no

Zusätzlich könnt ihr bei Bedarf auch noch zwei neue Zeilen einfügen

LoginGraceTime 2m
MaxAuthTries 6

Dadurch wird eine Bruteforcingattacke nach 6 Versuchen verhindert.
Außerdem solltet ihr präventiv den Login mit leerem Passwortverhindern, um den einen Testaccount, den ihr garantiert irgendwann mal vergesst nicht zum Problem werden zu lassen.

PermitEmptyPasswords no

Startet nun noch den SSH-Dienst neu

/etc/init.d/ssh restart

und ein SSH-Login als root ist unmöglich.

Ports schließen

Dies ist eine etwas größere Sache, weswegen ich sie nur generell anschneide. Mit dem Befehl

netstat -tulpen | grep -v 127.0.0.1

findet ihr alle Ports und Dienste raus, die auf eurem Server nach draußen herrschen und damit potentiell angreifbar sind. Deaktiviert hier alle Dienste, die ihr nicht zwingend braucht.

Damit ist der Server rudimentär gesichert. Natürlich gibt es noch weitere darüber hinausgehende Sicherungsmöglichkeiten, die ihr auch nutzen solltet, doch ein frischer Server ist nach diesen Maßnahmen vergleichsweise sicher.

 

Advertisement
More posts
comments powered by isso

Advertisement