it-swarm.com.de

Fügen Sie einen Benutzer ohne Passwort, aber mit SSH und öffentlichem Schlüssel hinzu

Ich möchte Red Hat Linux einen Benutzer hinzufügen, der kein Kennwort zum Anmelden verwendet, sondern einen öffentlichen Schlüssel für ssh verwendet. Dies wäre in der Kommandozeile.

44
user119776

Beginnen Sie mit dem Erstellen eines Benutzers:

useradd -m -d /home/username -s /bin/bash username

Erstellen Sie auf dem Client ein Schlüsselpaar, mit dem Sie ssh von:

ssh-keygen -t dsa

Kopieren Sie den öffentlichen Schlüssel /home/username/.ssh/id_dsa.pub Auf den RedHat-Host in /home/username/.ssh/authorized_keys.

Legen Sie die richtigen Berechtigungen für die Dateien auf dem RedHat-Host fest:

chown -R username:username /home/username/.ssh
chmod 700 /home/username/.ssh
chmod 600 /home/username/.ssh/authorized_keys

Stellen Sie sicher, dass die Authentifizierung mit öffentlichem Schlüssel auf dem RedHat-Host aktiviert ist:

grep  PubkeyAuthentication /etc/ssh/sshd_config
#should output:
PubkeyAuthentication yes

Wenn nicht, ändern Sie diese Anweisung in yes und starten Sie den Dienst sshd auf dem RedHat-Host neu.

Starten Sie vom Client aus eine ssh Verbindung:

ssh [email protected]

Es sollte automatisch nach dem Schlüssel id_dsa In ~/.ssh/ Suchen. Sie können eine Identitätsdatei auch angeben, indem Sie:

ssh -i ~/.ssh/id_dsa [email protected]
47
Lambert

Unter Ubuntu können Sie den Benutzer hinzufügen mit:

adduser --disabled-password <username>

Dann erstelle .ssh/authorized_keys Datei in ihrem Home-Verzeichnis mit ihrem öffentlichen Schlüssel.

17
Mitar

Du könntest benutzen:

usermod --lock <username>

Von der Manpage:

Sperren Sie das Passwort eines Benutzers. Dies setzt ein '!' vor dem verschlüsselten Passwort, wodurch das Passwort effektiv deaktiviert wird. Sie können diese Option nicht mit -p oder -U verwenden. Hinweis: Wenn Sie das Konto sperren möchten (nicht nur mit einem Kennwort zugreifen), sollten Sie auch EXPIRE_DATE auf 1 setzen.

7
Paul Mitchell