Quante chiavi private di SSH da configurare per più server?

Il process generale è quello di generare un paio di chiavi pubbliche e private e caricare la chiave pubblica al server per la connessione SSH.

Quindi, se devo gestire una grande quantità di server, dovrei:

  1. Riutilizzare tale chiave pubblica per tutti i server?

O

  1. Generare diverse coppie di chiavi per ciascuno di questi server.

Personalmente credo che la prima scelta sia abbastanza buona dalla prospettiva di sicurezza. Ho ragione?

Grazie.

    One Solution collect form web for “Quante chiavi private di SSH da configurare per più server?”

    La risposta generale è che probabilmente vuoi mettere la stessa chiave pubblica personale su tutti i server / account che desideri accedere. Per tutti gli scopi pratici è più o less imansible derivare la chiave privata dalla corrispondente metà pubblica.

    Poi ci sono un sacco di potenziali eccezioni.

    • Mentre è normalmente una buona regola per proteggere la password passphrase privata che potrebbe essere less eseguibile durante l'esecuzione di determinate attività automatizzate. A tal fine, si potrebbe anche desiderare di avere un keypair separato con una chiave privata non crittografata, da utilizzare verso quei conti certamente (auspicabilmente limitati).

    • Supponendo che ci si collega principalmente a server abbastanza moderni, la tua chiave personale ssh potrebbe essere del tipo ed25519. È quindi ansible che per motivi di compatibilità sia necessario un keypair secondario del tipo RSA per poter eseguire l'accesso ai server che eseguono una versione precedente di OpenSSH. Tranne che in tal caso è probabilmente abbastanza buono per andare RSA per tutto il tempo.

    • Se si utilizza molto l'inoltro dell'agente ssh, c'è un vantaggio teorico nell'utilizzare le chiavi separate, limitando i danni che un server dannoso può fare. Tranne che immagino che questo in pratica diventa disordinato. Probabilmente meglio allora semplicemente stare lontano dall'agente inoltro poi.

      Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.