Warum sollte sshd standardmäßig Root-Anmeldungen zulassen?

7

Ich arbeite derzeit daran, meine Server gegen Hacking zu schützen. Unter anderem bekomme ich eine Menge Versuche, mich als Root über SSH anzumelden. Während ich fail2ban implementiert habe, frage ich mich, warum Root-Anmeldungen standardmäßig standardmäßig zulässig sind. Selbst mit nicht auf Sudo basierenden Distributionen kann ich mich immer als normaler Benutzer anmelden und wechseln. Ich frage mich also, ob es einen klaren Vorteil gibt, Root-Anmeldungen auf SSH zuzulassen, oder ob es nur etwas ist, das niemand ändern möchte.

Geselle Geek
quelle

Antworten:

8

Es gibt einen klaren Vorteil, Root-Anmeldungen auf ssh zuzulassen

Es gibt einige Sicherungssysteme, die Root auf dem Remote-System benötigen, um tatsächlich eine Sicherung durchzuführen. Es ist nicht ungewöhnlich, dass Dinge mit schlüsselbasierter Authentifizierung eingerichtet werden, um Wartungsaufgaben auf Remote-Systemen auszuführen.

Ich wünsche mir dringend, dass die Standardeinstellung von PermitRootLogin yesmindestens auf geändert PermitRootLogin without-passwordwird. Dies würde nur eine schlüsselbasierte Authentifizierung ermöglichen. Eine Remote-Kennwortauthentifizierung für das Root-Konto ist fast nie erforderlich.

Auf Systemen (wie Ubuntu) wird es immer häufiger, dass das System mit einem Root-Konto mit einem deaktivierten Kennwort eingerichtet wird. Das Standard-Setup birgt kein großes Risiko, da es keine Möglichkeit gibt, sich direkt bei einem Konto mit einem deaktivierten Kennwort zu authentifizieren.

Bedenken Sie auch, dass ein Brute-Force-Versuch, sich über ssh remote bei root anzumelden, eine sehr geringe Erfolgschance hat, wenn Sie ein Root-Konto mit einem ausreichend komplexen Kennwort haben. Das Deaktivieren des Root-Kontos bietet zwar eine zusätzliche Sicherheitsebene, ist jedoch möglicherweise nicht erforderlich, wenn Sie über ein sicheres Kennwort verfügen. Wenn Sie ein sicheres Kennwort mit reaktiven Tools wie Denyhosts und Fail2Ban kombinieren, besteht normalerweise fast kein Risiko, dass ein Versuch, das Root-Kennwort brutal zu erzwingen, funktioniert.

Es ist immer eine gute Praxis, das System nach Abschluss der Installation basierend auf dem Risiko und den Anforderungen für Ihr Netzwerk zu härten. Ein System, das nicht kritisch ist und keine Benutzerdaten enthält, benötigt nicht wirklich den gleichen Grad an Härtung wie das System, in dem Kranken- oder Bankunterlagen gespeichert werden.

Zoredache
quelle
2

Ich bin mir nicht sicher, aber ich würde annehmen, dass sie sicherstellen wollten, dass sich Leute, die ausländische Installationen durchführen, anmelden können. Die erste Anmeldung muss möglicherweise root sein, da noch keine anderen Benutzer vorhanden sind.

Sie müssen jedoch sicherstellen, dass die Anmeldung als Root-Option in der sshd-Konfiguration deaktiviert ist, nachdem Sie Ihren Benutzer erstellt und ihm sudo-Berechtigungen erteilt haben.

Ich empfehle außerdem, dass Sie den SSH-Port auf einen anderen Wert als 22 ändern. Dadurch wird Ihr Computer zwar nicht sicherer, aber all diese verschwenderischen / nervigen Anforderungen werden gestoppt.

Xeoncross
quelle
Ich bin wirklich nicht einverstanden mit dem Wechsel von Standard-Ports. Verwenden Sie die Paketfilterung.
Warner
"Ja wirklich?" Was ist daran schlecht? Ich habe gerade angefangen, es zu tun, weil ich angesehene Admins gesehen habe, die es getan haben ...
Xeoncross
Es ist etwas, was die Leute von der Ausführung von Servern ohne Filterung oder Netzwerksegregation übernommen haben.
Warner
@Warner, aber ich verstehe nicht, dass ein Wechsel von Standard-Ports für die meisten Menschen keine einfache Möglichkeit wäre, die meisten Versuche abzuwehren?
Camilo Martin
2

Erwägen Sie, Root-Anmeldungen als zusätzlichen Schutz zu verhindern. Vor einigen Jahren war Bruteforce auf dem Höhepunkt, heutzutage suchen sie nach Schwachstellen über das, was sie von den Deamons sehen können (Apache, pureftpd, ...). Das Verhindern von Root-Anmeldungen wird zu einer hervorragenden Idee, wenn morgen ein Exploit mit SSHD gefunden wird. Während SSHD ausgereift und sicher ist, wissen Sie nie. In letzter Zeit waren die Exploits eher auf die Eskalation von Privilegien mit dem Kernel oder die Verwendung einer Drittanbieter-App mit dem Kernel ausgerichtet, sodass das Verhindern von Root-Anmeldungen nichts geändert hätte.

Debian-basierte Distribution hat den Wechsel bereits vorgenommen, während RedHat-basierte Distributionen dies vorschlagen (wenn Sie die Best Practices-Dokumente lesen).

Embreau
quelle
1

Nun, weil root ein gültiger Benutzer ist und sshd es erledigt, um es zuzulassen. Unter OpenBSD (dieselben Leute von OpenSSH) werden Sie beispielsweise nicht aufgefordert, während der Installation einen Benutzer zu erstellen. Daher müssen Sie root verwenden, um auf Ihre Box zuzugreifen.

Bei einigen Desktop-basierten Distributionen müssen Sie zusätzliche Benutzer erstellen, für Server benötigen Sie jedoch keinen.

Auch diese Argumente, dass sudo oder su sicherer sind als sich als root anzumelden, sind ein großer Mythos. Unter Ubuntu kann der Benutzer beispielsweise JEDEN Befehl standardmäßig mit sudo ausführen, sodass jeder Angreifer, der einsteigt, auch JEDEN Befehl als root ausführen kann. Aus Sicherheitsgründen ziemlich nutzlos.

sucuri
quelle
Auf der anderen Seite müsste ein Angreifer sowohl den Benutzernamen als auch das Passwort erraten - im Gegensatz dazu, das Passwort nur brutal zu erzwingen. Ich würde auch bemerken, dass sudo auf Personen in der sudoers-Datei beschränkt ist - daher ist es in den meisten Fällen nur der erste Benutzer
Journeyman Geek
0

Es ist ziemlich distro-spezifisch. Einige erlauben es, andere nicht.

Wenn ich eine Distribution verwalten würde, würde ich das System so konfigurieren, dass es bei der Installation so hart wie möglich ist. Es ist besser zu vergessen, eine Funktion zu aktivieren, als zu vergessen, eine Funktion zu deaktivieren.

Joe Internet
quelle
Das System so weit wie möglich zu härten, wird zu einer Herausforderung, wenn Sie auch versuchen, Ihr System von vielen Endbenutzern auf dem Desktop zu verwenden. Sie müssen das System gerade so stark kompromittieren und härten, dass Benutzer im Standardfall geschützt werden. Fortgeschrittene Benutzer können das System jedoch an ihre Anforderungen anpassen.
Zoredache