Nástroj ssh-keygen generuje, spravuje a převádí ověřovací klíče pro ssh. Při použití ssh-keygen k vytvoření klíče, -t musí být zadána volba pro identifikaci typu klíče, který se má vytvořit.
Obslužný program ssh-keygen vygeneruje pár klíčů SSH pro ověření se serverem. Tento nástroj je dodáván s OpenSSH a ve výchozím nastavení vytváří 2048bitový pár klíčů RSA. Podporuje RSA a DSA, oba s různou délkou klíčů. Pro vytvoření zabezpečeného spojení mezi dvěma počítači se doporučuje délka klíče 4096 bitů.
Při generování klíče ssh pro vašeho klienta se můžete setkat s níže uvedenou chybou:
-bash: ssh-keygen: command not found
Ssh-keygen je dodáván s balíčkem OpenSSH, ale v případě, že jej nemáte nainstalovaný ve svém systému, můžete jej nainstalovat pomocí níže uvedených příkazů podle vašeho výběru operačního systému.
Distribuce | Příkaz |
---|---|
OS X | brew install openssh |
Debian | apt-get install openssh-client |
Ubuntu | apt-get install openssh-client |
Alpine | apk přidat openssh |
Arch Linux | pacman -S openssh |
Kali Linux | apt-get install openssh-client |
CentOS | yum install openssh |
Fedora | instalace dnf openssh |
Raspbian | apt-get install openssh-client |
Docker | docker spusťte cmd.cat/ssh-keygen ssh-keygen |
Příklady příkazů ssh-keygen
1. Interaktivně vygenerujte klíč:
$ ssh-keygen
2. Určete soubor, do kterého se má klíč uložit:
$ ssh-keygen -f {{~/.ssh/filename}}
3. Vygenerujte klíč ed25519 se 100 cykly funkce odvození klíče:
$ ssh-keygen -t {{ed25519}} -a {{100}}
4. Vygenerujte RSA 4096bitový klíč s e-mailem jako komentářem:
$ ssh-keygen -t {{dsa|ecdsa|ed25519|rsa}} -b {{4096}} -C "{{comment|email}}"
5. Odeberte klíče hostitele ze souboruknown_hosts (užitečné, když má známý hostitel nový klíč):
$ ssh-keygen -R {{remote_host}}
6. Získejte otisk klíče v MD5 Hex:
$ ssh-keygen -l -E {{md5}} -f {{~/.ssh/filename}}
7. Změňte heslo klíče:
$ ssh-keygen -p -f {{~/.ssh/filename}}
8. Změňte typ formátu klíče (například z formátu OPENSSH na PEM), soubor bude přepsán na místě:
$ ssh-keygen -p -N "" -m {{PEM}} -f {{~/.ssh/OpenSSH_private_key}}