GNU/Linux >> Linux Esercitazione >  >> Linux

Ssh:la differenza tra una chiave Openssh e una chiave di mastice?

Ho trovato che ssh-keygen (pacchetto “ssh”) produce chiavi diverse da puttygen (pacchetto “mastice”).

Se creo chiavi pubbliche e private con ssh-keygen alcuni server SSH non accetteranno le mie chiavi. Se creo chiavi con puttygen solo un server lo accetta.

Perché i repository Linux non propongono una soluzione comune (pacchetto) per questo?

Ho trovato un altro pacchetto ssh-3.2.9.1 che crea chiavi che funzionano con PuTTY. Ma perché non esiste una soluzione pratica in SSH?

Risposta accettata:

OpenSSH è l'implementazione standard de facto del protocollo SSH. Se PuTTY e OpenSSH differiscono, PuTTY è quello che è incompatibile.

Se generi una chiave con OpenSSH usando ssh-keygen con le opzioni predefinite, funzionerà praticamente con tutti i server disponibili. Un server che non accetta tale chiave sarebbe antico, utilizzando una diversa implementazione di SSH o configurato in modo strano e restrittivo. Le chiavi di un tipo non predefinito potrebbero non essere supportate su alcuni server. In particolare, le chiavi ECDSA rendono la creazione della sessione leggermente più veloce, ma sono supportate solo dalle versioni recenti di OpenSSH.

PuTTY utilizza un formato di file chiave diverso. Viene fornito con strumenti per convertire tra i propri .ppk formato e il formato di OpenSSH.

Questo ssh-3.2.9.1 che hai trovato è un prodotto commerciale che ha un proprio formato di chiave privata diverso. Non c'è alcun motivo per usarlo al posto di OpenSSH. Può essere solo meno compatibile, richiede un pagamento e non ci sono quasi tutorial su come usarlo.


Linux
  1. SSH – Generazione e utilizzo di chiavi ssh

  2. La differenza tra [[ $a ==Z* ]] e [ $a ==Z* ]?

  3. La differenza tra .exrc e .vimrc?

  4. La differenza tra "env" e "printenv"?

  5. La differenza tra ~/.profile e ~/.bash_profile?

Nozioni di base su Linux:come creare e installare chiavi SSH sulla shell

Qual è la differenza tra Linux e Unix?

Che cos'è un hypervisor? Qual è la differenza tra il tipo 1 e 2?

Qual è la differenza tra curl e Wget?

Differenza tra l'heap Java e l'heap C nativo

Qual è la differenza tra unlink e rm?