Ich muss SSH an zwei Ports abhören: 22 für den Hosting-Administratorzugriff und 26 für den regulären Zugriff. Ich möchte Root-Login auf 26 und alle bis auf interne IPs für Port 22 nicht zulassen. Letzteres kann mit iptables-Regeln durchgeführt werden, aber ich weiß nichts über Ersteres. Irgendwelche Ideen?
24
su
oder noch bessersudo
.PermitRootLogin
Parameters sshd_config aufwithout-password
. Dies ermöglicht nur die Anmeldung als root über ssh mit einem ssh-Schlüssel. Die Kennwortauthentifizierung funktioniert nicht.Antworten:
In
/etc/ssh/sshd_config
, die folgende Änderung. Suchen Sie nach der Zeile, die besagt,Port 22
und fügen Sie eine ähnliche Zeile darunter hinzu.Speichern Sie die Datei und starten Sie den sshd-Daemon neu.
Ich mache das in Situationen, in denen ich ssh für interne Benutzer an Port 22 aktiviert habe, aber externe Konnektivität an Port 2222 benötige. Dadurch wird der ssh-Dämon an beide Portnummern gebunden.
quelle
Sie können die
-f
Option sshd verwenden , um eine alternative Konfigurationsdatei anzugeben. In der Konfigurationsdatei müssten Sie die verwendenDirektive, um den Port zu ändern, auf dem sshd lauscht.
einstellen
Root-Logins deaktivieren
Sie können dann so etwas tun
Möglicherweise möchten Sie das standardmäßige sshd-Startskript kopieren und so ändern, dass Sie den Port 26-Dienst beim Start starten können.
Warum tust du das ?
quelle
-o PermitRootLogin yes -p 26
Wenn sshd mit einer befehlszeilenspezifischen Konfigurationsdatei ausgeführt wird, können Sie eine zweite Konfiguration erstellen, die auf Port 26 ausgeführt wird, und ein zweites Startskript ausführen, das auf diesen Port verweist.
quelle