Einführung
Sie können als root eine SSH-Verbindung zu Ihrer Linux-Instanz herstellen mit dem Schlüssel. Der Schlüssel funktioniert jedoch nicht für Nicht-Root Benutzer.
Daher werden wir zwei Methoden zur Verwendung von SSH-Schlüsseln mit Nicht-Root veranschaulichen Benutzer.
Methode 1:Erstellen Sie einen neuen SSH-Schlüssel
Befolgen Sie einfach die nachstehenden Schritte
- SSH zu Ihrer Linux-Instanz als Root
- Erstellen Sie einen SSH-Schlüssel für einen Benutzer
sudo -u ssh_user ssh-keygen
Zum Beispiel
sudo -u unixcop ssh-keygen
- Speichern Sie dann den privaten Schlüssel, /home/ssh_user/.ssh/id_rsa , zu deinem Computer.
Zum Beispiel :
Kopieren Sie es in Ihre lokale .ssh Ordner als ~/.ssh/ssh_user_id_rsa
- Löschen Sie den privaten Schlüssel von Ihrer Linux-Instanz mit dem folgenden Befehl.
rm /home/ssh_user/.ssh/id_rsa
- Benennen Sie den öffentlichen Schlüssel in authorized_keys um .
mv /home/ssh_user/.ssh/id_rsa.pub /home/ssh_user/.ssh/authorized_keys
HINWEIS :Wenn Sie den privaten Schlüssel als ~/.ssh/ssh_user_id_rsa gespeichert haben , können Sie als Ihr Nicht-Root-Benutzer eine SSH-Verbindung zum Server herstellen .
ssh -i ~/.ssh/ssh_user_id_rsa [email protected]
Methode 2:Verschieben Sie den Root-SSH-Schlüssel zum Nicht-Root-Benutzer
Hier verschieben wir den Root-Schlüssel zum ssh_user, wodurch auch der SSH-Schlüsselzugriff des Root-Benutzers deaktiviert wird.
Befolgen Sie einfach die folgenden Schritte:
- SSH zu Linux-Instanz als root.
- Erstellen Sie die .ssh Verzeichnis für ssh_user.
mkdir /home/ssh_user/.ssh
- Verschieben Sie den Stammschlüssel in das SSH-Verzeichnis von ssh_user.
mv /root/.ssh/authorized_keys /home/ssh_user/.ssh/
- Ändern Sie den Eigentümer von .ssh Verzeichnis von root zu ssh_user also OpenSSH lesen kann.
chown -R ssh_user:ssh_user /home/ssh_user/.ssh
Schlussfolgerung
In diesem kurzen Tutorial haben wir zwei Methoden zur Verwendung von SSH-Schlüsseln mit Nicht-Root erklärt Benutzer.
Vielen Dank!!