Generate SSH Key Pair (Windows, Linux and PuTTy)

By | 21/11/2024

Last Updated on 21/11/2024 by administrator

Generate SSH Key Pair (Windows, Linux and PuTTy)

Generate SSH Key Pair (Windows, Linux and PuTTy)

Motivace:

Tento článek podrobně popisuje tři různé metody generování SSH klíčového páru a na Windows 11, Ubuntu 24.04 LTS a pomocí PuTTY ve Windows.

Implementace:

Níže je popsáno jak vygenerovat SSH klíčový třemi možnými způsoby a to přes:

  1. Windows 11
  2. Ubuntu 24.04 LTS
  3. Externím programem Putty ve Windows

1. Metoda č. 1 – Windows 11 (Version 23H2):

Otevřít příkazový řádek a pomocí příkazu níže vygenerovat privátní a veřejný klíč:

ssh-keygen -t ed25519

Výstup příkazu ssh-keygen -t ed25519 ukazuje, že ve složce C:\Users\uzivatel/.ssh/ se vytvořil klíčový pár. Pro zvýšení bezpečnosti privátního klíče je možné zadat heslo (tzv. passphrase):

Generating public/private ed25519 key pair.
Enter file in which to save the key (C:\Users\uzivatel/.ssh/id_ed25519):
Created directory 'C:\\Users\\uzivatel/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in C:\Users\uzivatel/.ssh/id_ed25519
Your public key has been saved in C:\Users\uzivatel/.ssh/id_ed25519.pub
The key fingerprint is:
SHA256:D9scLfY/7k1pvaE2lX0jX5Q+zHpFD4HykJafzgCocNk uzivatel@DESKTOP-8V74EQ0
The key's randomart image is:
+--[ED25519 256]--+
|     o .   o .   |
|  . o E . * . .  |
|   o .   o = . ..|
|    .     ..+ ..o|
|        S ++. +++|
|         B +o. OO|
|        . + . =+O|
|             =+=o|
|            .+*o.|
+----[SHA256]-----+

Ve složce C:\Users\uzivatel/.ssh/ se vytvořili dva druhy klíčů a to veřejný (id_ed25519.pub) a privátní (id_ed25519 bez přípony):

Generate SSH Key Pair (Windows, Linux and PuTTy)

2. Metoda č. 2 – Ubuntu 24.04 LTS:

Otevřít terminál a pomocí příkazu níže vygenerovat privátní a veřejný klíč:

ssh-keygen -t ed25519

Výstup příkazu ssh-keygen -t ed25519 ukazuje, že ve složce /home/user1/.ssh/ se vytvořil klíčový pár. Pro zvýšení bezpečnosti privátního klíče je možné zadat heslo (tzv. passphrase):

user1@ubuntu:~$ ssh-keygen -t ed25519
Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/user1/.ssh/id_ed25519):
Created directory '/home/user1/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/user1/.ssh/id_ed25519
Your public key has been saved in /home/user1/.ssh/id_ed25519.pub
The key fingerprint is:
SHA256:hC8oud4Cva33QO68oF17wkNga6V+Z9B5TFbVY6ei/ww user1@ubuntu
The key's randomart image is:
+--[ED25519 256]--+
|           ...   |
|       .  .   + .|
|      . ..   . + |
|  o... oo   . .  |
| oo=o..=S  . .   |
|. ==o o.o .      |
| +o=+. .   .E    |
| ++*Bo+     .o   |
|. +=*O.      .o  |
+----[SHA256]-----+

Ve složce /home/user1/.ssh/ se vytvořili dva druhy klíčů a to veřejný (id_ed25519.pub) a privátní (id_ed25519 bez přípony):

ls -l /home/user1/.ssh/
-rw------- 1 user1 user1 432 Nov 21 17:07 id_ed25519
-rw-r--r-- 1 user1 user1 115 Nov 21 17:07 id_ed25519.pub

Metoda č. 3 – PuTTy:

1. Stažení a spuštění PuTTYgen

2. Generování klíčů

Jak typ klíče bude vybrán EdDSA, což je je obecný algoritmus pro digitální podpisy založený na eliptických křivkách. Jako eliptická křivka bude vybrána Ed25519, což je křivka Curve25519 a je optimalizována pro bezpečnost a efektivitu. Následně kliknout na Generate a při generování pohybovat myší po okně PuTTYgen, což přispěje k náhodnosti generování.

Generate SSH Key Pair PuTTy

Generate SSH Key Pair PuTTy

Pro zajímavost Ed25519 nabízí ekvivalentní bezpečnost při mnohem menší velikosti klíče než RSA. Například Ed25519 poskytuje bezpečnost podobnou 3072bitovému klíči RSA s klíčem o velikosti pouhých 256 bitů. Ed25519 tak je úspornější z hlediska výpočetních nároků i paměti, což je výhodné pro použití v zařízeních s omezenými zdroji (např. IoT).

3. Uložení klíčů

  • Veřejný klíč:
    • Kliknout na Save public key pro uložení veřejného klíče do souboru.
    • Zkopírovat veřejný klíč z pole Public key for pasting into OpenSSH authorized_keys file
      • Pozn. Tento formát veřejného klíče je potřeba mít pokud se bude vkládat souboru authorized_keys např. na Unix/Linux OS.

PuTTy Key Generator

  • Privátní klíč:
    • Kliknout na Save private key. Pro zvýšení bezpečnosti privátního klíče je možné zadat heslo (tzv. passphrase)
    • Uložit soubor s privátním klíčem na bezpečné místo.

PuTTy Key Generator

 

 

Další články:

V dalším článku je ukázáno, jak naimportovat SSH veřejný klíč do Unix/Linux serveru.

Import SSH Key Linux

Dobrovolný dar

Ahoj čtenáři, rád bych tě poprosil aby ses zamyslel, co je vše potřeba ke vzniku článku.
Jakožto amatérský softwarový kutil musím:

1) Nejdříve vše nastudovat v cizích jazycích.
2) Vše následně prakticky vyzkoušet.
3) Svoje poznatky a zkušenosti napsat do článku který si právě přečetl v jazyku kterému rozumíš.
4) Dát článku hlavu a patu a publikovat.

Každý článek zabere několik hodin práce, za kterou mi nikdo neplatí.
Prosím zvaž, kolik času jsem ti právě ušetřil.
Pokud ti to stojí aspoň za cenu jedné kávy, tak mi ji kup.
Předem moc děkuji.

Příspěvek tak můžeš provést zasláním libovolné částky na mé číslo účtu 1558701011/3030 Nebo můžeš dar poslat kliknutím na tento odkaz Podpořit tento WEB , který tě přesměruje na mou platební bránu Revolut.

Dar je také možné poslat ve formě Bitcoinu na BTC peněženku bc1qqdf5fp42a7srwwhh2rut8zr9x4jm5c8fqc9qw6

Veškeré peněžní prostředky budu také používat na zlepšení kvality své webové tvorby a na psaní nových technických návodů. Za každý dar předem děkuji.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *