GNU/Linux >> Znalost Linux >  >> Linux

Povolit přihlášení root ssh pouze s ověřováním pomocí veřejného klíče

Základy

SSH server má několik způsobů, jak ověřit klienta, který se k němu připojuje. Nejoblíbenější metodou je autentizace na základě hesla, protože je nejjednodušší, ale není tak bezpečná. Hesla se vyměňují pomocí zabezpečených mechanismů, ale kvůli snadnému použití nejsou obecně složitá ani dlouhá. To umožňuje útočníkovi prolomit heslo pomocí útoků hrubou silou nebo slovníkových útoků. V takových scénářích mohou klíče SSH poskytovat klientům bezpečný a spolehlivý prostředek autentizace.

Server SSH používá k ověřování uživatelů schéma šifrování veřejného klíče. V tomto schématu je generován pár klíčů, veřejný klíč a soukromý klíč, pro autentizaci. Jak název napovídá, soukromý klíč je klientem uchováván v tajnosti, protože jeho kompromitace může vést k tomu, že se někdo přihlásí k serveru bez jakékoli další autentizace.

Odpovídající veřejný klíč pro tajný soukromý klíč klienta není uchováván jako tajný a je zkopírován do systémů, do kterých se uživatel přihlásí. Soukromý klíč se používá k dešifrování zprávy zašifrované pomocí přidruženého veřejného klíče klienta. Pomocí páru klíčů můžeme také povolit autentizaci bez hesla. Důvěryhodný veřejný klíč klienta je uložen ve speciálním souboru s názvem author_keys v domovském adresáři uživatelského účtu.

Když se klient pokusí ověřit server SSH pomocí klíčů, je vydána výzva pomocí veřejného klíče klienta uloženého na serveru. Po úspěšném dešifrování výzvy pomocí privátního klíče klienta získá uživatel přístup k shellu serveru.

Nakonfigurujte ověřování pouze veřejným klíčem pro ssh

1. Jako root upravte konfigurační soubor démona sshd (/etc/ssh/sshd_config ).

2. Upravte parametry PermitRootLogin a PubkeyAuthentication tak, aby měly následující hodnoty:

PermitRootLogin without-password
PubkeyAuthentication yes

Nastavením hodnoty direktivy PermitRootLogin na without-password povolte pouze přihlášení ssh pomocí klíče v účtu root. jak je uvedeno výše.

3. Před restartováním démona sshd ověřte správnost syntaxe konfiguračního souboru sshd_config.

# sshd -t

Výše uvedený příkaz by neměl vrátit nic. To znamená, že konfigurační soubor je syntakticky správný a jste si jisti, že démona sshd restartujete bez problémů.

4. Restartujte démona sshd:

# service sshd restart

nebo

# systemctl restart sshd


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. Začínáme s SSH v Linuxu

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

  1. Omezit přihlášení SSH na konkrétní IP nebo hostitele

  2. Jak nastavit klíče SSH pro přihlášení pomocí „veřejného/soukromého klíče“ SSH v systému Linux

  3. Vygenerujte pár SSH pomocí AES-256-CBC

  1. Povolit přihlášení ssh root na serveru Ubuntu 14.04 Linux

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

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