Sommario:
- NTP: un protocollo essenziale
- Quando NTP fallisce
- La comunità NTP
- Protezione di NTP
- A Stitch in Time
Ecco qualcosa di interessante a cui potresti non aver pensato: è probabile che alla prossima generazione di dispositivi comuni vengano assegnati indirizzi IP IPv6. Ciò significa che il tuo frigorifero sarà in grado di avvisarti quando stai per esaurire il latte e la tua stufa può salvare la giornata facendoti sapere che la cena sta per essere bruciata. Per fare questo, questi dispositivi avranno bisogno di una fonte affidabile per riferimento temporale. Network Time Protocol (NTP) offrirà proprio questo e molto probabilmente da un orologio atomico da qualche parte a monte.
Non è un problema di proporzioni che cambiano la vita se non puoi avere latte con il caffè del mattino (anche se a volte sembra così!) Ma se l'NTP fallisce in modo spettacolare, alcuni sistemi molto più critici possono fallire di conseguenza. Qui daremo uno sguardo a NTP, dove viene utilizzato e cosa controlla. Sarai sorpreso di scoprire quanto sia comune questo piccolo protocollo.
NTP: un protocollo essenziale
Quasi tutto ciò che è connesso a Internet utilizza NTP per sincronizzare l'orologio o, in caso contrario, il suo software probabilmente ha un'impostazione che gli consente di utilizzare NTP. Smartphone, server e switch sono solo alcuni dei numerosi dispositivi connessi a Internet che fanno affidamento sul tempo per eseguire operazioni critiche come l'istanza di backup o il controllo degli aggiornamenti di sicurezza. E quando NTP non funziona correttamente, il risultato può essere il caos.Quando NTP fallisce
Un problema secolare che si riscontra ancora in alcuni sistemi operativi più vecchi è il dare o avere un'ora stagionale noto comunemente come ora legale. Il turno di un'ora, quando improvvisamente introdotto in un server occupato, ad esempio, può causare problemi a vari livelli. Il server potrebbe confondersi con la creazione o la scrittura dell'ultimo file. Questo può portare a tutti i tipi di errori, causando il fallimento dei servizi. Inoltre, i processi pianificati, come la scansione del file system alla ricerca di malware o virus, potrebbero essere eseguiti nuovamente nonostante siano già stati completati. Se tale attività richiede molte risorse, il risultato sarà una prestazione del server non ottimale. Per molte aziende, come i siti Web di e-commerce, ciò può avere un impatto significativo sui profitti.
A rischio di allarmismo (mi viene in mente il bug Y2K) un certo "balzo secondo salto" in realtà ha fatto qualche danno. Nel luglio 2012, Reditt, Gawker, Mozilla e altri grandi siti hanno avuto problemi tecnici e interruzioni dopo che un solo secondo è stato rimosso dagli orologi atomici del mondo. Puoi vedere che le grandi aziende hanno sentito la perdita di un solo secondo e che tali problemi di sensibilità temporale non sono solo una prerogativa delle piccole imprese senza le risorse per implementare in anticipo le misure preventive.
La comunità NTP
Quindi, come si propaga il Network Time Protocol su Internet? Risale a un'epoca in cui Internet era una comunità più affidabile. Senza entrare troppo nei dettagli tecnici, considera che gli orologi atomici, comunemente considerati i tipi più precisi (e relativamente raggiungibili) di pezzi temporali, siedono nella parte superiore di una gerarchia, come mostrato nell'immagine qui sotto.
Fonte: http://commons.wikimedia.org/wiki/User:Bdesham
La gerarchia funziona inizialmente in base alla fiducia o alla località che potresti dire. Lo strato 0 è il livello successivo sotto l'orologio atomico ed è generalmente un server temporale collegato direttamente a quell'orologio atomico. Quindi, controllato con alcune regole esplicite di firewalling, alcuni server possono richiedere le macchine Stratum 0 per l'ora corretta.
In modo che non ci sia mai troppo carico su queste macchine, si connettono selettivamente a server NTP affidabili al di sotto di loro (almeno in termini di gerarchia), chiamati server Stratum 1 e così via. Utilizzando questo modello, chiunque disponga di un computer su Internet può connettersi a uno o più server (molti sono spesso utilizzati per affidabilità in caso di guasto di un server NTP) che hanno recentemente ricevuto un'ora esatta da un orologio atomico.
Protezione di NTP
Molte aziende gestiscono i propri time server nell'interesse della sicurezza perché un'interruzione chiara, ampia e sgradita è possibile se a un gruppo chiave di server aziendali viene assegnato il momento sbagliato.
Di conseguenza, le implementazioni più moderne di NTP possono essere completamente protette a un livello impressionante, dando fiducia agli amministratori di sistema e di rete. Non vi è dubbio, tuttavia, che alcune operazioni richiedono una sicurezza e una crittografia ancora più rigorose, dando il più vicino possibile alla garanzia che il server che si collega a un prezioso server NTP, potenzialmente sensibile al carico, sia correttamente identificato come affidabile. Ulteriori informazioni sulla crittografia degli scambi NTP sono disponibili sul sito ntp.org.
Essendo un protocollo usato quasi ovunque, NTP ha un track record relativamente buono per i bug di sicurezza, ma tutto ciò che è ampiamente utilizzato come questo protocollo è sempre soggetto a exploit.
A Stitch in Time
Se si considera che IPv6 ha un numero così elevato di indirizzi IP nel suo pool di allocazione, è possibile capire perché i produttori stanno spingendo per connettere un numero crescente di dispositivi a Internet per beneficiare di funzionalità superiori. Puoi essere certo che NTP svolgerà un ruolo significativo in ciascuna build di software di tali dispositivi. Quando si tratta di moderne apparecchiature elettroniche di tutte le forme e dimensioni, un punto nel tempo consente di risparmiare nove. (circa IPv6 in The Trouble With IPv6.)