Novità
Icona risorsa
Una guida verificata è stata controllata dallo staff punto per punto e se ne attesta la sua validità.

Introduzione​

In questa breve guida vedremo come installare il noto software open-source e self-hosted Uptime Kuma. Questo tool ci permetterà di monitorare l'uptime delle nostre applicazioni, che siano container docker o siti internet. Inoltre è possibile ricevere delle notifiche sui nostri canali preferiti (mail, telegram, discord etc) nel caso in cui uno dei servizi monitorati non dovesse essere disponibile. Possiamo intuire che si tratta un tool tanto semplice quanto potente, specie per le nostre app critiche. La guida seguirà la procedura d'installazione in ambiente Linux (Debian based).

Forniremo anche alcuni consigli su come proteggere al meglio l'accesso a kuma.

Installazione​

Installare Uptime Kuma è davvero semplicissimo! Dalla repository ufficiale, notiamo che è altamente consigliata l'installazione tramite docker, ma forniremo anche un modo per installarlo direttamente nel sistema host.

Docker​

Se vogliamo installare l'app con docker, seguiamo le semplici istruzioni fornite ufficialmente
Accedi o Registrati per vedere questo link.

Quindi, limitiamoci a lanciare il comando
Bash:
Accedi o Registrati per vedere questo contenuto.
dove abbiamo indicato quanto segue:
  • il tipo di restart (consigliato fra always o unless-stopped)
  • Una directory dove verranno salvati i file persistenti (/uptime-kuma come predefinita)
  • Il nome da assegnare al container
  • La porta usata per l'interfaccia web (predefinita 3001)
Se invece preferiamo usare Docker-compose (o portainer) allora possiamo usare questo jaml
YAML:
Accedi o Registrati per vedere questo contenuto.
Anche qui abbiamo indicato le stesse opzioni. Dovete editare solo il volume usato, in questo esempio indicato come /home/user/uptimekuma.
AVVISO: In questo modo, Uptime-Kuma sarà accessibile pubblicamente all'indirizzo del vostro server, o eventualmente in localhost su
Accedi o Registrati per vedere questo link.
. Vedremo più avanti come renderlo più sicuro e accessibile esclusivamente a chi vogliamo noi. Nel caso volessimo renderlo accessibile ESCLUSIVAMENTE in locale, possiamo modificare il parametro ports inserendo 127.0.0.1:3001:3001 ma è sconsigliato, in quanto limitiamo alcune delle funzioni del software.

Installazione NON-Docker​

Se vogliamo installare direttamente Uptime Kuma sul nostro OS (sconsigliato), dobbiamo prima installare il pacchetto Node.js. Quindi, importiamo intanto la giusta repository con
Bash:
Accedi o Registrati per vedere questo contenuto.
e installiamo node.js con
Bash:
Accedi o Registrati per vedere questo contenuto.

Ora possiamo seguire quanto scritto nella repository ufficiale per l'installazione non-docker, ovvero
Bash:
Accedi o Registrati per vedere questo contenuto.
e nel caso volessimo lanciarlo al riavvio, digitiamo
Bash:
Accedi o Registrati per vedere questo contenuto.

Esattamente come per la versione Docker, Kuma sarà disponibile all'indirizzo
Accedi o Registrati per vedere questo link.
.

Appena ci colleghiamo sul sito, dobbiamo creare un utente con password, possiamo ora inserire i nostri monitor
1.png


Come vedete le opzioni sono molte, per un semplice monitor di uptime per un sito web, possiamo limitarci ad inserire il sito da monitorare in URL, l'intervallo di controllo (predefinito di 1 minuto) e altri parametri, molto intuitivi, tra cui le risposte ritenute valide (ad esempio la risposta 200).

Il risultato sarà mostrato a schermo
2.png


Con la possibilità di essere avvisati anche in prossimità della scadenza di un eventuale certificato SSL, oltre che il tempo di risposta.

Notifiche​

Ora, nel caso in cui uno dei nostri servizi dovesse risultare offline, possiamo scegliere come essere avvisati. Apriamo le impostazioni e apriamo la scheda Notifiche
3.png

Da qui, cliccando su Configura le notifiche troviamo un'ampia gamma di servizi che possiamo usare per ricevere, appunto, la nostra notifica di servizio down. Notiamo subito che il numero di servizi supportati è impressionante, per semplicità, scegliamo ad esempio di ricevere un messaggio su Telegram.
Selezionando dunque "Telegram", comparirà la schermata di configurazione della notifica
4.png


L'interfaccia è estremamente semplice, dobbiamo limitarci a creare un bot su Telegram con il noto BotFather e segnarci (conservando in modo sicuro) il token del bot che ci è stato assegnato.

Ora, se vogliamo ricevere le notifiche in chat privata direttamente dal bot appena creato, apriamo intanto il nostro bot su Telegram e inviamogli un messaggio, con scritto semplicemente Ciao. Ora rechiamoci alla URL indicata nellìimmagine sopra
https://api.telegram.org/bot<QUI IL TOKEN DEL BOT>/getUpdates


e, fra le informazioni che vediamo a schermo, recuperiamo il chat_id. Inseriamo token e chat_id nelle impostazioni e testiamo la ricezione della notifica con il tasto apposito.

Possiamo ora assegnare la notifica appena creata a tutti o alcuni dei nostri monitor creati precedentemente.

Monitorare i container​

Normalmente un container non ha accesso al sistema host, in un'installazione default Uptime Kuma non ha la visibilità degli altri container. La stessa guida ufficiale ci viene in aiuto, possiamo ovviare semplicemente al problema condividendo il docker.sock.
Per farlo, aggiungiamo la directory nel container
Docker:
Bash:
Accedi o Registrati per vedere questo contenuto.
(da inserire nel comando usato inizialmente per avviare il container Uptime Kuma)
Docker-compose:
YAML:
Accedi o Registrati per vedere questo contenuto.
(da inserire nel file yaml, aggiungiamo semplicemente la directory sotto quella usate per i file persistenti)

Le impostazioni fornite da Uptime Kuma sono molte, possiamo personalizzare in modo discretamente approfondito il tipo di ping, andando a modificare la richiesta HTTP, monitorare un database e molto altro.

Un'interessante funzione è la notifica push, ovvero non sarà Uptime-Kuma a "interrogare" un servizio per verificarne la disponibilità, ma sarà lo stesso servizio a notificare Kuma della sua operatività.
5.png


Selezionando come nuovo monitor "Push", notiamo che comparirà sotto un URL, quell'url dovrà essere visitato dal servizio da monitorare per accertarne il funzionamento.

IMPORTANTE: Esattamente per questo motivo abbiamo consigliato, durante l'installazione, di non limitare Kuma al solo ip locale, in quanto le notifiche passive necessitano che l'URL fornito sia visibile alla macchina che invia il ping. Nel caso Kuma fosse installato all'interno di una macchina connessa ad una VPS pubblica tramite network privato, possiamo usare anche l'indirizzo privato per inviare il ping, mantenendo alta la sicurezza della connessione.

Sicurezza​

Sebbene l'interfaccia WEB di Kuma sia sufficientemente protetta, in quanto permette di inserire un'autenticazione a 2 fattori come metodo di login, NON avere l'interfaccia pubblicamente accessibile è sicuramente una preoccupazione in meno. Per questo il consiglio è quello di raggiungere Kuma tramite un tunnel SSH o eventualmente utilizzare il noto Cloudflare Zero Trust. Di seguito i link ad 2 nostre guide dove vengono forniti esempi su come realizzare entrambe le soluzioni:
In questa guida sono presenti degli esempi di accesso ad un servizio privato tramite Tunnel SSH

Mentre qui, troviamo una guida su come usare Zero Trust

Questa guida finisce qui, come sempre mettete un like se vi è servita e fateci sapere eventuali feedback :)
Autore
Anyma
Visite
347
Primo rilascio
Ultimo aggiornamento
Valutazione
0.00 stella(e) 0 valutazioni

Più risorse di Anyma

Indietro
Alto