Мониторинг. · 6 min read · Nov 01, 2025

Как установить и настроить Monit на Debian 9

Monit — это бесплатный и открытый инструмент мониторинга процессов, который можно использовать для мониторинга системных процессов с помощью веб-браузера и командной строки. Он также используется для мониторинга файлов, директорий и устройств на предмет изменений размера и прав доступа. Monit автоматически восстанавливает определенный процесс, если он выходит из строя. Monit также может мониторить почти все службы, такие как Apache, Sendmail, Nginx, FTP, SSH и MySQL на системах на базе Linux. Вы можете мониторить удаленные хосты, TCP/IP порты, протоколы и пинг с помощью Monit. Monit имеет возможность останавливать конкретный процесс, который использует много ресурсов. Monit следит за вашим сервером и отправляет уведомления о любых критических ошибках и статусе восстановления.

Особенности

  1. Автоматический запуск, остановка и завершение конкретного процесса.
  2. Удобный веб-интерфейс для мониторинга состояния.
  3. Уведомление по электронной почте о любых критических условиях.
  4. Проверка загрузки системы, использования ЦП, использования ОЗУ, диска, изменений размера файлов, изменений прав доступа и т. д.
  5. Мониторинг различных протоколов HTTP, FTP, SSH, POP, IMAP, LDAP, IMAP и SMTM.
  6. Ведение журнала через syslog или собственный файл журнала.

В этом руководстве мы объясним, как настроить и использовать Monit на Debian 9.

Требования

  • Свежий сервер Debian 9, установленный на вашей системе.
  • Пароль root настроен на вашем сервере.

1. Обновите систему

Давайте начнем с обновления вашей системы до последней стабильной версии. Вы можете обновить ее с помощью следующей команды:

apt-get update -y  
apt-get upgrade -y

После обновления системы перезагрузите ее, чтобы изменения вступили в силу, с помощью следующей команды:

reboot

После перезагрузки войдите как пользователь root и перейдите к следующему шагу.

2. Установка Monit

По умолчанию Monit доступен в репозитории Ubuntu. Вы можете легко установить его, выполнив следующую команду:

apt-get install monit -y

После установки Monit запустите службу Monit и включите ее автозапуск при загрузке, выполнив следующую команду:

systemctl start monit  
systemctl enable monit

Вы можете проверить статус службы Monit в любое время, выполнив следующую команду:

systemctl status monit

3. Настройка Monit

Файл конфигурации по умолчанию monitrc находится в каталоге /etc/monit/, а другие файлы конфигурации, специфичные для процессов и серверов, находятся в каталоге /etc/monit/conf-available/. Monit поставляется с встроенным веб-интерфейсом, но по умолчанию он отключен. Вы можете включить его, отредактировав файл /etc/monit/monitrc следующим образом:

nano /etc/monit/monitrc

Измените строки с:

# set httpd port 2812 and
# use address localhost # only accept connection from localhost
# allow localhost # allow localhost to connect to the server and
# allow admin:monit # require user 'admin' with password 'monit'

На

set httpd port 2812 and
allow admin:monit # require user 'admin' with password 'monit'

Сохраните и закройте файл, когда закончите, затем перезапустите службу monit, чтобы применить эти изменения, с помощью следующей команды:

systemctl restart monit

Вы можете проверить статус службы Monit с помощью следующей команды:

netstat -ant | grep :2812

Вы должны увидеть следующий вывод:

tcp 0 0 0.0.0.0:2812 0.0.0.0:* LISTEN 1615/monit
tcp6 0 0 :::2812 :::* LISTEN 1615/monit

4. Доступ к веб-интерфейсу Monit

Вы можете получить доступ к веб-интерфейсу Monit, используя URL http://192.168.0.227:2812, затем введите имя пользователя admin и пароль monit. Вы должны увидеть панель мониторинга Monit следующим образом:

Вы можете увидеть статус Monit с помощью следующей команды:

monit status

Вы должны увидеть следующий вывод:

System 'localhost'
  status                            Running
  monitoring status                 Monitored
  load average                      [0.68] [0.78] [0.45]
  cpu                               0.0%us 0.0%sy 0.0%wa
  memory usage                      294.1 MB [14.7%]
  swap usage                        0 B [0.0%]
  data collected                    Mon, 07 Aug 2017 20:12:36

Когда вы закончите, вы можете перейти к следующему шагу.

5. Добавление мониторинга служб

После настройки веб-интерфейса Monit вам нужно будет добавить службы, которые вы хотите мониторить.

Здесь мы приведем несколько примеров мониторинга таких служб, как Apache, Proftpd и Rsyslog.

Настройка Monit для службы Apache

По умолчанию Monit поставляется с предопределенным шаблоном для некоторых процессов и служб. Вы можете найти эти шаблоны в каталоге /etc/monit/conf-available/. Шаблон для Apache доступен в Monit по умолчанию. Поэтому вам нужно будет только включить его. Вы можете включить его, выполнив следующую команду:

ln -s /etc/monit/conf-available/apache2 /etc/monit/conf-enabled/

Затем перезапустите службу monit, чтобы применить эти изменения, с помощью следующей команды:

systemctl restart monit

Настройка Monit для службы Rsyslog

Сначала включите шаблон Rsyslog с помощью следующей команды:

ln -s /etc/monit/conf-available/rsyslog /etc/monit/conf-enabled/

Затем перезапустите службу monit, чтобы применить эти изменения, с помощью следующей команды:

systemctl restart monit

Настройка Monit для службы Proftpd

Шаблон для Proftpd не доступен в Monit. Поэтому вам нужно будет создать файл конфигурации для Proftpd. Вы можете сделать это, создав файл proftpd в каталоге /etc/monit/conf-available/ следующим образом:

nano /etc/monit/conf-available/proftpd

Добавьте следующие строки:

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

Сохраните и закройте файл, когда закончите, затем включите файл конфигурации с помощью следующей команды:

ln -s /etc/monit/conf-available/proftpd /etc/monit/conf-enabled

Затем проверьте файл конфигурации на наличие синтаксических ошибок с помощью следующей команды:

monit -t

Наконец, перезапустите службу monit, чтобы применить эти изменения с помощью следующей команды:

systemctl restart monit

После того как вы настроили все необходимые службы, получите доступ к веб-интерфейсу, чтобы мониторить все службы, как показано ниже:

Затем нажмите на службу apache, чтобы увидеть подробную информацию об apache:

6. Мониторинг Monit через командную строку

Вы также можете мониторить Monit из командной строки. Вы можете увидеть краткое резюме monit, выполнив следующую команду:

monit summary

Вы должны увидеть следующий вывод:

The Monit daemon 5.16 uptime: 0m 

Process 'rsyslogd'                  Initializing - start pending
File 'rsyslogd_bin'                 Accessible
File 'rsyslogd_rc'                  Accessible
File 'rsyslog_file'                 Does not exist
Process 'proftpd'                   Running
Process 'apache'                    Execution failed
File 'apache_bin'                   Accessible
File 'apache_rc'                    Accessible
System 'localhost'                  Running

Вы также можете увидеть статус всех служб с помощью следующей команды:

monit status

Вы должны увидеть следующий вывод:

The Monit daemon 5.16 uptime: 0m 

Process 'rsyslogd'
  status                            Initializing - start pending
  monitoring status                 Initializing
  data collected                    Mon, 07 Aug 2017 20:41:18

File 'rsyslogd_bin'
  status                            Accessible
  monitoring status                 Monitored
  permission                        755
  uid                               0
  gid                               0
  size                              585.3 kB
  timestamp                         Tue, 25 Oct 2016 11:38:40
  checksum                          d71f3d1c58df065e3aac1e2c566a6436 (MD5)
  data collected                    Mon, 07 Aug 2017 20:41:18

File 'rsyslogd_rc'
  status                            Accessible
  monitoring status                 Monitored
  permission                        755
  uid                               0
  gid                               0
  size                              2.7 kB
  timestamp                         Tue, 25 Oct 2016 11:48:29
  checksum                          a1ef1bb01ba370040d705c92fc09e92e (MD5)
  data collected                    Mon, 07 Aug 2017 20:41:18

File 'rsyslog_file'
  status                            Does not exist
  monitoring status                 Monitored
  data collected                    Mon, 07 Aug 2017 20:41:18

Process 'proftpd'
  status                            Running
  monitoring status                 Monitored
  pid                               4915
  parent pid                        1
  uid                               0
  effective uid                     119
  gid                               65534
  uptime                            3m 
  threads                           1
  children                          0
  memory                            3.6 MB
  memory total                      3.6 MB
  memory percent                    0.2%
  memory percent total              0.2%
  cpu percent                       0.0%
  cpu percent total                 0.0%
  port response time                10.737 ms to [localhost]:21 type TCP/IP protocol FTP
  data collected                    Mon, 07 Aug 2017 20:41:18

Process 'apache'
  status                            Execution failed
  monitoring status                 Monitored
  data collected                    Mon, 07 Aug 2017 20:41:48

File 'apache_bin'
  status                            Accessible
  monitoring status                 Monitored
  permission                        755
  uid                               0
  gid                               0
  size                              647.0 kB
  timestamp                         Sat, 29 Jul 2017 22:19:09
  checksum                          ef2a678bdcd791948ceabc3013d9a2c0 (MD5)
  data collected                    Mon, 07 Aug 2017 20:41:18

File 'apache_rc'
  status                            Accessible
  monitoring status                 Monitored
  permission                        755
  uid                               0
  gid                               0
  size                              7.9 kB
  timestamp                         Mon, 07 Aug 2017 20:40:33
  checksum                          744ef9ca584493299c353e2251cbf993 (MD5)
  data collected                    Mon, 07 Aug 2017 20:41:18

System 'localhost'
  status                            Running
  monitoring status                 Monitored
  load average                      [0.96] [0.60] [0.46]
  cpu                               0.0%us 0.0%sy 0.0%wa
  memory usage                      266.4 MB [13.3%]
  swap usage                        2.1 MB [0.4%]
  data collected                    Mon, 07 Aug 2017 20:41:18

Чтобы увидеть подробную информацию о службе Proftpd, выполните следующую команду:

monit status proftpd

Вы должны увидеть следующий вывод:

The Monit daemon 5.16 uptime: 2m 

Process 'proftpd'
  status                            Running
  monitoring status                 Monitored
  pid                               4915
  parent pid                        1
  uid                               0
  effective uid                     119
  gid                               65534
  uptime                            6m 
  threads                           1
  children                          0
  memory                            3.6 MB
  memory total                      3.6 MB
  memory percent                    0.2%
  memory percent total              0.2%
  cpu percent                       0.0%
  cpu percent total                 0.0%
  port response time                7.945 ms to [localhost]:21 type TCP/IP protocol FTP
  data collected                    Mon, 07 Aug 2017 20:43:49

Поздравляем! Вы успешно установили и настроили Monit на своем сервере Debian 9.

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.