Dieser Artikel beschreibt das Verfahren zum Einrichten einer Secure Shell (SSH) Public Key-Authentifizierung.
-
Melden Sie sich beim Server an.
-
Überprüfen Sie, ob der Benutzer existiert:
`getent passwd <username>`
-
Suchen Sie den der AuthorizedKeysFile zugewiesenen Wert Parameter in/etc/ssh/sshd_config um die Datei zu ermitteln, in der der Schlüssel gespeichert ist:
`grep AuthorizedKeysFile /etc/ssh/sshd_config`
Hinweis :Der Standardspeicherort ist ~/.ssh/authorized_keys innerhalb des Standard-Home-Verzeichnisses des Benutzers.
-
Wechseln Sie in das Home-Verzeichnis des Benutzers:
`cd /directory-path`
Hinweis :Ersetzen Sie Verzeichnispfad mit dem Home-Verzeichnispfad des Benutzers.
-
Überprüfen Sie die Berechtigungsstufen für .ssh/ Verzeichnis. Es sollte
0700
haben Berechtigungen haben und dem Benutzer gehören.`ls .ssh`
a. Wenn das Verzeichnis nicht existiert, erstellen Sie es und setzen Sie die Berechtigungen auf
0700
:`mkdir -m 700 .ssh`
b. Wenn das Verzeichnis existiert, können Sie den Besitz separat festlegen:
`chmod 700 .ssh/` `chown -R username:username /path/to/home/.ssh`
-
Wechseln Sie zu .ssh/ Verzeichnis und authorized_keys Datei:
```cd .ssh/ vim authorized_keys ll```
-
Fügen Sie den öffentlichen SSH-Schlüssel am Ende von authorized_keys hinzu Datei:
`vim authorized_keys`
-
Ändern Sie die Berechtigungen auf
600
und stellen Sie den ordnungsgemäßen Besitz der Datei sicher:`chmod 600 authorized_keys` `chown -R username:username authorized_keys`
Passwortauthentifizierung deaktivieren
Wenn Sie möchten, dass sich alle Benutzer mit öffentlichen Schlüsseln und nicht mit Passwörtern anmelden, können Sie die Passwortauthentifizierung deaktivieren.
Wichtig :Das Deaktivieren der Passwortauthentifizierung sperrt Benutzer, die ein Passwort für den Zugriff auf den Server verwendet haben, wenn die SSH-Authentifizierung nicht für ihr Konto konfiguriert ist.
-
Erstellen Sie ein Backup der sshd_config Datei, bevor Sie Änderungen vornehmen:
mkdir /home/username/backup cp /etc/ssh/sshd_config /home/username/backup/sshd_config.bak
-
Öffnen Sie die sshd_config Datei:
`vim /etc/ssh/sshd_config`
-
Suchen Sie die PubkeyAuthentication Parameter und setzen Sie ihn auf yes. Wenn die Zeile kommentiert ist, entfernen Sie alle Kommentarzeichen (
#
). -
Suchen Sie die PasswordAuthentication -Parameter in derselben Datei und setzen Sie ihn auf
no
. -
Speichern Sie die Änderungen an der Datei und beenden Sie die Datei.
-
Prüfen Sie die Syntax mit
sshd -t
. Wenn es keine Fehler gibt, laden Siesshd
neu :`service sshd reload`
Zusätzliche Anmerkungen:
- Für die private Schlüsseldatei auf Ihrer lokalen Arbeitsstation (Client-Seite) sollten die Berechtigungen auf
600
gesetzt sein , und die .ssh Verzeichnis sollten die Berechtigungen auf700
gesetzt haben . Dieauthorized_keys-Dateien funktionieren auch mit644
Berechtigungen, aber600
ist sicherer.