Browsed by
Category: Personal

Sysadmin SI NASCE.

Sysadmin SI NASCE.

Esiste un problema. Un problema che nel mio settore si fa ogni giorno più pressante. Si chiama “improvvisazione”. Noi definiamo “improvvisato” quella persona che, dopo aver installato un server seguendo un howto e copiaincollando i comandi senza averli minimamente capiti, si sente, alla pari di ben più skillati sistemisti, pronta a gestire sistemi in produzione. E si lancia a farlo.

devotion_to_duty

I (veri) professionisti si trovano ogni giorno a dover combattere attacchi di vario genere, dallo spam ai DDoS, e nel 99.9% dei casi si scopre che provengono da macchine, appunto, in mano a persone che non hanno praticamente nessuna esperienza nella gestione di sistemi.

Non l’ho raccontato qui per pietà nei confronti degli interessati, ma qualche tempo fa alcuni siti su un server che gestisco, tutti facenti capo alla stessa persona, sono stati defacciati. Dopo una approfondita analisi dei log, ho concluso che chi è entrato via FTP aveva la password (probabilmente recuperata con un keylogger). Avendo trovato IP italiani nei log del deface, ho contattato i proprietari di due di quelle macchine, diventate sicuramente parte di una botnet ed usate da terzi per commettere illeciti. Il primo, dopo una risposta iniziale particolarmente sgarbata, confermando di non essersi accorto del fatto che il suo server veniva usato da terze persone per defacciare siti, ha preso le misure necessarie. Il secondo, no. Mi ha minacciato, dicendo che mi avrebbe denunciato per diffamazione, perchè quello che stavo dicendo era sicuramente inventato, e che se il provider, al cui abuse avevo segnalato la questione, gli avesse bloccato il server, mi avrebbe chiesto i danni. Perchè io mi stavo inventando tutto.

Inutile dirlo, dopo avergli spiegato come connettersi via SSH e come lanciare il comando “last”, sono venuti fuori login (root) da ogni parte del mondo sulla sua macchina. Login di cui lui, ovviamente, non sapeva niente.

Non sapeva bene cosa fosse SSH, ma il server lo aveva installato. I servizi erano up, il sito web era correttamente funzionante. Perchè, questo? Perchè siamo nel 2013. Perchè esistono pannelli di controllo e howto. Pannelli di controllo come Plesk e cPanel, che svolgono egregiamente tutte le operazioni di configurazione iniziale e di gestione ordinaria di una macchina. Questo è il punto. Il sistemista improvvisato, non fa niente che già non si possa fare con dei semplici click in un pannello di controllo. Non fa niente che non si possa fare cercando una guida su internet e copiaincollando i comandi indicati.

Considero infatti gli howto alla pari dei pannelli di controllo “tuttofare”. Guide passo a passo, che portano anche la persona più incapace a configurare un determinato servizio. I sistemisti improvvisati esistono perchè esistono le guide step by step, e queste guide esistono perchè vendono, perchè fanno views, e le fanno perchè esistono gli improvvisati. Il nocciolo della questione è che la guida spiega come installare qualcosa e come effettuare configurazioni basilari. Ma non spiega come gestire. Non spiega come affrontare i casi eccezionali. Perchè questo, forse, non può essere insegnato.

Chi usa una guida pronta, delega a terzi (cioè a chi quella guida l’ha scritta) tutta la fase preliminare di ricerca, di documentazione e di assemblaggio di diverse fonti, nonchè il testing. Si tratta invece di una componente fondamentale del nostro lavoro. Perchè è così che impariamo a muoverci senza usare guide, è questo il modo in cui impariamo ad affrontare situazioni non ordinarie. È così, e solo così, che impariamo a camminare (anzi, a correre) nel buio.

Partiamo dal presupposto che tutto quello che può essere spiegato in termini semplici ed in modo sequenziale a degli incapaci, può anche essere eseguito da una macchina. Anni e anni di howto su come installare un ambiente LAMP. Poi arriva cPanel. Si inventa EasyApache. E da quel momento con un comando si può fare in 3 secondi tutto quello che con la guida si faceva in 3 ore. A copiare righe di codice, sono capaci tutti. Le macchine sono bravissime ad eseguire comandi in sequenza prestabilita. Sono le migliori: le abbiamo inventate inventate noi, e le abbiamo inventate per fare proprio questo.

Se ne deduce che una persona che gestisca macchine in questo modo, non ha senso di esistere. Se l’amministrazione di un sistema consistesse solo in queste semplici e sequenziali operazioni, le macchine stesse saprebbero autogestirsi. Anzi, lo fanno già: ci sono strutture che svolgono il 90% delle operazioni di routine senza supervisione umana.

Ma gestire server è molto, molto altro. Le situazioni ordinarie durano ben poco, e ci si trova spessissimo a dover gestire casistiche eccezionali, a dover svolgere operazioni impossibili da eseguire attraverso un pannello di controllo. A dover svolgere operazioni per le quali non si trova da nessuna parte una guida pronta all’uso, perchè magari prima di noi nessuno si è trovato incastrato nella situazione in cui noi invece ci troviamo. Interventi per cui serve una mente umana, un cervello. Un cervello che funzioni, non un cervello che sappia solo usare i comandi cut&paste.

Si, è vero, molte operazioni sono state automatizzate negli ultimi anni, prima le svolgeva un uomo e adesso le svolge una macchina. Ma, state attenti: sono stati automatizzati quei processi che già il sistemista svolgeva in modo “automatico”, comportandosi come una macchina. Solo quelli: tutto il resto non potrà mai essere automatizzato. Forse si, un giorno succederà. Ma non a breve/medio termine.

Alcuni sostengono che stia proprio in questo l’abilità innata dei sysadmin. Saper affrontare situazioni, saper gestire casistiche eccezionali, saper gestire (e risolvere) i problemi. Saper cercare soluzioni, conoscere e saper usare gli strumenti a disposizione. Avere la tendenza che ti porta ogni giorno, senza nessuna spinta, a trovare nuovi strumenti e a scoprire nuove cose. Le capacità tecniche si possono acquisire, il resto no: si imparano i comandi da utilizzare, ma non si impara il modo in cui affrontare le situazioni critiche. Ed è questo che conta, è questo a fare la differenza.

Spesso, infatti, quando consiglio ad un improvvisato di cambiare professione, non lo faccio perchè abbia dimostrato di non conoscere semplici comandi o di non sapere il significato di alcuni termini tecnici, ma perchè noto la mancanza di abilità e tendenze ben più importanti. A volte vengo ricoperto di domande, domande la cui risposta è contenuta nell’anteprima del primo risultato di ricerca su Google. Questo, a mio parere, è un chiaro segno. Se l’istinto ti porta a chiedere a qualcuno che già sa piuttosto che a cercare da solo una risposta, sarai un perfetto studente, un perfetto schiavo del metodo educativo moderno. Ma, tranquillo, non farai mai il sistemista. Non giriamoci intorno. È così.

C’è chi nasce particolarmente portato al gioco di squadra e fisicamente agile, e diventa calciatore. Ci sono ragazze che nascono particolarmente belle, fini e portate alla cura della persona, e diventano modelle. Non si capisce perchè si sia invece diffusa la convinzione che chiunque possa diventare sistemista. Non si capisce come mai chiunque voglia diventarlo, e come mai sia così difficile difendere la professionalità in un mestiere che sta diventando sempre più critico e importante.

Non vorreste mai volare su un aereo pilotato da una persona con in mano una guida step by step. Non vi fareste mai trapiantare il cuore da qualcuno che, forte di 20 anni di esperienza in macelleria e con l’aiuto di un video su Youtube, vi garantisce di saperlo fare. Perchè, per risparmiare qualche euro, date in mano i vostri siti, i vostri gestionali e i vostri strumenti di comunicazione a persone che non fanno niente di più di quanto già le macchine stesse non facciano?

E tu. Si, tu, sistemista improvvisato che stai leggendo. Fai un favore a tutti noi: lascia che le tue 40 ore di lavoro settimanali diventino 2 ore di un vero professionista, anche se queste sue due ore costeranno al cliente come le tue 40. Sarà meglio per tutti.

Per oggi ho finito.

Giorgio

We speak IPv6!

We speak IPv6!

Inutile ricordare quanto sia importante la diffusione, immediata, di IPv6. Un modo per non restare indietro, per restare al passo con il mondo di internet che corre veloce (e, cresce). Un modo per evitare gli scenari apocalittici da esaurimento di indirizzi v4, un modo per non tornare al paleolitico: alle connessioni lente, ai siti irraggiungibili.

Quindi, da oggi (da qualche giorno in realtà, ma ero in fase di testing) grg.pw è raggiungibile anche in IPv6:

;; ANSWER SECTION:
grg.pw.        37216   IN      CNAME   tmp6.grg-web.eu.
tmp6.grg-web.eu.        17348   IN      A       205.185.117.144

;; ANSWER SECTION:
grg.pw.        37176   IN      CNAME   tmp6.grg-web.eu.
tmp6.grg-web.eu.        17308   IN      AAAA    2607:f358:1:fed5:5:0:484:1

Il supporto IPv6 è offerto nativamente da BuyVM (di cui avevo già parlato qui), provider presso il quale è ospitata la VPS su cui gira questo sito (credo passerò a qualcosa di più serio nei prossimi mesi, appena ne trovo il tempo, quasi sicuramente Linode).

Probabilmente, se volete connettervi al mio sito usando questo protocollo, dovete creare un tunnel “6in4” (hey, è gratis!). Ora come ora non ho guide pronte (potrei pensare di scriverne una), per cui vi rimando a GoGo6, ottima risorsa per chi decidesse di avvicinarsi a questo mondo (e anche per chi fosse costretto a farlo).

Ho testato tutto in tutti i modi possibili immaginabili (in dual stack è facile lasciare indietro qualcosa e non accorgersi degli errori), ma qualche svista può sempre esserci. Vi prego, nel caso in cui riscontraste errori o notaste qualcosa che non va, di contattarmi (rispondo sempre!). Al momento in cui scrivo manca il reverse DNS per l’indirizzo IPv6 (hmm, potrebbe esser problematico l’invio di email) e il setup DNS è ancora provvisorio (ho creato record temporanei per un veloce rollback in caso di problemi).

Anche Postfix (usato solo per le email in uscita dal blog, attualmente) è stato configurato per privilegiare le connessioni IPv6 rispetto alle v4. Molti sconsigliano questa pratica a causa dei problemi di connettività, io però ho voluto provare, pre rendermi conto. Terrò sotto stretto controllo i log. Fortunatamente, il traffico è minimo.

Il prossimo passo sarà rendere anche le mie mailbox (grg-web.eu e altri) compatibili con IPv6, ma questo è già più complesso, e non dipende completamente da me (le mailbox sono ospitate da Directi per ragioni di affidabilità e stabilità, e allo stato attuale delle cose non ci sono le premesse per tornare su una soluzione in-house). Stesso dicasi per i NameServer di grg-web.eu. Sono gestiti da Directi, e non accettano connessioni IPv6.

Una piccola nota: ieri pomeriggio mi sono messo alla ricerca di fornitori di webhosting con supporto IPv6, per pura curiosità, con risultati abbastanza imprevisti: i grandi, tra i quali Aruba, non sembrano conoscere minimamente questa nuova tecnologia. OVH offre supporto IPv6 solo sul “fronte” web (HTTP).

L’unico provider ad offrire supporto IPv6 (quasi) completo è, con immenso stupore (chi era cliente nel periodo di passaggio da PHP4 a PHP5 sa di cosa parlo) Tophost: oltre al lato web, rispondono in AAAA anche gli MX e i servizi SMTP e IMAP/POP. Il pannello di controllo, così come il sito aziendale, rimangono v4-only. Ho provveduto, considerata l’offerta in homepage, a comprare il dominio+hosting goingv6.eu. Anche se non so ancora cosa farci.

Se le politiche interne non sono cambiate da quando sono sparito io, uno dei prossimi ad arrivare nel mondo delle 4 “a” dovrebbe essere la mia amata Supernova SRL.

Vi aggiorno.

Giorgio

Un tema come si deve (finalmente)

Un tema come si deve (finalmente)

Finalmente ho trovato un tema ben fatto, un tema che funziona, un tema che sia come lo voglio io. E’ solo un pò troppo dark, ma il fatto che sia quasi perfetto mi spinge quasi a modificarlo.

Università e cluster vari permettendo (ho avuto un bel da fare con gli ultimi tranci di fibre), mi ci dedicherò nelle prossime settimane, sperando in risultati decenti.

Una delle cose che più apprezzo sono le iconcine “social” in alto. Ho aggiunto poi alcuni widget di Jetpack*, come quello di Twitter o le sottoscrizioni via email.

Come al solito, vi prego di segnalarmi qualunque problema via email. E prometto anche che tornerò a postare contenuti interessanti, appena ne avrò il tempo.

Colgo l’occasione per aggiornarvi sul cambio di server di cui ho parlato un pò di tempo fa: semplicemente, funziona. Di solito sto sempre largo con la RAM, quindi ho raggiunto livelli di ottimizzazione che nemmeno mi aspettavo (120 mb di RAM usati su 256 con tutto funzionante e blog + altri due o tre siti di servizio trafficati). Il servizio di BuyVM è ottimo, nessun un down o un rallentamento (per ora). Direi che è tantissimo per un lowcost così estremo. State attenti, lo ricordo sempre, usate un servizio così solo se sapete cosa state facendo.

Detto questo,

scappo.

 

Giorgio

* Sono riuscito ad installare ed attivare Jetpack dopo due mesi di debugging estremo con Andrew, Mike e Sheri di WordPress.com (che ringrazio per la professionalità e simpatia -uno di loro firma le email come “Happiness Engineer”-) perchè c’era un qualche tipo di problema con il mio nuovo server.

Comunicare.

Comunicare.

Comunicare: è la prima cosa che impariamo davvero nella vita. La cosa strana è che, piú noi cresciamo, impariamo le nostre parole e iniziamo davvero a parlare, più diventa difficile sapere cosa dire e ottenere quello che vogliamo davvero.

Alla fine del giorno, ci sono cose che non riesci a non dire. Alcune cose semplicemente non vogliamo sentirle, e altre cose le diciamo perchè non riusciamo piú a stare in silenzio. Alcune cose sono al di là di quello che puoi dire, sono quelle cose che fai e basta. Alcune cose le dici perchè non hai altra scelta, altre cose le tieni per te. E non accade troppo spesso, ma di tanto in tanto, alcune cose semplicemente parlano da sole.

Non guardo Grey’s Anatomy, mai vista una puntata intera. Mi aveva colpito molto questo monologo di Meredith, e l’altro giorno, per uscire da una di quelle litigate che non ti fanno dormire ho dovuto rispolverarlo, tradurlo in italiano e inviarlo ad un’amica.

Leggetelo.

It’s time to relocate.

It’s time to relocate.

Dopo un pò di mesi, ho completato l’annunciato spostamento. A dire il vero ho trasferito decine di siti ed installato decine di server da quando l’ho annunciato, ma, trovare la voglia per fare qualcosa di non strettamente necessario, è sempre una cosa complicata. La spinta me l’ha data la fattura di rinnovo del mio spazio ricevuta ieri.

Insomma, ho trasferito il blog (ospitato praticamente fin dalla nascita* su Eticoweb) su una VPS (OpenVZ, purtroppo) BuyVM (non mi ricordo quanti GB di HD, 500 GB di traffico su 100 mbps e 128/256 MB di RAM). Questa nuova tendenza a usare VPS ultra-economiche spremendo fino all’ultimo MB di RAM mi attira, quindi mi ci butto anche io. Dico solo che ho sostituito la shell di default con una alternativa per liberare ben 2 MB di RAM.

Aspetto qualche giorno per vedere come va e perchè completi la transizione DNS e poi chiudo il vecchio spazio.

Se state leggendo questo post, vuol dire che siete già connessi al nuovo server. Vi prego di segnalarmi (tramite form contatti, quello l’ho già testato) qualunque tipo di errore, considerato che oltre allo spostamento c’è stato anche un cambio completo di piattaforma (PHP 5.3, MySQL 5.1, NGINX, etc).

Prometto  che a breve inserirò anche la pagina “Chi Sono” (è l’altra cosa che avevo annunciato mesi fa).

Grazie!

Giorgio

* Chi mi segue fin dagli “albori” si ricorderà che questo blog era nato su Netsons, come grg.netsons.org e poi trasferito su Tophost (con l’attuale dominio) per uno o due mesi, per poi approdare su Eticoweb.