• Локальный сервер обновлений для устройств MikroTik на Debian Linux

    Local update server for MikroTik devices on Debian LinuxДля поддержания актуального состояния прошивок MikroTik необходимо периодически обновлять их на всём парке устройств. И не всегда есть возможность открыть доступ в Интернет, чтобы устройство могло загрузить прошивку с серверов обновлений MikroTik. На этот случай вендор предлагает два штатных варианта действий: ручное или автоматизированное копирование прошивок на устройство с последующей перезагрузкой, либо настройка выделенного устройства в качестве источника обновлений для остальных устройств. Оба этих варианта имеют свои недостатки.

    В этой заметке мы рассмотрим ещё один, альтернативный, вариант - это создание локального веб-сервера, который бы имитировал структуру каталогов оригинального сервера обновлений upgrade.mikrotik.com. Подобный сервер позволит решить две основные проблемы: распространение обновлений в локальной сети без доступа в Интернет и контроль за версией прошивок, которые будут устанавливаться на устройствах.

    В случае выхода обновления прошивки администратор с помощью скрипта загружает новое обновление для всех интересующих его платформ. Проводиться обновление тестовой группы устройств, проверяется их работа. После тестирования можно выполнить развёртывание и на другие устройства. Или вернуть предыдущую версию, если новая версия не устраивает.

    Далее пошаговая инструкция по развёртыванию и использованию локального сервера обновлений.

    Читать далее...

  • Добавление SPN записей в keytab-файл (на стороне сервера Linux с помощью утилиты ktutil), связанный с учётной записью Computer в домене Active Directory

    Представим себе ситуацию, что есть некий сервер на базе Debian GNU/Linux, который уже введён в домен Active Directory с помощью SSSD и realmd и на нём уже имеется keytab-файл, который используется для механизмов аутентификации Kerberos и Single sign-on (SSO) при подключении к серверу по протоколу SSH. И вот возникает необходимость на данном Linux-сервере дополнительно настроить роль веб-сервера для служебных администраторских задач и организовать Kerberos SSO при подключении к веб-узлам этого веб-сервера. По ранее описанным примерам (здесь, здесь и здесь), предполагается, что для целей Kerberos-аутентификации веб-сервера Apache в домене Active Directory (AD) создаётся отдельная сервисная учётная запись типа User, для которой генерируется keytab-файл и в последствии привязывается к настройкам Apache на стороне Linux-сервера. С точки зрения аспектов безопасности такой поход (отдельный Linux-сервис = отдельная учётная запись в AD со своим keytab-файлом) можно считать вполне правильным. Но что, если Linux-сервис, использующий Kerberos-аутентификацию, используется не широким кругом пользователей, а исключительно для административных целей парой-тройкой системных администраторов? В таком случае создание отдельной учётной записи типа User в домене со своим keytab-файлом может показаться избыточным. В этой заметке мы рассмотрим пример того, как добавить дополнительную нужную нам запись servicePrincipalName (SPN) (на примере SPN-записи типа HTTP/) в уже имеющийся на Linux-сервере keytab-файл, ориентированный на сам хост (содержащий SPN-записи типа HOST/). В результате мы получим Kerberos аутентификацию на веб-узлах нашего Linux-сервера и при этом не будем плодить в домене лишние сервисные учётные записи типа User.

    Читать далее...

  • Развёртывание и настройка Icinga 2 на Debian 8.6. Часть 11. Настройка интеграции Graphite в Icinga Web 2

    В развёрнутой ранее конфигурации Icinga Web 2 по умолчанию отсутствует возможность просматривать исторические графики изменения показателей производительности объектов мониторинга. Однако фронтенд Icinga Web 2 имеет модуль расширения, который позволяет получать данные из Graphite. В этой заметке мы рассмотрим пример интеграции Graphite в Icinga Web 2.

    Читать далее...

  • Развёртывание и настройка Icinga 2 на Debian 8.6. Часть 10. Аутентификация и авторизация пользователей Active Directory в Icinga Web 2 (Kerberos и SSO)

    В этой части нашего цикла заметок об Icinga будет рассмотрен пример того, как можно организовать доменную аутентификацию пользователей Active Directory (AD) с поддержкой Kerberos и Single sign-on (SSO) при подключении к веб-консоли Icinga Web 2.

    Если мы заглянем в опорный документ Icinga Web 2 Authentication, то узнаем, что веб-консоль Icinga Web 2 способна работать с аутентификаций, основанной на каталоге Active Directory, других реализациях LDAP-каталогов, базах данных MySQL или PostgreSQL, а также делегировать процесс аутентификации непосредственно веб-серверу. Так, как в рассматриваемом нами примере будут использоваться такие вещи, как аутентификация с помощью Kerberos и дополнительная авторизация с помощью PAM, выбран вариант с делегированием процесса аутентификации веб-серверу. При этом процедуры внутренней проверки прав доступа к объектам веб-консоли Icinga Web 2 будут выполняться через специально созданное подключение к AD, как к LDAP-каталогу.

    Читать далее...

  • Создание keytab-файла, содержащего несколько разных Kerberos Principal

    Разные службы и приложения, работающие в Linux и использующие аутентификацию Kerberos, например в связке с контроллерами домена Active Directory (AD), используют для механизмов этой самой аутентификации специальный keytab-файл, который содержит хеши пароля доменной учётной записи пользователя, с которым ассоциирована та или иная служба в Linux-системе (как с Kerberos Principal). И вполне типичной и распространённой практикой является создание отдельного keytab-файла для каждого принципала Kerberos. То есть, как правило, прослеживается такая логика: отдельная учётная запись служебного пользователя в AD, для которого зарегистрировано конкретное имя службы ServicePrincipalName (SPN) => отдельный keytab-файл, сопоставимый с записью SPN в AD.

    Читать далее...

  • Базовое развёртывание системы мониторинга Observium

    В очередной раз задался вопросом мониторинга и на этот раз решил попробовать Observium в редакции Community Edition. Почему именно Observium? Если посмотреть документацию, то Observium поддерживает большое количество вендоров программного и аппаратного обеспечения, то есть в нем уже есть шаблоны мониторинга массы конкретных моделей оборудования. Имеется адекватная документация по продукту и, честно говоря, мне очень понравился внешний вид дизайна веб-консоли управления. Кстати, можно пройти по ссылке http://demo.observium.org/ и посмотреть как это выглядит "вживую".

    Читать далее...

  • Развёртывание и настройка Icinga 2 на Debian 8.6. Часть 2. Установка Icinga Web 2

    В прошлый раз мы выполнили установку ядра Icinga 2 на Debian 8.6. В этой части будет рассмотрена процедура установки веб фронт-энда для нашего сервера Icinga 2 - современного модульного веб-интерфейса Icinga Web 2.

    Читать далее...

  • Настройка Kerberos аутентификации с SSO на веб-сервере Apache с помощью SSSD

    В прошлой заметке был рассмотрен пример простейшего ограничения доступа к веб-серверу Apache с применением незащищённой Basic-аутентификации и использованием учётных данных из файла. Разумеется такой режим аутентификации нельзя считать безопасным и поэтому в данной заметке мы рассмотрим пример настройки Kerberos-аутентификации и авторизации на веб-сервере Apache c помощью службы SSSD (System Security Services Daemon).

    Ранее уже рассматривался пример подобной настройки веб-сервера Apache, однако в том случае для поддержки Kerberos-аутентификации в систему устанавливался пакет krb5-workstation, а для авторизации использовался функционал интеграции oVirt с Active Directory. В этой заметке мы пойдём по несколько иному пути, так как для аутентификации пользователей в домене AD будем использовать модуль Apache mod_auth_gssapi, а для авторизации модуль - mod_authnz_pam, который будет использоваться в связке с SSSD. То есть получать доступ к веб-серверу смогут все те доменные пользователи, что уже имеют доступ на подключение к самому серверу. Такая конфигурация может быть проста в настройке и полезна в тех случаях, когда некоторому кругу администраторов Linux-сервера нужно предоставить возможность прозрачного подключения (Single sign-on) к веб-сайту того или иного сервиса, работающего на этом сервере, как в ранее рассмотренном случае с веб-консолью QUADStor.

    Читать далее...