La chiave di scambio SSH è più sicura dell'authentication delle password?

Gli utenti remoti si connettono a diversi servizi presso il nostro ufficio principale tramite Internet utilizzando SSH. La password SSH viene sincronizzata con il proprio account A / D LAN.

Avrebbe gli utenti portre una copia di una chiave chiave SSH utilizzando qualcosa come un CD o un pezzo di carta essere più sicuri di avere gli utenti di digitare la password? Oppure dovrei richiedere entrambi?

  • Blocca l'accesso dei dipendenti alla cloud pubblica
  • Applicare le password chiave di SSH?
  • Devo utilizzare un banner di login e, in caso affermativo, cosa dire?
  • Traffico in una nuvola privata virtuale AWS
  • iptables | Tipi di ICMP: quali sono (potenzialmente) nocivi?
  • Disabilita l'elenco delle directory con 404 invece di 403
  • La mia domanda potrebbe probabilmente essere riformulata come segue: c'è qualche vulnerabilità nel protocollo di authentication della password di SSH?

    È questo messaggio che mi fa dubitare:

    The authenticity of host 'xxx.xxx.xxx.xxx (xxx.xxx.xxx.xxx)' can't be established. RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:. Are you sure you want to continue connecting (yes/no)? 

    2 Solutions collect form web for “La chiave di scambio SSH è più sicura dell'authentication delle password?”

    Il messaggio che stai vedendo è un problema distinto. Ti chiede di confermare che l'host a cui stai collegando è davvero quello che ti aspetti. Dal server, è ansible get l'impronta digitale eseguendo ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key.pub . Poi, quando si sta collegando in remoto per la prima volta, è ansible assicurarsi che le impronte digitali corrispondano.

    Le chiavi host, viste in azione qui, affrontano il problema dell'uomo negli attacchi medi : forse il DNS è stato sovvertito e si sta collegando alla macchina di un concorrente invece che al tuo. Quella macchina raccoglie le tue credenziali e trasmette in modo trasparente la tua connessione al vero server, rubando le tue informazioni senza che tu ti conosca. Assicurarsi che le chiavi di host impediscano che ciò accada, a less che l'attaccante non abbia effettivamente rubato la chiave pubblica del tuo server.

    Rimane un problema, però – come fai a sapere quale chiave è giusta? Dopo la prima connessione, la chiave pubblica viene memorizzata nel file ~/.ssh/known_hosts , in modo che le connessioni successive siano soddisfacenti. Ma per la prima volta, hai bisogno di un metodo fuori banda per get l'impronta digitale, altrimenti segui il model "TOFU": il trust-on-first-use.

    Ma niente di questo ha nulla a che fare con le password contro le chiavi, tranne che entrambe le chiavi e le password potrebbero essere rubate tramite questo attacco – in un certo senso, è la vulnerabilità che stai chiedendo.

    C'è (alless) tre motivi per cui le password sono peggiori delle chiavi:

    1. Possono essere forzati. Una password tipica di 8 caratteri selezionata dall'utente ha circa 30 bit di indagine-entropia. Una coppia di chiavi public / private di ssh è 1024 bit o superiore. E 'effettivamente imansible bruciare una chiave di ssh, ma l'ipotesi di password automatica avviene tutto il tempo.
    2. Possono essere stupidi. Gli utenti selezionano regolarmente password terribili, anche con restrizioni in atto, e tendono ad utilizzare password più difficili in più posti. Ciò rende più facile gli attacchi.
    3. Le password possono essere rubate in remoto. Quando si utilizza SSH, la password viene crittografata sul filo, ma è molto comune per il server ssh essere sostituito in sisthemes compromessi con uno che registra tutte le password. Con i tasti, la chiave privata rimane sul sistema locale e non viene mai inviata affatto e quindi non può essere rubata senza compromettere la macchina client.

    Inoltre, i tasti ssh offrono la comodità quando utilizzati con qualcosa di simile a ssh-agent – si ottiene il funzionamento senza problemi di connessione senza riesaminare each volta, pur mantenendo un ragionevole grado di sicurezza.

    Non c'è un vantaggio significativo nel chiedere entrambi, poiché qualcuno che ha abbastanza accesso a rubare la chiave privata può abbastanza facilmente rubare la password dell'utente. Se hai bisogno di maggiore sicurezza rispetto a questo, consideri di considerare un sistema di authentication a due fattori, come RSA SecurID o WiKID .

    quello che stai davvero chiedendo è "è un fattore migliore rispetto a quello", l'argomento è l'authentication multifattoriale e veramente ti consiglierebbe di esaminare l'argomento.

    Tipicamente un "fattore" è qualcosa che conosci (password), qualcosa che hai (file ssh o chiave swipe card) o qualcosa che sei (impronte digitali).

    Uno non è meglio che anouther per se, sono gratuiti. Perdere un cd con il file di chiavi è altrettanto male come divulgare la tua password se è tutto ciò che ti serve. Per gli ambienti sicuri, l'authentication di due fattori è comune.

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