GNU/Linux >> Znalost Linux >  >> Linux

Jak ověřit, že certifikát Ssh byl podepsán zadaným soukromým klíčem Ssh Ca?

Snažím se zpevnit své nastavení ssh pomocí tohoto materiálu. Funguje to dobře, ale mám otázku, na kterou se snažím najít odpověď.

Ví někdo, jestli existuje způsob, jak zkontrolovat podpis certifikátu hostitele/uživatele ssh proti SSH CA? Vím, že se mohu jen pokusit připojit ssh do hostitele, který má tento hostitelský certifikát, a pokud se připojí, podpis je samozřejmě v pořádku...
Ale píšu automatizační úlohu a potřebuji programový způsob, jak zajistit, že soubor certifikátu je podepsán CA. Řekněte nějaký ssh-keygen příkaz nebo cokoliv jiného.

AKTUALIZACE:

Jak navrhl @PKapp:

Mohl bych porovnat dva výstupy:otisk podepisující CA od certifikátu na straně serveru a otisk samotného CA

sudo ssh-keygen -L -f /etc/ssh/ssh_host_ed25519_key-cert.pub | fgrep "Signing CA" | sed 's/^[ t]*//' | cut -d ' ' -f 4
SHA256:LkdPQLdx4tuZp7pG0g6nAJqilFd6ZzjGdgVEV9elrdA

sudo ssh-keygen -l -f /etc/ssh/id_ed25519-HostCA.pub | cut -d ' ' -f 2
SHA256:LkdPQLdx4tuZp7pG0g6nAJqilFd6ZzjGdgVEV9elrdA

Pokud jsou filtrované výstupy identické, pak se certifikáty shodují…

Přijatá odpověď:

Chcete-li vzdáleně získat certifikát(y) hostitele ssh, můžete použít ssh-keyscan -c <hostname> (bez -c možnost, získáte pouze hostitelský klíč (klíče). Pro omezení na konkrétní typ certifikátu můžete zahrnout -t type pomocí ssh-rsa není [email protected] , v případě potřeby.

Poté můžete extrahovat podrobnosti certifikátu, včetně veřejného klíče podepisující CA, pomocí ssh-keygen -L -f <certfile> . Pokud použijete (malá písmena) -l místo toho pak ssh-keygen vypíše pouze informace o základním (veřejném) hostitelském klíči vloženém do certifikátu, nikoli všechny prvky certifikátu.


Linux
  1. Jak nastavit klíče SSH

  2. Ssh – vzhledem k soukromému klíči Ssh, jak obnovit veřejný klíč?

  3. Jak získat veřejný klíč ze soukromého klíče Ssh?

  1. Jak vygenerovat pár klíčů SSH (s příklady)

  2. Jak nakonfigurovat ověřování na základě klíče SSH v systému Linux

  3. Jak nastavit klíče SSH na Ubuntu 18.04

  1. Jak nastavit SSH přihlášení bez hesla

  2. Jak importovat soukromý klíč do FileZilla pro SFTP

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