Хотите узнать, как настроить аутентификацию Kubernetes LDAP в Active Directory? В этом учебнике мы покажем вам, как проверить подлинность пользователей Kubernetes Dashboard с помощью Windows Active Directory и протокола LDAP.
• Ubuntu 20
• Ubuntu 19
• Ubuntu 18
• Kubernetes 1.18
В этом руководстве будет установлен кластер Кубернетов с одним узлом.
В нашем примере IP-адрес главного узла Kubernetes составляет 192.168.15.200.
В нашем примере IP-адрес контроллера домена 192.168.15.10.
Кубернетес — Учебники
На этой странице мы предлагаем быстрый доступ к списку учебников, связанных с Kubernetes.
Учебник Windows — Брандмон контроллер домена
• IP — 192.168.15.10
• Operacional System — WINDOWS 2012 R2
• Hostname — TECH-DC01
Во-первых, нам нужно создать правило брандмауэра на контроллере домена Windows.
Это правило брандмауэра позволит серверу Kubernetes запросить активный каталог.
На контроллере домена откройте приложение под названием Windows Firewall с расширенной безопасностью
Создайте новое правило входящего брандмауэра.
Выберите опцию PORT.
Выберите опцию TCP.
Выберите опцию Специфические локальные порты.
Введите порт TCP 389.
Выберите опцию Разрешить подключение.
Проверьте опцию DOMAIN.
Проверьте опцию PRIVATE.
Проверьте опцию PUBLIC.
Введите описание в правило брандмауэра.
Поздравляем, вы создали необходимое правило брандмауэра.
Это правило позволит серверу Kubernetes запросить базу данных Active Directory.
Учебник Windows — Создание учетной записи домена
Далее нам необходимо создать не менее 2 учетных записей в базе данных Active Directory.
Учетная запись ADMIN будет использоваться для входа в панель мониторинга Kubernetes.
Учетная запись BIND будет использоваться для запроса базы данных Active Directory.
На контроллере домена откройте приложение под названием: Активные пользователи каталога и компьютеры
Создайте новую учетную запись в контейнере пользователей.
Создание новой учетной записи с именем: Админ
Пароль, настроенный для пользователя ADMIN: 123qwe..
Эта учетная запись будет использоваться для проверки подлинности веб-интерфейса Kubernetes.
Создание новой учетной записи с именем: свяжите
Пароль, настроенный для пользователя BIND: kamisama123.
Kubernetes будет использовать эту учетную запись для запроса Active Directory.
Поздравляем, вы создали необходимые учетные записи Active Directory.
Учебник Windows — Создание группы доменов
Далее, нам нужно создать группу на Active Directory.
На контроллере домена откройте приложение под названием: Активные пользователи каталога и компьютеры
Создайте новую группу внутри контейнера пользователей.
Создайте новую группу под названием: KUBERNETES-ADMIN.
Члены этой группы будут иметь административное разрешение на панели Kubernetes.
Важно! Добавьте пользователя ADMIN в качестве члена KUBERNETES-ADMIN.
Поздравляем, вы создали необходимую группу Active Directory.
Учебник Kubernetes — Установка мастер узла
Установите список необходимых пакетов.
Установите службу Docker.
Включите службу Docker во время загрузки.
Отредактируйте файл конфигурации службы Docker.
Добавьте следующую конфигурацию в конце названного элемента: EXECSTART
Вот файл перед нашей конфигурацией.
Вот файл после нашей конфигурации.
Создание файла конфигурации системы.
Вот содержимое файла.
Включить файл конфигурации системы.
Редактировать файл конфигурации под названием: MODULES. Conf
Добавьте следующую конфигурацию в конце этого файла.
Отредактируйте файл конфигурации FSTAB и отключите использование памяти Swap.
Вот файл перед нашей конфигурацией.
Вот файл после нашей конфигурации.
Установите уникальное имя хоста.
Создайте файл для настройки требуемых переменных среды.
Вот содержимое файла.
Перезагрузка компьютера.
Скачать и установить ключ репозитория Kubernetes.
Добавьте официальный репозиторий Kubernetes.
Установите пакеты Kubernetes.
Скачать необходимые изображения Kubernetes.
Вот вывод команды.
Инициализировать кластер Кубернетов.
Вот вывод команды.
Обратите внимание на команду, чтобы добавить узлы в кластер Kubernetes.
Установите правильное разрешение файла в файле конфигурации Kubernetes.
Установите необходимую конфигурацию сети.
По умолчанию мастер-узел Kubernetes не может запускать PODS.
Дополнительно включите мастер-узел Kubernetes для запуска PODS.
В нашем примере мы используем одно узловой кластер Kubernetes.
Учебник — Установка панели панели Kubernetes
Установите список необходимых пакетов.
Скачать необходимый файл YAML.
Установите приборную панель Kubernetes.
Вот вывод команды.
Создайте учетную запись службы для Панели мониторинга.
Настройте роль администратора кластера на учетную запись службы Dashboard.
Создайте учетную запись службы для прокси-сервера Apache.
Настройте роль администратора кластера на учетную запись прокси-сервера Apache.
Перечислите секрет Apache, доступный на сервере Kubernetes.
Вот вывод команды.
Обратите внимание, что имя вашего секрета не будет таким же, как у нас.
Получите значение секретного токена Apache.
Вот вывод команды.
Обратите внимание на значение токена Apache.
В нашем примере это значение токена:
Перечислите IP-адрес кластера службы Dashboard.
Вот вывод команды.
Обратите внимание на кластерный IP-адрес и порт TCP.
В нашем примере кластер Dashboard использует порт TCP 443 и IP-адрес 10.107.55.24.
Вы закончили необходимую конфигурацию панели мониторинга.
Kubernetes Proxy — Базовая аутентификация пользователя с помощью Apache
На сервере Master установите сервер Apache.
Включить необходимые модули Apache.
Отредактируйте файл конфигурации Apache.
Добавьте следующие строки к концу этого файла.
Создайте частный ключ и сертификат с помощью команды OpenSSL.
Введите запрашиваемую информацию.
В варианте, COMMON_NAME, вы должны ввести IP-адрес или хост-имя.
В нашем примере мы используем IP-адрес: 192.168.15.200
Преобразуйте существующий прокси-сертификат Kubernetes и ключ к одному файлу в формате PEM.
Отредактируйте файл конфигурации Apache для веб-сайта по умолчанию.
Вот файл, перед нашей конфигурацией.
Вот файл, после нашей конфигурации.
Измените IP-адрес элементов конфигурации под названием AUTHLDAPURL на IP-адрес контроллера домена.
Измените всю информацию о домене в Active Directory, чтобы отразить вашу среду.
Измените IP-адрес элементов конфигурации под названием PROXYPASS и PROXYPASSREVERSE на IP-адрес кластера Dashboard.
Измените значение токена CI под названием REQUESTHEADER на созданное ранее секретное значение токена Apache.
В нашем примере мы позволили использовать HTTPS с помощью самоподписанные сертификаты.
В нашем примере мы настроили использование аутентификации LDAP.
Apache будет представлять связь HTTPS между пользователем и IP-адресом кластера Dashboard.
Apache будет использовать сертификат и ключ, созданные автоматически во время установки сервера Kubernetes для выполнения взаимной проверки подлинности TLS на панели мониторинга.
Сервер Apache добавит заголовок ко всем пакетам, отправленным в Панель мониторинга.
Этот заголовок называется AUTHORIZATION BEARER и содержит секретный токен, созданный ранее в прокси Apache.
Apache также перенаправит пользователей HTTP на версию HTTPS запрошенного URL-адреса.
Перезапустите службу Apache.
Откройте браузер и получите доступ к версии HTTPS IP-адреса сервера Apache.
В нашем примере в браузер был введен следующий URL:
• https://192.168.15.200
Сервер Apache потребует от вас выполнить проверку подлинности пользователя.
После успешного входа должна быть представлена панель Kubernetes.
Прокси Apache автоматически аутентицируются на панели Kubernetes с помощью функции под названием: AUTH HEADER.
Вы успешно завершили конфигурацию Apache в качестве прокси для Панели Kubernetes.