20 settembre 2023

Monitoraggio server: Nagios + NCPA + plugin personalizzati

Nagios

Ho uno o più server Windows, ho un server Linux e poco budget.

Vorrei tenere d'occhio i server Windows senza dover entrare periodicamente a verificare la Gestione Attività, possibilmente con un sistema automatico, su un server esterno, in modo che se crolla tutto, mi arrivi almeno un avviso.

Guarda un po', ho proprio un serverino Linux a disposizione. e, grazie al software (o sistema) Nagios, posso fare in modo che se ci sono mancamenti o cedimenti nei servizi erogati, o nello stato di salute del sistema, Nagios mi manda un messaggio di avviso, riportando le ultime misure rilevate.

A questo proposito avevo tratteggiato a grandi linee la sequenza delle operazioni necessarie, da una parte e dall'altra, per installare e configurare Nagios Core (la versione gratuita), e attivare il server di monitoraggio su Windows, che puntualmente risponde alle interrogazioni del suo supervisore.

Vedi l'articolo: https://striscialascia.blogspot.com/2020/11/nagios-e-monitoraggio-windows.html

 Lato Windows: NCPA

Nagios mette a disposizione un server di monitoraggio chiamato NCPA, già attrezzato con le routine di osservazione più comuni: 

  • disco
  • CPU
  • RAM
  • servizi

Inoltre è previsto sia il monitoraggio 'attivo', cioè a servire le richieste di Nagios, che 'passivo' ossia che periodicamente invia uno stato aggiornato, attraverso il protocollo NRPE. 

Qui il link per la documentazione che spiega come richiamare un check 'attivo' lato Nagios:

https://www.nagios.org/ncpa/help/2.0/active.html

Ma per quelle funzioni che sono specifiche al nostro server e che costituiscono 'o core' (come direbbero a Napoli) del sistema che abbiamo messo in piedi con tanta fatica?

Per questo ci sono i 'plugin'. Il link che segue spiega dettagliatamente come creare i plugin con le diverse soluzioni elencate, e, successivamente, come richiamarli da remoto, da Nagios.

https://nagiosenterprises.my.site.com/support/s/article/Using-Scripts-Plugins-With-NCPA-32a58c75

NCPA: plugin e test personalizzati

Nello specifico NCPA supporta e spiega in maniera esaustiva come configurare dei plugin, scritti come 'batch file' (.bat), routine PowerShell, VBS o bash. Cito:

NCPA is capable of executing scripts such as:

  • Batch Script = .bat

  • Visual Basic Script = .vbs

  • PowerShell Script = .ps1

  • Bash Script = .sh

Questo ha funzionato bene per uno dei miei casi, e cioè per verificare che fosse in piedi una specifica connessione verso l'esterno. In questo caso mi basta un 'ping', e la strada più naturale è stata uno script PowerShell che utilizza 'Test-Connection'.

 Ma se dobbiamo fare parse di log, o conteggi, o  cose più complicate?

Se siete dei maghi di PowerShell o di VBS, non ci sono problemi. Vi mettete a testa bassa e smanettate.

Se, come me, sapete che Python ha un mondo di librerie, che includono ad esempio, gli strumenti per fare il parse di file JSON, e sapete che Python è disponibile sul server in questione, vi fate qualche domanda.

Ci sarà un modo di scrivere il plugin con Python?

Navigando nel forum, si scoprono delle sorprese.

Ad esempio, che in molte versioni di NCPA è incluso un interprete Python.

Ma i plugin in Python non sono ancora ufficialmente supportati. Di sicuro, scrive l'autore nel 2018, non saranno disponibili prima della versione 3. Peccato che oggi, nel 2023, siamo alla 2.4.1.

https://github.com/NagiosEnterprises/ncpa/issues/478

Nel forum citato, trovate un modello base di plugin in Python.

import os, sys

OK = 0
WARNING  = 1
CRITICAL = 2
UNKNOWN  = 3

def main():

   print ("OK: This is working")
   sys.exit(OK)

if __name__ == "__main__":
   main()

Supposto che riusciamo a scrivere il programmino che ci serve, come facciamo poi a trasformarlo in plugin?

Plugin personalizzati nel vostro linguaggio

Dato che abbiamo a disposizione i bat e i PowerShell, ho fatto qualche esperimento per richiamare il Python con questi due strumenti.

Con PowerShell non ho avuto successo, dice che non trova il 'main'.

Con i file batch invece le cose sono andate meglio.

Con queste istruzioni sono riuscito sia a fare eseguire il Python che a restituire il codice di errore nello stile NCPA.

@echo off

"C:\Python310\python.exe" "C:\Program Files (x86)\Nagios\NCPA\plugins\check_my_python.py"

exit /B %errorlevel% 

Lato Nagios, in commands.cfg e windows.cfg ho creato i corrispondenti comandi e servizi:

# 'check_ncpa' command definition
define command {
    command_name check_ncpa
    command_line $USER1$/check_ncpa.py -H $HOSTADDRESS$ -t $_HOSTTOKEN$ -P$_HOSTPORT$ $ARG1$
    } 

Noterete che ho impostato nel comando generico l'indirizzo, la porta e il token, in modo da ridurre al minimo le ripetizioni quando lo richiamo nei singoli servizi.

# Create a NCPA service to check if VPN Client is connected

define service{
    use            generic-service
    host_name        WINDOGS
    service_description    VPN Client Ping
    check_command        check_ncpa!-M 'plugins/check_ping_VPN.ps1'
    ...
    }

# Create a NCPA service to check the status of TCP connections

define service{
    use            generic-service
    host_name        WINDOGS
    service_description    TCP Connections
    check_command        check_ncpa!-M 'plugins/check_TCP_stats_py.bat'

    ...
    }

E così avete a disposizione un metodo per scrivere i vostri plugin personalizzati, probabilmente non solo in Python, ma anche nodejs, Lua, Go e quant'altro vi viene comodo per la situazione specifica che vi trovate a monitorare.

Buon divertimento!

01 luglio 2023

IKEA: divisori per cassetti PAX

I cassetti PAX sono larghi, a volte anche un metro e mezzo. Allo stato brado generano disordine se i contenuti si spostano in orizzontale.

Cosa meglio di un bel di-vi-so-rio per riportare un po' di ordine nel cassetto? 

Ottieni

Materiali: FOREX (PVC, spessore 3mm), gommina attacca-stacca, ad esempio TESA TAC 

Il Forex è leggero, si taglia bene, non ingiallisce, invecchia bene, resiste a acqua, inchiostro, ditate, untume e molto altro.

Ad esempio da Leroy Merlin:

Attrezzi: cutter, superficie d'appoggio, dima o strumento di misura, marker

Misura

Misura 3 volte, taglia una, diceva mio nonno. 
In alternativa create una dima con del cartoncino.

Taglia

Taglia il Forex con il cutter. Questo materiale si taglia bene facendo passaggi ripetuti, che vanno a profondità sempre maggiore. 
Consiglio un righello in acciaio o materiale difficile da tagliare per fare da guida al cutter.
Nel mio caso le dimensioni interne del cassetto erano 30,5 cm (L) x 14cm (H).


Appiccica

Posiziona la gommina stacca attacca, nei 4 angoli del divisorio. 
Piega il divisorio un pochino per far passare la gommina nella parte alta.

...et voilà
Il divisorio si può spostare se e quando si vuole, ma può anche rimanere in posizione per tanti anni.

03 aprile 2023

Arrivederci Vodafone

Sette anni con Vodafone

 Ero un cliente TIM. Nel 2015, dopo un aumento a sorpresa da 25 a 45 eur/mese, praticato e non comunicato da TIM, ho abbandonato la compagnia di bandiera e sono passato a Vodafone.

Il servizio è stato tutto sommato valido, rispettoso dei valori impostati e vincolati da una linea in rame vecchia 40 anni. Qualche intervento tecnico, soprattutto sui terminali del rame che si sono ossidati, e un modem sostituito per guasto.

Qualche bisticcio, poche soddisfazioni dal punto di vista tecnico, come documentato nel passato in questo blog, soprattutto in materia di protezione dei minori. Vodafone, come molti altri operatori, 'cattura' tutto il traffico DNS, invalidando le soluzioni tipo OpenDNS.

Per 7 anni ho tenuto vivo questo contratto, un po' perché all'inizio ero in partita IVA e non volevo rischiare di trovarmi delle scadenze durante il cambio della linea, un po' per evitare penali, prima dei 48 mesi. Poi c'è stato il COVID-19 e la Didattica a Distanza, e lo smart-working, e cara grazia ad avere in casa computer, tablet e cellulari e banda dati a sufficienza.

Negli ultimi tre anni le bollette sono aumentate per arrivare raddoppiare o triplicare la stima iniziale di 30 euro al mese. Infatti i figli più piccoli, a cui non abbiamo voluto dare il cellulare, hanno cominciato a chiamare parenti e amici a volte per ore, e, dato che nel contratto il traffico telefonico non era compreso (ma chi usa più la linea fissa?), ha portato le bollette anche a 90 euro al mese.

Nonostante ripetuti inviti a proporci un contratto con traffico voce nazionale incluso, Vodafone non ha mai pensato di rinunciare ai suoi guadagni.

Il divorzio

L'estate scorsa, ad agosto 2022, ho deciso che finalmente era ora di cambiare, e voilà, per par condicio sarebbe toccato a Fastweb prendere il nostro obolo mensile, stavolta con le telefonate comprese.

Dopo la pratica di portabilità del numero, il primo pensiero è stato di togliere l'addebito diretto in banca, per evitare ritorsioni non contestabili. 

Il secondo, quello di restituire il router. Il router originale è stato pagato per intero in comode rate per  48 (quarantotto! 4 anni!) mesi. In estate 2022 Vodafone ci ha recapitato un secondo router, mai chiesto, mai aperto, pronto da restituire alla scadenza del contratto. 

Le istruzioni per la restituzione del router sono confuse, e piuttosto difficili da capire. In teoria, dovrebbe venire un corriere a ritirare il modem, all'indirizzo di tua scelta, o lo puoi riportare in un negozio Vodafone. Io ho tentato prima la strada del ritiro con corriere, ma non si è presentato nessuno. Ho provato a portarlo nel negozio Vodafone, ma mi hanno detto che non lo ritiravano. Ho ritentato con il corriere, e finalmente, parlando con il corriere all'ufficio, mi ha detto "Tranquillo te lo prendo io".

Il litigio

A novembre 2022, a 2 mesi dalla disdetta, è arrivata la bolletta di agosto e settembre, contenente un addebito di 83 euro per "Corrispettivo per recesso"


Come mi aspettavo, Vodafone provava a dare il colpo di coda.

A niente sono valsi i tentativi di far correggere la bolletta interpellando il servizio clienti al 190 e via email. 

Dopo l'ennesimo sollecito, a fine marzo sono passato alla PEC.

Il 1 aprile ho avuto la risposta che ero in coda, sembra uno scherzo, ma io ci credo.

Il 3 aprile la notizia della multa dell'Antitrust.

La notizia de "Il Fatto Quotidiano":

https://www.ilfattoquotidiano.it/2023/04/03/illegittime-fatturazioni-a-carico-degli-utenti-dopo-il-recesso-o-il-cambio-di-gestore-multa-dellantitrust/7118313/

Per tutta risposta alla PEC, Vodafone scrive: 

Data: Sat, 8 Apr 2023 13:34:52 +0200
Oggetto: Fattura errata cod. cliente 1.8437355

Salve,

abbiamo preso in carico la sua richiesta.

Per ulteriori informazioni può contattarci al N. 02 84119016 o al N. fax 0522638695.

Cordiali Saluti

Selecta.

In pratica, Vodafone vende il credito (e anche tutti i dati) all'azienda Selecta, e lascia che se la sbrighi con l'ex cliente.
Dal punto di vista legale, l'importante è dire che hanno preso in carico la richiesta. Di fatti, non pensate che Vodafone fornisca delle risposte o che vi prenda minimamente in considerazione.

Suppongo che si possa tentare la strada di contestare sia la violazione della privacy (Chi è Selecta?) che la mancata risposta sulla contestazione.

La gestione Selecta

Selecta ha ricaricato di 75 eur e passa la fattura iniziale, adducendo spese di recupero crediti. 



Il 16 maggio chiamato per sapere esito del reclamo, dice che il reclamo è stato respinto, che dobbiamo pagare, perché l’adeguamento viene applicato automaticamente ogni 48 mesi.



17 giugno 

Registrazione su Concilia web.

Avvio procedura di conciliazione.


Interrotta per chiamata con operatore di Selecta recupero crediti che propone una riduzione della cifra.

coincidenza o disegno?




Riferimenti contenzioso telefonia

AGCOM: https://www.agcom.it/contenzioso-tra-utenti-e-operatori

L'utente che, pur avendo presentato reclamo, non riesce a risolvere il problema insorto con il proprio fornitore di servizi di comunicazione elettronica, può avviare la procedura prevista dal nuovo Regolamento per la soluzione delle controversie tra utenti ed operatori di comunicazioni elettroniche (delibera n. 203/18/CONS)

Cocnicliaweb: https://conciliaweb.agcom.it/conciliaweb/login.htm