GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak schválit konkrétní počítače pro SSH do počítače s vypnutým ověřováním hesla?

Pokyny v help.ubuntu.com/community/SSH/OpenSSH/Configuring doporučují deaktivovat ověřování heslem, takže „bude možné se připojit pouze z počítačů, které jste výslovně schválili“. Ale neříkají, jak konkrétně schválit počítač. Jak to udělám?

Přijatá odpověď:

U každého uživatele, ke kterému chcete mít přístup k serveru, spusťte v terminálu:

ssh-keygen
ssh-copy-id <username>@<serverIPorDNSname>

Zeptá se vás, kam to uložit, výchozí nastavení je v pořádku. Požádá vás o zadání přístupové fráze. Jde o zašifrování klíče pro případ, že by byl počítač odcizen nebo kompromitován. Pokud heslo nechcete, ponechte obě výzvy k zadání hesla prázdné.

První příkaz vytvoří klíč ssh pro aktuálního uživatele, na kterém je spuštěn. Druhý příkaz ssh's do serveru a přidá klíč aktuálního uživatele do seznamu serverů, kteří se mohou přihlásit. Protože ssh-copy-id používá ssh, budete to muset udělat před deaktivací přihlašování pomocí hesla.

Klíče SSH jsou dvě stejné poloviny. Jedna polovina se řekne všem, druhá se tají. Pomocí matematického algoritmu lze veřejnou polovinu použít k dešifrování dat zašifrovaných soukromým klíčem. Pokud se data úspěšně dešifrují pomocí veřejného klíče, bezpochyby víte, že to byla soukromá polovina klíče, která je zašifrovala. Když se tedy přihlásíte pomocí ssh klíče, klient odešle zprávu (zašifrovanou pomocí soukromého klíče), která v podstatě říká „pusť mě dovnitř“. Server kontroluje pomocí veřejného klíče a pokud je veřejný klíč v seznamu povolených počítačů, přihlášení proběhlo úspěšně.

ssh-copy-id (pomocí ssh) zkopíruje veřejnou polovinu na seznam serverů, které klíče se mohou přihlásit (tento seznam je uložen v /home//.ssh/authorized_keys2, nebo v případě root na adrese /root/.ssh/authorized_keys2). Pokud jste již zakázali ověřování heslem, stále můžete přidat počítač. Stačí zkopírovat veřejný klíč (na /home/username/.ssh/id_rsa.pub na klientském počítači) na něco jako USB klíčenku a poté přidat obsah id_rsa.pub na konec /home//.ssh/authorized_keys2 soubor na serveru. (Můžete to udělat spuštěním příkazu jako cat /media/USB/stick/path/to/id_rsa.pub >>/home/<username>/.ssh/authorized_keys2 na serveru.)

Související:Touchpad náhle přestal fungovat?
Ubuntu
  1. SSH přihlášení k serveru RHEL 7 bez hesla

  2. Jak používat klíče SSH s Plesk

  3. 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?

  1. Jak SSH do konkrétního adresáře?

  2. Jak zakázat přihlášení SSH pomocí hesla

  3. SSH relay server s OpenSSH

  1. SSHPass:Jak SSH na server pomocí skriptu bez hesla (neinteraktivně)

  2. Jak se připojit k ssh serveru pomocí plink a cmd a veřejného klíče

  3. Jak nainstalovat SSH server na Ubuntu / Debian s OpenSSH