Monit может отслеживать ShellInABox и уведомлять вас, если он по какой-то причине перестает работать. Настройка удаленно доступной оболочки с ShellInABox – это круто. Но что, если процесс ShellInABox закрывается, а вы даже не знали? Возможно, вам не удастся получить доступ к оболочке на вашем сервере через веб-браузер, поскольку приложение перестало работать. Monit – это утилита для автоматического мониторинга, обслуживания и ремонта систем Unix. Если ваш ShellInABox WebUI не работает, Monit может отправить вам уведомление по электронной почте. Он может даже попытаться перезапустить демон ShellInABox. В этом руководстве по Monit я опишу, как контролировать ShellInABox с помощью приложения мониторинга системы Monit. Я предполагаю, что вы уже установили и настроили Monit, следуя моему предыдущему руководству.
Монитор ShellInABox
На моем недавно построенном энергоэффективном домашнем сервере я тестирую и запускаю несколько приложений, включая ShellInABox. Я использую Monit для мониторинга нескольких служб, перечисленных ниже:
Контролируйте свой домашний сервер с Monit:
- Мониторинг загрузки системы домашнего сервера (CPU, RAM, Swap)
- Мониторинг хранилища на жестком диске сервера (место на жестком диске)
- Мониторинг температуры материнской платы
- Мониторинг температуры процессора или процессора
- Монитор жесткого диска SMART здоровья и температуры
- Мониторинг состояния файлового сервера (Samba и NFS)
- Мониторинг состояния веб-сервера (Apache, NGINX и MySQL)
- Мониторинг статуса процесса CouchPotato
- Отслеживать состояние процесса SickBeard
- Отслеживать состояние процесса SickRage
- Отслеживать состояние процесса SABnzbd
- Мониторинг состояния процесса Webmin
- Мониторинг состояния процесса qBittorrent
- Мониторинг статуса процесса передачи
- Мониторинг состояния процесса ShellInABox
В этом руководстве я покажу вам, как контролировать состояние процесса ShellInABox, чтобы система автоматической загрузки, которую вы настраиваете, продолжала работать так, как и должна. Просто еще один уровень автоматизации для вашего домашнего сервера.
Перед включением мониторинга ShellInABox необходимо, чтобы у вас был рабочий экземпляр Monit с соответствующим /etc/monit/monitrc
файлом. Конфигурации Monit для различных сервисов загружаются из /etc/monit/conf.d
папки.
1. Найдите порт ShellInABox
Во-первых, вам нужно будет найти, какой порт прослушивает ваша установка демона ShellInABox. Откройте файл настроек ShellInABox по умолчанию и найдите порт. Если вы следовали нашему руководству по установке Ubuntu ShellInABox, вы можете открыть файл настроек с помощью следующей команды:
nano /etc/default/shellinabox
Затем найдите номер порта. Найдите строку, аналогичную SHELLINABOX_PORT=4200
показанной на рисунке ниже:
Найти порт ShellInaBox
В этом руководстве мы предполагаем, что вы используете порт 4200, который является портом по умолчанию для демона ShellInABox.
Настройка Monit ShellInABox Сценарий мониторинга
Для мониторинга ShellInABox с Monit создайте файл конфигурации Monit с помощью следующей команды:
sudo /etc/monit/conf.d/shellinabox
Скопируйте в него следующее содержимое, сохраните и выйдите (нажмите Ctrl X, нажмите Y и нажмите ENTER).
check process ShellInABox matching "shellinaboxd"
start program = "/etc/init.d/shellinabox start"
stop program = "/etc/init.d/shellinabox stop"
if failed host 127.0.0.1 port 4200 type TCP for 2 cycles then restart
if 2 restarts within 3 cycles then unmonitor
Если вы используете ShellInABox за SSL (доступ HTTPS), используйте TCPSSL
вместо этого TCP
в приведенном выше блоке кода. Этот код заставит Monit отправлять вам оповещения по электронной почте, когда ShellInABox не работает. Например, на рисунке ниже показаны 2 сообщения электронной почты от monit: одно, когда было обнаружено, что процесс CouchPotato не запущен, а другое после того, как Monit успешно перезапустил CouchPotato.
Monit Alerts – процесс не найден и автоматический перезапуск
Цикл – 1 период мониторинга, как установлено в /etc/monit/monitrc
. Если в течение 3 циклов мониторинга произойдет 2 перезапуска, Monit прекратит мониторинг состояния процесса ShellInABox вместо того, чтобы засыпать вас оповещениями по электронной почте. Вы можете настроить вышеперечисленные правила по своему усмотрению. [ Читать: 5 простых шагов для повышения безопасности Shellinabox ]
Тест и перезагрузка Монит
После внесения каких-либо изменений необходимо протестировать конфигурацию Monit:
sudo monit -t
Вы должны увидеть следующее сообщение: Синтаксис файла управления ОК. Затем проверьте, запущен ли Monit, с помощью следующей команды:
sudo /etc/init.d/monit status
Если Monit запущен, перезагрузите конфигурации Monit, используя следующую команду:
sudo /etc/init.d/monit reload
Если Monit не запущен, запустите его, используя sudo monit
команду. Вся последовательность команд для тестирования и перезагрузки Monit показана на рисунке ниже.
Монит Тест и Перезагрузка
Теперь запустите веб-браузер и перейдите на один из следующих URL-адресов в зависимости от того, как настроен ваш Monit (обязательно используйте правильный номер порта):
- HTTP: // локальный: 2812
- http: // IPADDRESS: 2812 (IP-адрес локальной сети)
- http://domain.com:2812 (если ваше доменное имя указывает на ваш сервер)
Вы должны увидеть статус процесса ShellInABox на странице состояния Monit, показанной на рисунке ниже.
Мониторинг состояния процесса ShellInABox с помощью Monit
Вот и все для мониторинга ShellInABox с Monit. Как вы можете видеть, Monit обеспечивает автоматический мониторинг сервера, что может быть очень полезно для системных администраторов. На странице Monit Wiki есть несколько примеров. Больше примеров Monit для домашнего сервера, чтобы следовать, поэтому продолжайте проверять.
Источник записи: https://www.smarthomebeginner.com