Android

Jak nastavit ssh klíče na centos 7

Setting Up an OpenVPN Connection (Configuring Server & Client) ?↔️?️

Setting Up an OpenVPN Connection (Configuring Server & Client) ?↔️?️

Obsah:

Anonim

Secure Shell (SSH) je kryptografický síťový protokol určený pro zabezpečené spojení mezi klientem a serverem.

Dva nejoblíbenější mechanismy autentizace SSH jsou autentizace na základě hesla a autentizace na základě veřejného klíče. Použití klíčů SSH je obecně bezpečnější a pohodlnější než tradiční ověřování pomocí hesla.

Tento tutoriál vysvětluje, jak generovat klíče SSH v systémech CentOS 7. Také vám ukážeme, jak nastavit autentizaci pomocí klíče SSH a připojit se ke vzdáleným serverům Linux bez zadání hesla.

Vytváření SSH klíčů na CentOS

Před vygenerováním nového páru klíčů SSH je vhodné zkontrolovat existující klíče SSH na klientském počítači CentOS.

Chcete-li to provést, spusťte následující příkaz ls, který obsahuje seznam všech veřejných klíčů, pokud existují:

ls -l ~/.ssh/id_*.pub

Pokud výstup příkazu vrátí něco jako No such file or directory nebo no matches found , znamená to, že na vašem klientském počítači nemáte klíče SSH a můžete pokračovat dalším krokem a vygenerovat pár klíčů SSH.

Pokud již existují klíče, můžete je použít a přeskočit další krok nebo zálohovat staré klíče a vygenerovat nové.

Začněte vytvořením nového páru klíčů SSH 4096 bitů s vaší e-mailovou adresou jako komentář:

ssh-keygen -t rsa -b 4096 -C "[email protected]"

Budete vyzváni k zadání názvu souboru:

Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

Stisknutím klávesy Enter přijměte výchozí umístění souboru a název souboru.

Dále budete vyzváni k zadání bezpečného přístupového hesla. Ať už chcete používat přístupovou frázi, záleží jen na vás. Pokud se rozhodnete používat přístupové fráze, získáte další vrstvu zabezpečení.

Enter passphrase (empty for no passphrase):

Celá interakce vypadá takto:

Chcete-li ověřit, že je vygenerován nový pár klíčů SSH, zadejte:

ls ~/.ssh/id_*

/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub

Zkopírujte veřejný klíč na server CentOS

Nyní, když je vygenerován pár klíčů SSH, dalším krokem je zkopírování veřejného klíče na server, který chcete spravovat.

Nejjednodušší a doporučený způsob kopírování veřejného klíče na vzdálený server je použití nástroje ssh-copy-id . Typ vašeho terminálu místního stroje:

ssh-copy-id remote_username@server_ip_address

Budete vyzváni k zadání hesla remote_username :

remote_username@server_ip_address's password:

Zadejte heslo a po ověření uživatele bude veřejný klíč ~/.ssh/id_rsa.pub připojen k souboru ~/.ssh/authorized_keys vzdáleného uživatele. Spojení bude uzavřeno.

Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'username@server_ip_address'" and check to make sure that only the key(s) you wanted were added.

Pokud nástroj ssh-copy-id není k dispozici na místním počítači, zkopírujte veřejný klíč pomocí následujícího příkazu:

cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

Přihlaste se k serveru pomocí klíčů SSH

Po dokončení výše uvedených kroků byste se měli mít možnost přihlásit se ke vzdálenému serveru, aniž byste byli vyzváni k zadání hesla.

Chcete-li to ověřit, zkuste se přihlásit k serveru pomocí SSH:

ssh remote_username@server_ip_address

Zakázání ověřování heslem SSH

Chcete-li na vzdálený server přidat další úroveň zabezpečení, můžete zakázat ověřování pomocí hesla SSH.

Před pokračováním se ujistěte, že se můžete přihlásit k serveru bez hesla jako uživatel s právy sudo.

Postupujte podle níže uvedených kroků a zakažte ověřování hesla SSH:

  1. Přihlaste se ke vzdálenému serveru:

    ssh sudo_user@server_ip_address

    Otevřete konfigurační soubor SSH /etc/ssh/sshd_config pomocí textového editoru:

    sudo nano /etc/ssh/sshd_config

    Vyhledejte následující směrnice a upravte jej následovně:

    / etc / ssh / sshd_config

    PasswordAuthentication no ChallengeResponseAuthentication no UsePAM no

    Po dokončení uložte soubor a restartujte službu SSH zadáním:

    sudo systemctl restart ssh

V tomto okamžiku je ověřování založené na hesle zakázáno.

Závěr

V tomto tutoriálu jste se naučili, jak vygenerovat nový pár klíčů SSH a nastavit autentizaci pomocí klíče SSH. Stejný klíč můžete přidat na více vzdálených serverů.

Také jsme vám ukázali, jak deaktivovat ověřování heslem SSH a přidat další vrstvu zabezpečení na váš server.

Ve výchozím nastavení poslouchá SSH port 22. Změna výchozího portu SSH snižuje riziko automatických útoků.

zabezpečení centos ssh