Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление


Информация
titleДанная статья применима к:
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.2)
  • Astra Linux Special Edition РУСБ.10015-16 исп. 1 и исп. 2
  • Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1)
  • Astra Linux Common Edition 2.12


Аннотация

Для работы web-сервера в составе домена с использованием для аутентификации доменной службы (ALD или FreeIPA):

  1. Компьютер должен быть зарегистрирован в домене;
  2. Служба web-сервера должна быть зарегистрирована в домене;

Установка пакетов

Служба web-сервера apache2 представлена в Astra Linux пакетом apache2. При установке ОС пакет по умолчанию не устанавливается, но может быть быть установлен при выборе программного обеспечения во время установки ОС.

Информация

Только для Astra Linux Special Edition:
Если пакет устанавливался при установке ОС, то после запуска ОС и выполнения настроек следует вручную разрешить автоматический запуск службы после перезагрузки и запустить сллужбу:

Command
iconfalse

systemctl enable apache2
systemctl start apache2


Для использования аутентификации Kerberos дополнительно установить пакет libapache2-mod-auth-kerb, содержащий модуль аутентификации auth_kerb:

Command
sudo apt install libapache2-mod-auth-kerb


Информация
При установке контроллера (реплики контроллера) домена FreeIPA служба apache2 будет установлена и настроена автоматически, однако настройка аутентификации Kerberos при этом не производится.

Настройка конфигурации apache2

В конфигурационных файлах web-сайтов, доступ к которым предоставляется службой apache2, должны быть заданы параметры авторизации. Например, создадим файл /etc/apache2/sites-available/auth-kerberos.conf со следующим содержимым:

Блок кода
<VirtualHost *:80>81>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    <Directory /var/www>
        AuthType Kerberos
        # Имя области реалма(realm) Керберос - имя домена ЗАГЛАВНЫМИ буквами
        KrbAuthRealms <РЕАЛМ_КЕРБЕРОС>
        # Полное доменное имя сервераИмя доменной службы, предоставляемой сервером
        KrbServiceName HTTP/<полное_доменное_имя_сервера>
        # Имя файла, в котором сохранены ключи доменной службы
        Krb5Keytab /etc/apache2/keytab
        KrbMethodNegotiate on
        KrbMethodK5Passwd off
        require valid-user
        KrbSaveCredentials on
    </Directory>
</VirtualHost>

Полное описание параметоров

Разрешить использование созданного конфигурационного файла для предоставления доступа к web-сайту:

Command
sudo a2ensite auth-kerberos

sudo mkdir /var/www/html/auth-kerberos

/var/www/html/auth-kerberos/index.html

<html>
<body>
<div style="width: 100%; font-size: 40px; font-weight: bold; text-align: center;">
Test Page for Kerberos Auth
</div>
</body>
</html>

После изменения конфигурации перезапустить службу apache2:

Command
iconfalse

sudo systemctl restart apache2


Настройка аутентификации Kerberos в домене FreeIPA

kinit admin
ipa service-add HTTP/web.ipadomain0.ru

sudo kinit admin
sudo ipa-getkeytab -s ipa0.ipadomain0.ru -k /etc/apache2/keytab -p HTTP/`hostname`
sudo chown www-data:www-data /etc/apache2/keytab

Настройка аутентификации Kerberos в домене ALD

Для домена ALD сценарий настройки может выглядеть так:
Подсказка
iconfalse

keytab="/etc/apache2/keytab"
a2enmod auth_kerb
ald-admin service-add HTTP/`hostname`
ald-admin sgroup-svc-add HTTP/`hostname` --sgroup=mac
ald-client update-svc-keytab HTTP/`hostname` --ktfile="$keytab"
chown www-data "$keytab"
chmod 644 "$keytab"
systemctl restart apache2


После изменения конфигурации перезапустить сервер:
Подсказка
iconfalse

systemctl restart apache2