Назад | Перейти на главную страницу

Установка Nagios и вопросы безопасности

Я новичок в инструментах мониторинга. Недавно наш сервер с phpMyAdmin был атакован ботнетом. Поэтому я хочу провести мониторинг своего сервера на предмет их работоспособности и безопасности. Что меня беспокоит, так это то, что nagios - это еще одно веб-приложение, такое как phpMyAdmin, есть ли в нем лазейка в безопасности, через которую могут вторгнуться хакеры? Во-вторых, если нет проблем, что мне делать, чтобы настроить мониторинг mysql и веб-серверов? Или есть еще какие варианты?

ИМХО ни один из инструментов администрирования www, таких как phpmyadmin и nagios, не должен быть доступен из Интернета, если бизнес явно не запрашивает его.

Но если это необходимо, защитите такие приложения дополнительными паролями с помощью .htaccess.

Если вам нужно предоставить phpmyadmin для большого количества пользователей, то защита его с помощью .htaccess - не такая уж хорошая идея (громоздко сгенерировать пароль для всех пользователей (клиентов), а пользователям не нравится двойная аутентификация).

Вы всегда можете поделиться им по уникальному URL, а не https://yoursite/phpmyadmin все, что вам нужно сделать, это изменить псевдоним в файле visrtualhost phpmyadmin.

Вы всегда должны делиться этими приложениями через https!

Nagios предназначен только для администратора, вы можете ограничить доступ к нему только для IP-адресов, которые должны иметь доступ к .htaccess.

Вы можете обслуживать phpmyadmin и ни на одном стандартном порту. Если вы делитесь приложениями без стандартных портов (кроме 80 и 443), вы можете ограничить доступ к нему с помощью iptables.

Хорошая идея - защитить эти приложения от грубой силы с помощью fail2ban.

Идеально защищенных систем не существует. Риск есть всегда, но нужно делать все, чтобы его минимизировать.

Веб-интерфейс, который вы можете защитить с помощью дополнительной аутентификации на уровне веб-сервера (с административным, непубличным приложением вряд ли есть причина полагаться только на встроенную аутентификацию, то же самое с phpmyadmin).

Что вам нужно настроить гораздо более тщательно, так это уровень удаленного плагина (nrpe, ssh, nsca, управляемый клиентом ...), поскольку здесь задействованы неинтерактивные доверительные отношения, с некоторыми настройками прямо через открытый Интернет.

Известный дыры в безопасности обычно не являются проблемой, потому что они закрываются. Проблема в том, о чем вы не знаете. Но тогда спрашивать, есть ли какие-нибудь неизвестные дыры, не имеет смысла, не так ли?

Между прочим, вам не обязательно, чтобы ваша установка nagios была открыта для публики. Держите административные службы на другом сервере с другим IP, и вы будете немного безопаснее (ботнеты, как правило, сосредоточены на общедоступных сайтах).

В зависимости от того, что вы хотите отслеживать, Nagios может быть или не подходить для этой работы. И есть также другие компании, которым вы можете заплатить за мониторинг. Тогда вам не придется беспокоиться о мониторинге самой системы мониторинга. Ребята из monitis даже предлагают MySQL мониторинг.

В Nagios нет известных дыр в безопасности. Если есть неизвестные дыры в безопасности, вы ничего не сможете с этим поделать.

Вот некоторые меры безопасности, которые вы можете предпринять:

  • Прежде всего определите на вашем NRPE, какой IP-адрес работает на вашем хосте. Это можно сделать в /etc/nrpe.cfg искать allowed_hosts=. Это ограничит круг лиц, которые действительно могут спросить NRPE, что происходит. (или выполнить удаленные команды)
  • Убедитесь, что тайм-аут для ваших команд разумный (значения по умолчанию в порядке)
  • Чтобы укрепить ваш хост, я бы запретил любому хосту получить к нему доступ. Итак, что вы можете сделать, это привязать его к 127.0.0.1. Если вы хотите получить к нему доступ, вам нужно сначала туннелировать к вашему хосту. Если вы используете VPN, вы можете назначить адрес в VPN своему хосту и разрешить всей VPN доступ к нему. (так что кто-то на vpn может перейти на него)

Я предполагаю, что вы используете apache2, поэтому для этого посмотрите файл /etc/apache2/nagios.conf (или ваш эквивалентный файл конфигурации apache2, если у вас есть скомпилированная версия). В блоке сопоставления каталога есть что-то вроде этого:

Allow from all

Вы можете изменить это на:

Allow from IP/subnetmask

или

Allow from IP