Tento článek popisuje postup nastavení ověřování pomocí veřejného klíče Secure Shell (SSH).
-
Přihlaste se na server.
-
Ověřte, že uživatel existuje:
`getent passwd <username>` -
Vyhledejte hodnotu přiřazenou k AuthorizedKeysFile parametr v rámci /etc/ssh/sshd_config k určení souboru, kde je klíč uložen:
`grep AuthorizedKeysFile /etc/ssh/sshd_config`Poznámka :Výchozí umístění je ~/.ssh/authorized_keys ve výchozím domovském adresáři uživatele.
-
Přepněte do domovského adresáře uživatele:
`cd /directory-path`Poznámka :Nahraďte cesta-adresáře s cestou k domovskému adresáři uživatele.
-
Zkontrolujte úrovně oprávnění pro .ssh/ adresář. Mělo by mít
0700oprávnění a být ve vlastnictví uživatele.`ls .ssh`A. Pokud adresář neexistuje, vytvořte jej a nastavte oprávnění na
0700:`mkdir -m 700 .ssh`b. Pokud adresář existuje, můžete vlastnictví nastavit samostatně:
`chmod 700 .ssh/` `chown -R username:username /path/to/home/.ssh` -
Přepněte na .ssh/ adresář a autorizované_klíče soubor:
```cd .ssh/ vim authorized_keys ll``` -
Přidejte veřejný klíč SSH na konec authorized_keys soubor:
`vim authorized_keys` -
Změňte oprávnění na
600a zajistit správné vlastnictví souboru:`chmod 600 authorized_keys` `chown -R username:username authorized_keys`
Zakázat ověřování heslem
Pokud chcete, aby se všichni uživatelé přihlašovali pomocí veřejných klíčů a nikoli hesel, můžete zakázat ověřování heslem.
Důležité :Zakázání ověřování heslem uzamkne uživatele, kteří pro přístup k serveru použili heslo, pokud pro jejich účet není nakonfigurováno ověřování SSH.
-
Vytvořte zálohu sshd_config soubor před provedením jakýchkoli změn:
mkdir /home/username/backup cp /etc/ssh/sshd_config /home/username/backup/sshd_config.bak -
Otevřete sshd_config soubor:
`vim /etc/ssh/sshd_config` -
Najděte PubkeyAuthentication parametr a nastavte jej na ano. Pokud je řádek okomentován, odstraňte všechny indikátory komentáře (
#). -
Najděte Ověření heslem parametr ve stejném souboru a nastavte jej na
no. -
Uložte změny do souboru a ukončete soubor.
-
Zkontrolujte syntaxi pomocí
sshd -t. Pokud nejsou žádné chyby, znovu načtětesshd:`service sshd reload`
Další poznámky:
- Soubor soukromého klíče na vaší místní pracovní stanici (na straně klienta) by měl mít oprávnění nastavena na
600a .ssh adresář by měl mít oprávnění nastavena na700. Soubory Theauthorized_keys fungují také s644oprávnění, ale600je bezpečnější.