Pattern di sicurezza per memorizzare chiavi SSH

2

Sto scrivendo una semplice applicazione per inviare attività scientifiche a risorse HPC remote. La mia applicazione in background parla con macchine remote via SSH (perché è ampiamente disponibile su varie risorse HPC). Per poter mantenere questa connessione in background, ho bisogno di usare le chiavi ssh dell'utente sulla macchina in esecuzione (quando l'utente ha accesso ssh senza password alla macchina remota) o devo memorizzare le credenziali dell'utente per le macchine remote.

Non sono sicuro di quale percorso devo prendere, dovrei memorizzare nome utente / password della macchina remota o dovrei memorizzare la coppia di chiavi SSH dell'utente nel database?

Voglio sapere qual è il modo corretto e sicuro per connettersi ai server remoti in background nel contesto di un'applicazione web.

    
posta Mehdi Sadeghi 25.08.2014 - 14:07
fonte

1 risposta

1

Le chiavi SSH sono solitamente migliori delle password perché:

  • Puoi configurare una chiave diversa per diversi scenari, ad es. per diverse macchine client o diverse applicazioni. Se uno viene compromesso, è possibile rimuovere quella chiave dal server ma i client che utilizzano l'altra chiave continueranno a funzionare normalmente. Con una password, ne hai solo una, quindi non puoi cambiarla per alcuni client senza costringere anche gli altri a cambiare.
  • Le chiavi di lunghezza ragionevole sono molto più difficili da decifrare delle password.
  • Le persone possono scrivere le loro password su un post-it e metterle a rischio di essere viste da qualcun altro. Le chiavi sono così lunghe che nessuno le stamperà.
risposta data 25.08.2014 - 18:16
fonte

Leggi altre domande sui tag