Alexander (HH): ssh root und serversicherheit

Beitrag lesen

Moin Moin!

sudo bietet Logging und abgestufte Rechte, und vor allem braucht man nur sein eigenes Passwort, kein Root-Passwort. Man kann dann auch das Login von root komplett sperren, so kann selbst versehentlich sich niemand als root einloggen.

Das heißt ich habe einen User in den sudoers, die in der Lage ist, root für die Shell zu sperren? Einloggen kann ich mich als root nach dem bisher gesagten per ssh ja dann sowieso nicht mehr.

root kann sich durchaus auch selbst aussperren, z.B. indem ein ungültiger Passwort-Hash in /etc/shadow eingetragen wird. Ich verkneif mir das aber in aller Regel [1],  so dass ich mich an der Konsole immer noch als root anmelden kann. su [2] fliegt natürlich von der Platte, ebenso telnetd und alles andere, mit dem man sich an sudo vorbei root-Rechte verschaffen kann.

VOR der Aktion muß natürlich sichergestellt sein, dass wenigstens ein Account sich per sudo ausreichend Rechte verschaffen kann. Wenn nicht, ist das System anschließend so sicher, dass man selbst nicht mehr reinkommt. ;-)

Viele Systeme sind auch so konfiguriert (oder wenigstens vorbereitet), dass man eine Gruppe wheel hat, deren Mitglieder sich per sudo volle Root-Rechte verschaffen können. Damit kann man sich Änderungen an /etc/sudoers sparen, die Administratoren nimmt man einfach in die wheel-Gruppe auf und schon haben sie alle notwendigen Rechte.

Zu [1]: Warum sperre ich root nicht komplett? Im Notfall habe ich die Möglichkeit, per Konsole mit root-Rechten zu arbeiten, z.B. wenn ich mir den sshd weggeschossen oder /etc/sudoers demoliert habe. root auch an der Konsole zu sperren ist nur selten sinnvoll. Wenn jemand Zugriff auf den physischen Server hat, dann wird ihn eine lächerliche Passwort-Abfrage kaum aufhalten. Den kann er z.B. über den Bootloader aushebeln, oder mit einem anderen Bootmedium. Notfalls kann er auch die Platte(n) rausreißen und in einem anderen System auslesen. Dagegen helfen nur recht drastische Maßnahmen, wie ein voll verschlüsseltes System (alle Partitionen inklusive Swap, Start über eine initrd, die erstmal eine Passphrase bzw. einen Key für die Root-Partition verlangt). Und das ist in aller Regel Overkill.

Zu [2]: Der letzte Nutzen von su, nämlich eine vollwertige Root-Shell, ist mit sudo -i ebenfalls überflüssig geworden. Natürlich kann sudo dann auch nicht mehr verhindern, dass jemand die Logs und die /etc/sudoers manipuliert. Auch da helfen nur drastische Maßnahmen: Separate Log-Server, Read-Only-Medium (CD/DVD) für die Root-Partition, usw.

Alexander

--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".