Come installare e configurare Monit su Debian 11
Monit è uno strumento di monitoraggio gratuito e open source che monitora processi e servizi server come Apache, Nginx, Rsyslog, FTP e SSH su sistemi Linux. Monit fornisce un'interfaccia basata sul Web e un client da riga di comando per monitorare i diversi servizi. Ha la capacità di avviare automaticamente un processo quando non è in esecuzione. Consente inoltre di monitorare la porta TCP, il protocollo del server e il ping delle macchine remote.
Questo tutorial spiegherà come installare e utilizzare lo strumento di monitoraggio Monit su Debian 11.
Prerequisiti
- Un server che esegue Debian 11.
- Sul tuo server è configurata una password di root.
Installa Monit su Debian 11
Per impostazione predefinita, il pacchetto Monit è disponibile nel repository predefinito di Debian 11. Puoi installarlo eseguendo il seguente comando:
apt-get install monit -y
Una volta completata l'installazione, è possibile avviare il servizio Monit e abilitarlo all'avvio al riavvio del sistema utilizzando il seguente comando:
systemctl start monit
systemctl enable monit
Puoi anche controllare lo stato di Monit usando il seguente comando:
systemctl status monit
Otterrai il seguente output:
? monit.service - LSB: service and resource monitoring daemon
Loaded: loaded (/etc/init.d/monit; generated)
Active: active (running) since Sat 2022-01-01 07:38:44 UTC; 10s ago
Docs: man:systemd-sysv-generator(8)
Process: 1005 ExecStart=/etc/init.d/monit start (code=exited, status=0/SUCCESS)
Tasks: 1 (limit: 2341)
Memory: 1.7M
CPU: 20ms
CGroup: /system.slice/monit.service
??1010 /usr/bin/monit -c /etc/monit/monitrc
Jan 01 07:38:44 debian11 systemd[1]: Starting LSB: service and resource monitoring daemon...
Jan 01 07:38:44 debian11 monit[1005]: Starting daemon monitor: monit.
Jan 01 07:38:44 debian11 systemd[1]: Started LSB: service and resource monitoring daemon.
Una volta terminato, puoi procedere al passaggio successivo.
Abilita l'interfaccia utente Web di Monit
Monit fornisce anche un'interfaccia utente Web per gestire e monitorare diversi servizi. Per impostazione predefinita, è disabilitato. Quindi dovrai abilitarlo e impostare una password amministratore. Puoi farlo modificando il file di configurazione di Monit:
nano /etc/monit/monitrc
Decommenta e modifica le seguenti righe:
set httpd port 2812 and
allow admin:monitpassword
Salva e chiudi il file, quindi riavvia il servizio Monit per applicare le modifiche:
systemctl restart monit
Per impostazione predefinita, Monit è in ascolto sulla porta 2812. Puoi verificarlo utilizzando il seguente comando:
ss -antpl | grep :2812
Otterrai il seguente output:
LISTEN 0 1024 0.0.0.0:2812 0.0.0.0:* users:(("monit",pid=1322,fd=6))
LISTEN 0 1024 [::]:2812 [::]:* users:(("monit",pid=1322,fd=7))
Configura Monit per Nginx
Monit ti consente di monitorare diversi servizi. Innanzitutto, controlla lo stato del tuo sistema operativo utilizzando il seguente comando:
monit status
Otterrai il seguente output:
Monit 5.27.2 uptime: 0m
System 'debian11'
status OK
monitoring status Monitored
monitoring mode active
on reboot start
load average [0.14] [0.06] [0.02]
cpu 0.0%usr 0.0%sys 0.0%nice 0.0%iowait 0.0%hardirq 0.0%softirq 0.0%steal 0.0%guest 0.0%guestnice
memory usage 192.2 MB [9.7%]
swap usage 0 B [0.0%]
uptime 2m
boot time Sat, 01 Jan 2022 07:37:55
filedescriptors 512 [0.0% of 9223372036854775807 limit]
data collected Sat, 01 Jan 2022 07:39:34
Per impostazione predefinita, Monit fornisce un file di configurazione del servizio Nginx ma è disabilitato per impostazione predefinita. Quindi dovrai abilitarlo per monitorarlo. Puoi abilitarlo eseguendo il seguente comando:
ln -s /etc/monit/conf-available/nginx /etc/monit/conf-enabled/
Successivamente, riavvia il servizio Monit per applicare le modifiche:
systemctl restart monit
Configura Monit per ProFTPD
Monit non fornisce un file di configurazione del servizio per ProFTPD. Quindi dovrai creare un file di configurazione del servizio ProFTPD. Puoi crearlo con il seguente comando:
nano /etc/monit/conf-available/proftpd
Aggiungi le seguenti righe:
check process proftpd with pidfile /var/run/proftpd.pid
start program = "/etc/init.d/proftpd start"
stop program = "/etc/init.d/proftpd stop"
if failed port 21 protocol ftp then restart
Salvare e chiudere il file quindi abilitare il file di configurazione del servizio ProFTPD utilizzando il seguente comando:
ln -s /etc/monit/conf-available/proftpd /etc/monit/conf-enabled
Successivamente, verifica l'errore di sintassi nel file di configurazione utilizzando il seguente comando:
monit -t
Se tutto è andato bene, dovresti vedere il seguente output:
Control file syntax OK
Infine, riavvia Monit per applicare le modifiche.
systemctl restart monit
Accedi all'interfaccia utente Web di Monit
Ora apri il tuo browser web e accedi all'interfaccia web di Monit utilizzando l'URL http://your-server-ip:2812. Verrai reindirizzato alla pagina di accesso di Monit:
Fornisci il nome utente e la password dell'amministratore e fai clic sul pulsante Accedi. Dovresti vedere la dashboard di Monit nella seguente schermata:
Fai clic su debian11 per verificare lo stato del tuo sistema operativo. Dovresti vedere la seguente schermata:
Fai clic su Nginx per verificare lo stato del servizio Nginx. Dovresti vedere la seguente schermata:
Monitora i servizi tramite la riga di comando
Puoi anche monitorare lo stato di qualsiasi servizio utilizzando l'interfaccia della riga di comando.
Per ottenere il riepilogo di tutti i servizi, esegui il comando seguente:
monit summary
Otterrai il seguente output:
Monit 5.27.2 uptime: 0m
????????????????????????????????????????????????????????????????????????????????
? Service Name ? Status ? Type ?
????????????????????????????????????????????????????????????????????????????????
? debian11 ? OK ? System ?
????????????????????????????????????????????????????????????????????????????????
? proftpd ? OK ? Process ?
????????????????????????????????????????????????????????????????????????????????
? nginx ? OK ? Process ?
????????????????????????????????????????????????????????????????????????????????
? nginx_bin ? OK ? File ?
????????????????????????????????????????????????????????????????????????????????
? nginx_rc ? OK ? File ?
????????????????????????????????????????????????????????????????????????????????
Per verificare lo stato di tutti i servizi, eseguire il comando seguente:
monit status
Otterrai il seguente output:
Monit 5.27.2 uptime: 0m
Process 'proftpd'
status OK
monitoring status Monitored
monitoring mode active
on reboot start
pid 2596
parent pid 1
uid 0
effective uid 107
gid 65534
uptime 16m
threads 1
children 0
cpu -
cpu total -
memory 0.1% [2.9 MB]
memory total 0.1% [2.9 MB]
security attribute unconfined
filedescriptors 5 [0.5% of 1024 limit]
total filedescriptors 5
read bytes 0 B/s [32 B total]
disk read bytes 0 B/s [0 B total]
disk read operations 0.0 reads/s [34 reads total]
write bytes 0 B/s [178 B total]
disk write bytes 0 B/s [4 kB total]
disk write operations 0.0 writes/s [3 writes total]
port response time 2.495 ms to localhost:21 type TCP/IP protocol FTP
data collected Sat, 01 Jan 2022 08:00:43
Process 'nginx'
status OK
monitoring status Monitored
monitoring mode active
on reboot start
pid 2078
parent pid 1
uid 0
effective uid 0
gid 0
uptime 20m
threads 1
children 1
cpu -
cpu total -
memory 0.6% [11.5 MB]
memory total 0.8% [16.6 MB]
security attribute unconfined
filedescriptors 9 [0.9% of 1024 limit]
total filedescriptors 19
read bytes 0 B/s [62.0 kB total]
disk read bytes 0 B/s [3.4 MB total]
disk read operations 0.0 reads/s [73 reads total]
write bytes 0 B/s [81 B total]
disk write bytes 0 B/s [4 kB total]
disk write operations 0.0 writes/s [2 writes total]
data collected Sat, 01 Jan 2022 08:00:43
File 'nginx_bin'
status OK
monitoring status Monitored
monitoring mode active
on reboot start
permission 755
uid 0
gid 0
size 1.1 MB
access timestamp Sat, 01 Jan 2022 07:39:44
change timestamp Sat, 01 Jan 2022 07:39:47
modify timestamp Sat, 29 May 2021 14:21:37
checksum 12a1c0be9962768c055158782d1d564a (MD5)
data collected Sat, 01 Jan 2022 08:00:43
File 'nginx_rc'
status OK
monitoring status Monitored
monitoring mode active
on reboot start
permission 755
uid 0
gid 0
size 4.5 kB
access timestamp Sat, 01 Jan 2022 07:39:44
change timestamp Sat, 01 Jan 2022 07:39:47
modify timestamp Sat, 29 May 2021 14:21:37
checksum 290f6f12a12bc8e882bc5af46c1bfe7c (MD5)
data collected Sat, 01 Jan 2022 08:00:43
System 'debian11'
status OK
monitoring status Monitored
monitoring mode active
on reboot start
load average [0.00] [0.00] [0.00]
cpu 0.0%usr 0.0%sys 0.0%nice 0.0%iowait 0.0%hardirq 0.0%softirq 0.0%steal 0.0%guest 0.0%guestnice
memory usage 199.5 MB [10.1%]
swap usage 0 B [0.0%]
uptime 23m
boot time Sat, 01 Jan 2022 07:37:55
filedescriptors 640 [0.0% of 9223372036854775807 limit]
data collected Sat, 01 Jan 2022 08:00:43
Per verificare lo stato del servizio ProFTPD, eseguire il comando seguente:
monit status proftpd
Otterrai il seguente output:
Monit 5.27.2 uptime: 0m
Process 'proftpd'
status OK
monitoring status Monitored
monitoring mode active
on reboot start
pid 2596
parent pid 1
uid 0
effective uid 107
gid 65534
uptime 16m
threads 1
children 0
cpu -
cpu total -
memory 0.1% [2.9 MB]
memory total 0.1% [2.9 MB]
security attribute unconfined
filedescriptors 5 [0.5% of 1024 limit]
total filedescriptors 5
read bytes 0 B/s [32 B total]
disk read bytes 0 B/s [0 B total]
disk read operations 0.0 reads/s [34 reads total]
write bytes 0 B/s [178 B total]
disk write bytes 0 B/s [4 kB total]
disk write operations 0.0 writes/s [3 writes total]
port response time 2.495 ms to localhost:21 type TCP/IP protocol FTP
data collected Sat, 01 Jan 2022 08:00:43
Conclusione
Congratulazioni! hai installato con successo Monit su Debian 11. Ora puoi iniziare ad aggiungere host remoti e monitorarli dal browser web. Sentiti libero di chiedermi se hai qualche domanda.