Dati: sicurezza in tempo di crisi

Backup server: strade alternative al Bare-metal recovery
In questo articolo saranno raccolte alcune informazioni di carattere generale relative ad una solida ed economica alternativa al backup Bare-metal. E’ sempre più importante garantire al proprio server un uptime elevato. Fatti salvi ragionevoli tempi di disconnessione programmati, riavvii del server, upgrade hardware e software, bisogna assolutamente definire una procedura di recupero da eventi disastrosi.
Perché una procedura di disaster recovery
Pensare al server solo come la casa del proprio sito web è riduttivo. I servizi online sono oggi sinonimo di piattaforme complesse che includono algoritmi di contatto con la clientela, servizi di CRM, miniere di dati per la profilazione dell’utente, strumenti di elaborazione h24. La loro inoperatività, anche solo temporanea, genera buchi elaborativi con ripercussioni enormi nel tempo. Resta indiscussa la sottovalutazione di questo problema su scala nazionale, vista anche l’insufficiente adozione di strumenti digitali nel nostro Paese.
Più spontanea, invece, la necessità di un uptime elevato in tutti quegli ambienti di gestione delle informazioni digitali che offrano servizi ai cittadini, nell’ambito della sanità, della pubblica amministrazione. Ma anche nel comparto privato per costruire database e studi che traccino l’evoluzione del tessuto sociale, che raccolgano eventi in tempo reale, che definiscano l’andamento di mercati finanziari su scala micro-economica come base di previsione del monetarismo che coinvolge la piccola e media impresa. Serve dunque una garanzia di sopravvivenza per tutte quelle informazioni difficilmente ricostruibili qualora fossero perdute.
Un contesto pratico e lo scenario di dati incompleti
Ipotizziamo di dover realizzare uno studio che mappi geograficamente gli individui muniti di cellulare per calcolare l’utilizzo di beni e servizi in un contesto esclusivamente microeconomico. Saremmo sommersi da flussi di dati costanti che generalmente sfuggono alle elaborazioni finanziarie sistemiche, nonostante ne rappresentino le unità costitutive. A titolo esplicativo, scendendo ad un livello di maggior dettaglio, queste registrazioni rappresentano le interazioni di marketing e i saldi quotidiani di bilancio di ogni singola azienda, bottega, esercente.
Trattandosi di informazioni in continuo divenire, il danno derivante dalla perdita di operatività di un server collettore, anche solo per tempi limitati, non sarebbe equiparabile alla mancata ricezione di una mail (per la quale si può concordare un invio successivo con l’interlocutore). La trasmissione e ricezione dei dati – in assenza di buffer di elevata capacità opportunamente configurati – non è differibile e ogni unità di informazione persa è persa per sempre perché ricavata in un delta tempo preciso a condizioni non riproducibili. Tale Δt è tanto più piccolo quanto è rapido il movimento di ciascuno degli individui tracciati tra una cella telefonica e un’altra. Pochi secondi al massimo che rendono accettabile un ritardo di trasmissione (salvando sul dispositivo locale lo storico degli spostamenti), grave un errore di ricezione per il quale devono essere previsti meccanismi di correzione, inammissibile la perdita dei dati.
Bare-metal sì, bare-metal no
Per molti dei server che ho avuto modo di configurare ho sempre previsto procedure di backup bare-metal. Qualora le apparecchiature fossero localmente raggiungibili, infatti, un’immagine di sistema potrebbe sembrare la risorsa più rapida per tornare online. In meno di un’ora, collegando un hard disk USB e affidandosi a strumenti quali dd, Bacula, Mondorescue o banalmente Clonezilla, è piuttosto semplice ripristinare un’immagine pulita di un qualunque sistema operativo senza perdere tempo in reiterate configurazioni e personalizzazioni post-installazione.
Ma dati e sistema sono due universi completamente differenti. Bare-metal non può sostituirsi ad una costante ridondanza dei database e in certi casi rappresenta una pericolosa breccia di sicurezza. Ad esempio, in caso di fault dovuto a vulnerabilità o virus, un sistema ripristinato così com’era prima di un malfunzionamento, molto probabilmente tornerà presto a soccombere. Anzi, offrirà nuovi spunti e tempo a malintenzionati per conoscere meglio i punti deboli della configurazione e attrezzarsi al fine di causare danni irreparabili.
Diverso è, e di indubbio vantaggio, un ripristino bare-metal a seguito di un hardware-fault. In tal caso, tornare operativi dopo un’ora rappresenta un piccolo miracolo.
Non sempre funziona
Il punto forte di bare-metal, come le parole suggeriscono, è nella parziale indipendenza da elementi “soft”, ovvero basati sul sistema operativo avviato. Ricordo negli anni 90 lo stupore nel vedere la partizione MS-DOS, con Windows 95 preinstallato, ricostruirsi da zero dopo un boot da floppy disk equipaggiato con Ghost Norton (e altri 30 dischetti da inserire uno ad uno). Il tempo ha permesso di perfezionare le tecniche rendendole sempre meno correlate alle geometrie dei supporti di memorizzazione: oggi le tabelle delle partizioni possono essere agevolmente scalate automaticamente su dischi fissi di destinazione anche in caso dimensioni differenti dalle originali. Si possono creare ISO autoinstallanti, caricabili via Preboot Execution Environment, permettendo la distribuzione in cascata degli stessi sistemi su centinaia di macchine contemporaneamente. Il re-imaging è veloce e spesso si svolge in meno di 15 minuti.
Ma allora perché non affidarsi sempre a sistemi bare-metal? Anzitutto perché fortunatamente i problemi di disaster recovery, che pure occorrono, non capitano tutti i giorni. Ripristinare un’immagine aggiornata a molti mesi prima equivale anche a ricaricare un sistema non aggiornato alle ultime patch di sicurezza e sicuramente non equipaggiato a evitare le problematiche che ne hanno causato il tracollo. Si potrebbe allora optare per pianificazioni quotidiane di backup dei volumi della propria configurazione. I contro però non mancano. I costi dell’online storage sono alti, proporzionali e certamente l’occupazione di spazio di un sistema operativo si misura in termini di gigabyte. Le risorse di rete e di processo sarebbero proibitive per la piccola impresa. Servizi eccellenti come Acronis sono abbordabili e facili da installare ma al primo aggiornamento del kernel del proprio server, necessitano di tanta manutenzione e spesso proprio il giorno in cui bisogna ricaricare il sistema operativo, la procedura fallisce prolungando ancor più gli interventi di recovery.
Frustrazioni e ansie
Dopo una problematica tecnica disastrosa non prevalgono solitamente lucidità e spensieratezza. Anzi, l’errore definitivo incombe dietro l’angolo. Frequentemente un imprecisato e irrisolvibile “System error” si palesa proprio per conto dei sistemi di backup e sentenzia l’inutilità del dispiegamento emergenziale. Il presidio che dovrebbe salvare, affossa l’admin e lo conduce dritto a quell’angusto spazio tra frustrazione e terrore. Un luogo che pullula di passi falsi che hanno qualcosa in comune con le ciliegie: uno tira l’altro.
Per evitare un simile cataclisma è essenziale puntare tutto su metodi solidi e controllabili al 100%, qualunque essi siano. Ho imparato a mie spese che le soluzioni chiavi in mano, quelle miracolose che risolvono con un click, si rivelano le meno efficienti. L’ansia semmai si cura con la consapevolezza di poter ricostruire completamente l’ambiente di lavoro nel minor tempo possibile e tramite step calcolati e verificabili.
Personalmente mi affido a sistemi di backup dei miei database che effettuano copie di sicurezza solo dei dati di lavoro, una o più volte al giorno, a seconda delle criticità del sistema, con relativa notifica mail. Da qualche anno inoltre ho abbracciato completamente tecniche di scrittura ridondante virtualizzata basate sulla collaudatissima tecnologia RAID (più dischi sullo stesso server, con copie dei dati in realtime, per evitare il rischio di guai a livello hardware o errori di scrittura), che però rendono appunto ancora più difficile far ricorso alla creazione di immagini del sistema operativo. Ad esempio, con LVM sarebbe necessario salvare snapshot di tutti i dischi (anche quelli di sola ridondanza) in modalità RAW. Visto che i dati non risultano sempre accessibili a livello logico durante un riavvio cold del sistema, i file immagine ingrassano in termini dimensionali. Come risolvere? Semplice: scartando tale scenario.
Da quest’anno i miei migliori amici tornano ad essere il prompt e bash, in ambiente Linux, perché la linea di comando è trasparente e permette di recuperare l’impensabile in caso di qualunque imprevisto. Se i miei sistemi crollano, riparto da un re-imaging del server in 10 minuti usando la più recente e patchata versione del sistema operativo (prediligo CentOS) messa a disposizione dal mio provider. Poi carico via SSH un file di pochi KB in cui ho inserito tutti i comandi post-installazione da compiere per ottenere configurazioni e restore dei dati che mi servono.
Certo, ho speso del tempo a litigare con utility come “expect” (per automatizzare tutte le risposte ai comandi) e “rsync”, ma l’ho fatto una volta, ho imparato qualcosa che non conoscevo appieno e soprattutto in ulteriori 10 minuti sono già online, focalizzato solo sulla barra di progresso che indica il tempo mancante per concludere i test di piena funzionalità. Pochi preziosi KB anziché giga e giga di dati con relativa contrazione dello snervante timing di upload.
Il take-home message
Il punto della questione è sempre lo stesso: per chi come me appartiene alla “vecchia scuola” di smanettoni della linea di comando, le soluzioni che non permettono di vedere “sotto il cofano” generano frustrazione. Purtroppo però la pigrizia, che è umana, conduce a evitare di approfondire ogni aspetto di operazioni che ormai dovrebbero essere acquisite e banali.
Eppure ricordo che nel 1989, affascinato dal Writing Assistant di IBM, desideravo creare il mio Word personale per capire come funzionasse. E’ questa la chiave. Non dobbiamo rimetterci a programmare la routine del mouse in MS-DOS, ma la competenza è necessaria, meglio se accompagnata dalla curiosità. E con essa, da una immensa dose di pazienza.