Ich habe einige Zweifel an bestimmten SSH-Serverkonfigurationen /etc/ssh/sshd_config
. Ich möchte das nächste Verhalten:
- Die Authentifizierung mit öffentlichem Schlüssel ist die einzige Möglichkeit, sich als Root zu authentifizieren (keine Kennwortauthentifizierung oder andere).
- Normale Benutzer können beide verwenden (Kennwort- und öffentliche Schlüsselauthentifizierung)
Wenn ich PasswordAuthentication no
meinen ersten Punkt setze ist der zweite aber nicht zufrieden. Gibt es eine Möglichkeit, PasswordAuthentication no
nur für root einzustellen ?
ssh
authentication
Mavillan
quelle
quelle
service ssh restart
auf dem Server und dann auf dem Client überprüft. Ich habe versucht, eine Verbindung ohne meinen Schlüssel herzustellenssh -o PreferredAuthentications=password -o PubkeyAuthentication=no root@host
und konnte mich zwar nicht mit einem Passwort anmelden, aber mit einem Schlüssel für den Root-Benutzer.ssh -o PreferredAuthentications=password root@host
nicht besonders sicheres imhoMithilfe von
Match
Blöcken können Sie einige Optionen für die Authentifizierung pro Benutzer oder Gruppe oder für die IP-Adresse oder den Hostnamen des Ursprungs der Verbindung konfigurieren.quelle
Ich habe einen noch restriktiveren Ansatz, um Root-Rechte auf meinem Server zu gewähren, was für die Paranoiden wie mich interessant sein könnte. Seien Sie vorsichtig, was Sie tun und in welcher Reihenfolge, da Sie sonst möglicherweise auf ein System stoßen, auf dem Sie keinen Root-Zugriff erhalten.
sugroup
, deren Mitglieder als Root angemeldet werden dürfen und die nur die Schlüsselauthentifizierung für diese Gruppe zulassen, indem Sie die folgenden Zeilen am Ende von sshd_confid einfügen:Match Group sugroup
PasswordAuthentication no
auth required pam_wheel.so group=sugroup
ein/etc/pam.d/su
. Möglicherweise ist es bereits vorhanden, und Sie müssen es nur auskommentieren. Dies verweigert allen Benutzern, die nicht Mitglied der sugroup sind, den Root-ZugriffPermitRootLogin no
in/etc/ssh/sshd_config
.Bei dieser Konfiguration ist es erforderlich, eine Schlüsselauthentifizierung und ein Kennwort zu verwenden, um root zu werden. Ich habe meinen Server so konfiguriert, da ich unabhängig von der Authentifizierungsmethode keinen direkten Root-Zugriff über ssh bevorzuge.
quelle