Статья не проверена и не опубликована
Данная статья применима к:
Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7)
Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
- Astra Linux Common Edition 2.12
NTLM — встроенный в операционные системы семейства Microsoft Windows протокол сетевой аутентификации. Широко применяется в различных сервисах на их базе и используется версиями Microsoft Windows вплоть до Windows 10 включительно.
Описание стенда
- имеется настроенный контроллер домена Windows AD:
- имя winserver.windom.ex
- адрес 10.0.2.20;
- администратор домена
- имя administrator
- пароль 1234567890
- доменный клиент
- winuser@windom.ex
- пароль 0987654321
- web-сервер Astra Linux
Ввод в домен
Действия выполняются на web-сервере. Ввод в домен выполняется с помощью инструмента astra-winbind.
- Перед вводом в домен настроить разрешение имён на использование контроллера DNS в качестве сервера DNS;
Установить пакеты:
sudo apt install astra-winbindВвести компьютер в домен Windows AD:
sudo astra-winbind -dc winserver.windom.ex -u adminisrator
Создание тестового сайта
Для создания тестового сайта использовался сценарий из статьи про инструмен управления ИБП apcupsd:
sudo a2enmod cgi
sudo systemctl restart apache2
firefox localhost/cgi-bin/apcupsd/multimon.cgi &
Настройка авторизации с помощью пакета libapache2-mod-auth-ntlm-winbind
Установка пакета
Подключить репозиторий Debian:
cat << EOT | sudo tee -a /etc/apt/sources.list
deb [trusted=yes] http://deb.debian.org/debian/ stretch main contrib non-free
EOT
sudo apt updateУстановить пакет с модулем авторизации:
sudo apt install libapache2-mod-auth-ntlm-winbindЗагрузить модуль авторизации:
sudo a2enmod auth_ntlm_winbindПерезапустить службу apache2:
sudo systemctl restart apache2
Проверка работы авторизации
Для проверки можно использовать базовую версию протокола авторизаци, указав имя домена и пользователя, разделённые символом разделителя домена samba (в примере - симовол "\", принятый по умолчанию) и пароль пользователя:
/usr/bin/ntlm_auth --helper-protocol=squid-2.4-basic
OK
windom.ex\baduser 0987654321
ERR
В первом случае указан существующий пользователь, во втором - несуществующий пользователь baduser.
Включение требования авторизации на тестовом web-сайте
<Location /cgi-bin/apcupsd/>
AuthType NTLM
NTLMAuth on
NTLMAuthHelper "/usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp"
Require user le winuser
</Location>
EOT
sudo systemctl restart apache2