misc:spnego
Это старая версия документа!
Содержание
Прозрачная авторизация доменного пользователя через NGINX
Инструкция написана для Ubuntu 24.04
Настройка времени
- Настройка временной зоны:
timedatectl set-timezone Europe/MoscowПросмотреть список временных зон можно командой:
timedatectl list-timezones
- Устанавливаем NTP-клиент Chrony
apt install chrony - Настраиваем список NTP-серверов для синхронизации времени в файле /etc/chrony/chrony.conf
... pool domain.local # pool ...
В данном случае указываем либо список IP-адресов (доменных имен) NTP-серверов в каждой строчке, либо просто указываем имя домена
- Запускаем демон chrony
systemctl enable chronyd --now
Сборка динамического модуля SPNEGO для NGINX
Скомпилировать модуль по инструкции можно на другом ПК скопировав потом файл ngx_http_auth_spnego_module.so
- Проверяем установленную версию NGINX:
nginx -V - Устанавливаем необходимые пакеты
apt install git build-essential libpcre++-dev zlib1g-dev libkrb5-dev libssl-dev libxslt-dev libgd-dev
- Скачиваем и распаковываем исходники nginx согласно установленной версии
cd ~ mkdir nginx-dev cd nginx-dev wget https://nginx.org/download/nginx-1.xx.x.tar.gz tar -xzvf nginx-1.xx.x.tar.gz
- Скачиваем и компилируем динамический модуль SPNEGO
cd ~/nginx-dev git clone https://github.com/stnoonan/spnego-http-auth-nginx-module.git cd nginx-1.xx.x ./configure --with-compat --add-dynamic-module=../spnego-http-auth-nginx-module make modules
В папке objs должен появиться файл ngx_http_auth_spnego_module.so
Установка динамического модуля SPNEGO
- Скопировать скомпилированный модуль ngx_http_auth_spnego_module.so
mkdir -p /usr/lib/nginx/modules cp path/to/ngx_http_auth_spnego_module.so /usr/lib/nginx/modules/
- Создать конфигурационный файл для модуля
vi /etc/nginx/modules-available/spnego-http-auth-nginx-module.conf
- Прописать в файл загрузку модуля
load_module "/usr/lib/nginx/modules/ngx_http_auth_spnego_module.so";
- Включить модуль для nginx
cd /etc/nginx/modules-enabled ln -s ../modules-available/spnego-http-auth-nginx-module.conf systemctl reload nginx
Интеграция с Active Directory
Настройка приведена для Windows Server 2016 и выше
misc/spnego.1781973184.txt.gz · Последнее изменение: — nikolay
