"Secure shell" SSH hè un protokollu di rete per stabilisce una cunnessione sicura trà l'ospiti, standard in u portu 22 (chì hè megliu cambià). I clienti SSH è i servitori SSH sò dispunibuli per a maiò parte di i sistemi operativi. Quasi ogni altru protocolu di rete funziona in SSH, vale à dì, pudete travaglià remotamente in un altru urdinatore, trasmette un flussu audio o video nantu à un canale criptatu, etc. In più,
L'autentificazione si faci cù una password, ma i sviluppatori è l'amministratori di u sistema usanu tradiziunale e chjave SSH. U prublema hè chì a chjave privata pò esse arrubbata. Aghjunghjendu una passphrase teoricamente pruteghja contra u furtu di a chjave privata, ma in pratica, quandu trasmette è cache e chjave, sò
Cumu implementà l'autentificazione à dui fattori
I sviluppatori di Honeycomb anu publicatu recentemente
L'istruzzioni assume chì avete un certu òspite basi apertu à Internet (bastion). Vulete cunnette à questu òspite da laptops o computer via Internet, è accede à tutti l'altri dispositi chì si trovanu daretu à questu. 2FA assicura chì un attaccu ùn pò micca fà u listessu ancu s'ellu accede à u vostru laptop, per esempiu installendu malware.
A prima opzione hè OTP
OTP - password digitale una volta, chì in questu casu serà utilizatu per l'autentificazione SSH cù a chjave. I sviluppatori scrivenu chì questu ùn hè micca una opzione ideale, perchè un attaccu puderia elevà un bastione falsu, intercepte u vostru OTP è l'utilizanu. Ma hè megliu cà nunda.
In questu casu, da u latu di u servitore, e seguenti linee sò scritte in a cunfigurazione di Chef:
metadata.rb
attributes/default.rb
(diattributes.rb
)files/sshd
recipes/default.rb
(copia darecipe.rb
)templates/default/users.oath.erb
Ogni applicazione OTP hè stallata da u cliente: Google Authenticator, Authy, Duo, Lastpass, installatu brew install oath-toolkit
o apt install oathtool openssl
, allora una stringa aleatoria base16 (chjave) hè generata. Hè cunvertitu à u formatu Base32 chì l'autentificatori mobili utilizanu è impurtatu direttamente in l'applicazione.
In u risultatu, pudete cunnette à Bastion è vede chì avà ùn deve micca solu una passphrase, ma ancu un codice OTP per l'autentificazione:
➜ ssh -A bastion
Enter passphrase for key '[snip]':
One-time password (OATH) for '[user]':
Welcome to Ubuntu 18.04.1 LTS...
A seconda opzione hè l'autentificazione hardware
In questu casu, l'utilizatore ùn hè micca obligatu à inserisce u codice OTP ogni volta, postu chì u sicondu fattore diventa u dispusitivu hardware o biometrics.
Quì a cunfigurazione di Chef hè un pocu più cumplicata, è a cunfigurazione di u cliente dipende da u SO. Ma dopu avè cumpletu tutti i passi, i clienti in MacOS ponu cunfirmà l'autentificazione in SSH usendu una passphrase è mette un dito nantu à u sensoru (secondu fattore).
I pruprietarii di iOS è Android cunfirmanu u login
In Linux / ChromeOS ci hè una opzione per travaglià cù tokens USB YubiKey. Di sicuru, un attaccante pò arrubbari u vostru token, ma ùn cunnosci ancu a passphrase.
Source: www.habr.com