GNU/Linux >> Znalost Linux >  >> Linux

Povolit ověřování pomocí veřejného klíče SSH

Tento článek popisuje postup nastavení ověřování pomocí veřejného klíče Secure Shell (SSH).

  1. Přihlaste se na server.

  2. Ověřte, že uživatel existuje:

     `getent passwd <username>`
    
  3. 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.

  4. 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.

  5. Zkontrolujte úrovně oprávnění pro .ssh/ adresář. Mělo by mít 0700 oprá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`
    
  6. Přepněte na .ssh/ adresář a autorizované_klíče soubor:

     ```cd .ssh/
     vim authorized_keys
     ll```
    
  7. Přidejte veřejný klíč SSH na konec authorized_keys soubor:

     `vim authorized_keys`
    
  8. Změňte oprávnění na 600 a 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.

  1. 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
    
  2. Otevřete sshd_config soubor:

     `vim /etc/ssh/sshd_config`
    
  3. Najděte PubkeyAuthentication parametr a nastavte jej na ano. Pokud je řádek okomentován, odstraňte všechny indikátory komentáře (# ).

  4. Najděte Ověření heslem parametr ve stejném souboru a nastavte jej na no .

  5. Uložte změny do souboru a ukončete soubor.

  6. Zkontrolujte syntaxi pomocí sshd -t . Pokud nejsou žádné chyby, znovu načtěte sshd :

     `service sshd reload`
    

Další poznámky:

  1. Soubor soukromého klíče na vaší místní pracovní stanici (na straně klienta) by měl mít oprávnění nastavena na 600 a .ssh adresář by měl mít oprávnění nastavena na 700 . Soubory Theauthorized_keys fungují také s 644 oprávnění, ale 600 je bezpečnější.

Linux
  1. Ssh – Stále dostáváte výzvu k zadání hesla pomocí Ssh s ověřováním pomocí veřejného klíče?

  2. Ssh – vzhledem k soukromému klíči Ssh, jak obnovit veřejný klíč?

  3. Ssh nepřijímá veřejný klíč?

  1. Jak povolím indexování souborů a adresářů Apache v systému Linux nebo UNIX?

  2. Nastavení ověřování pomocí klíče SSH z openSSH na SSH2

  3. Jak opravit problematický klíč v souboru ~/.ssh/known_hosts

  1. Jak nakonfigurovat ověřování na základě klíče SSH v systému Linux

  2. Malá kopie souboru SSH na příkazovém řádku

  3. Jak zašifrovat velký soubor v openssl pomocí veřejného klíče