Chi riesce a entrare nel tuo account AWS può cancellare tutte le tue macchine, portarsi via i tuoi dati o, cosa più frequente, creare decine di macchine potenti per minare criptovalute e lasciarti la fattura. Succede ogni giorno, e quasi sempre per lo stesso motivo: una password trapelata senza doppio fattore, o una chiave di accesso caricata per errore in un repository pubblico.
Proteggersi richiede venti minuti e non costa nulla. Sono quattro misure, e la prima è quella che conta davvero: se ne fai una sola, che sia quella.
Prima di iniziare: cosa significa ogni cosa
- Account root
- L'utente con cui è stato creato l'account AWS, quello che entra con l'indirizzo email. Può fare tutto, compreso chiudere l'account, e non si può limitare. Per questo va tenuto sotto chiave e non usato ogni giorno.
- Doppio fattore (MFA)
- Un secondo passaggio all'accesso, oltre alla password: un codice che cambia ogni 30 secondi in un'app del telefono, oppure una chiave fisica. Se ti rubano la password, senza il telefono non entrano.
- App di autenticazione
- Un'app gratuita per il telefono che genera quei codici (Google Authenticator, Microsoft Authenticator, Authy e altre). Va bene una qualsiasi.
- IAM
- Il servizio di AWS dove si creano gli utenti e si assegnano i permessi.
- Utente IAM
- Un'identità dentro il tuo account, con il proprio nome e la propria password, a cui puoi limitare cosa può fare. È con questo che dovresti entrare ogni giorno, invece che con l'account root.
- Chiave di accesso
- Lo "utente e password" che usano i programmi per parlare con AWS. L'account root non dovrebbe averne nessuna.
- Contatti alternativi
- Indirizzi e telefoni di fatturazione, operazioni e sicurezza a cui AWS scrive se succede qualcosa. Se non sono aggiornati, gli avvisi non arrivano a nessuno.
Passo dopo passo
Attiva il doppio fattore sull'account root
Entra in AWS con l'email dell'account (l'account root). In alto a destra, menu con il tuo nome, Credenziali di sicurezza. Nel blocco Autenticazione a più fattori (MFA), clicca su Assegna dispositivo MFA. Scegli App di autenticazione, apri l'app sul tuo telefono, scansiona il codice QR e inserisci due codici di seguito. Fatto: da ora in poi, entrare con l'account root chiederà il codice del telefono.
Puoi assegnare più di un dispositivo. Aggiungine un secondo (il telefono di un altro responsabile, o una chiave fisica tenuta in un cassetto) nel caso perdessi il primo: recuperare un account root senza doppio fattore è un processo lento con AWS.
Togli le chiavi di accesso dell'account root
Nella stessa schermata Credenziali di sicurezza, blocco Chiavi di accesso. Se ce n'è qualcuna, disattivala e, quando hai verificato che nulla smette di funzionare, cancellala. Una chiave dell'account root è una chiave maestra che non scade; nulla dovrebbe usarla. I programmi che hanno bisogno di accesso usano utenti o ruoli con permessi limitati (ci sono guide per entrambi in questa sezione).
Crea un utente amministratore per il giorno per giorno
Apri IAM, Utenti, Crea utente. Nome: il tuo nome o
admin-nombre. Spunta Fornisci accesso alla console e scegli una password. Nei permessi, Collega le policy direttamente e spunta AdministratorAccess: potrà fare quasi tutto, ma non chiudere l'account né cambiare i dati di pagamento, che restano all'account root. Crea l'utente e annota l'indirizzo di accesso che ti mostra (contiene il numero del tuo account).Se siete in più, un utente per persona. Non condividetene mai uno: quando qualcosa si rompe vorrai sapere chi è stato.
Metti il doppio fattore anche a quell'utente
Entra con il nuovo utente, menu con il tuo nome, Credenziali di sicurezza, e assegna un dispositivo MFA come al passo 1. Rendilo obbligatorio per tutti gli utenti che crei. Da ora in poi, entra sempre con questo utente e conserva la password dell'account root in un gestore di password, per usarla solo quando AWS la richiede (cambiare i dati di pagamento, chiudere l'account, qualche operazione insolita).
Aggiorna i contatti e metti un avviso di spesa
Con l'account root, menu con il tuo nome, Account: controlla l'email principale e compila i Contatti alternativi (fatturazione, operazioni, sicurezza) con indirizzi che qualcuno legga. Sono quelli che AWS usa per avvisarti di una chiave trapelata o di un uso anomalo. E crea un budget con avviso via email (c'è una guida in questa sezione): se qualcuno entra e comincia a creare macchine, l'avviso di previsione di spesa sarà probabilmente il primo segnale.
Controlla ogni tanto
Una volta a trimestre, in IAM, scheda Utenti: lavorano ancora qui tutte queste persone? Hanno tutti l'MFA? Ci sono chiavi di accesso che non si usano da mesi (colonna "Ultimo utilizzo")? Cancella quello che avanza. IAM ha inoltre un report delle credenziali scaricabile che riassume tutto questo in una tabella.
Cosa può andare storto
Ho perso il telefono con il doppio fattore dell'account root
Se hai registrato un secondo dispositivo, usalo e rimuovi quello perso. Altrimenti, AWS ha un processo di recupero che verifica l'email e il telefono dell'account; è lento ed è per questo che insistiamo sull'avere due dispositivi.
Un programma ha smesso di funzionare dopo aver tolto la chiave dell'account root
Quel programma stava usando la chiave maestra. Crea per lui un utente IAM con solo i permessi di cui ha bisogno (guida in questa sezione) e dagli la sua chiave. È esattamente il problema che volevi scoprire.
Mi chiede il doppio fattore ogni volta ed è una seccatura
È il prezzo, ed è piccolo in confronto a un account rubato. Le app di autenticazione ci mettono tre secondi. Se davvero dà fastidio, una chiave fisica USB è ancora più rapida.
Ho ricevuto un'email da AWS che dice che la mia chiave è in un repository pubblico
È vera ed è urgente: ci sono programmi che cercano chiavi su internet e le usano in pochi minuti. Entra, disattiva subito quella chiave, controlla in EC2 in tutte le regioni se sono comparse macchine che non sono tue, e rispondi al caso di supporto che AWS avrà aperto.
In Simplio
Simplio segue per te queste stesse regole: ogni utente entra con la propria password e il proprio doppio fattore obbligatorio (senza codici di recupero via email che si possano rubare), e le azioni delicate lo richiedono di nuovo. Le chiavi di AWS che registri vengono salvate cifrate e non vengono mai più mostrate, oppure non esistono proprio se ti connetti tramite ruolo. E il registro delle attività dice chi ha fatto cosa, quando e da dove.
La stessa cosa, in AWS e in Simplio
| Nella console di AWS | In Simplio | |
|---|---|---|
| Doppio fattore per tutto il team | Configurare l'MFA utente per utente in IAM e vigilare che lo facciano | Obbligatorio per tutti gli utenti di Simplio, senza codici di recupero via email |
| Limitare cosa fa ogni persona | Policy IAM scritte a mano | Permessi per azione e per macchina con caselle |
| Sapere chi ha fatto cosa | CloudTrail | Registro delle attività in linguaggio normale |