2.9.13.1.3 Настройка автоматического входа в NextCloud в домене IPA
Скачать документНа сервере IPA получите kerberos-тикет администратора для создания сервиса HTTP и создайте его.
# kinit admin # ipa service-add HTTP/nc.ipa.test
где, nc.ipa.test - это сервер NextCloud.
Сгенерируйте kerberos-тикет для сервера NextCloud.
# ipa-getkeytab -s dc.ipa.test -p HTTP/nc.ipa.test -k /etc/httpd/http.keytab
Назначьте необходимого владельца и права на файл тикета.
# chown root:apache /etc/httpd/http.keytab # chmod 640 /etc/httpd/http.keytab
Отредактируйте конфигурационный файл NextCloud приведя его к следующему виду:
# nano /etc/httpd/conf.d/nextcloud.conf Alias /nextcloud "/var/www/html/nextcloud/" <Directory /var/www/html/nextcloud/> Options +FollowSymlinks AllowOverride All <IfModule mod_dav.c> Dav off </IfModule> SetEnv HOME /var/www/html/nextcloud SetEnv HTTP_HOME /var/www/html/nextcloud </Directory> <Location "/nextcloud/index.php/apps/user_saml/saml/login"> AuthType Kerberos AuthName "Kerberos Login" KrbServiceName HTTP KrbMethodNegotiate On KrbLocalUserMapping On KrbMethodK5Passwd Off KrbSaveCredentials Off KrbVerifyKDC On KrbAuthRealms IPA.TEST Krb5KeyTab /etc/httpd/http.keytab Require valid-user </Location>
Перезагрузите httpd
# systemctl restart httpd
Отредактируйте файл /usr/share/nextcloud/config/config.php
В секцию trusted_domains впишите hostname этого сервера по образцу:
1 => 'nextc.ipa.test',
Далее, с помощью браузера, зайдите в веб интерфейс по адресу
http://<ip адрес сервера>/nextcloud
В открывшемся интерфейсе введите имя и пароль аккаунта бедующего администратора сервера, а так же выберите в качестве базы данных сервер MySQL/MariaDB
Введите ранее созданного пользователя MySQL и название базы данных.
Пользователь: nc_user
Пароль: 12345
Название базы: nextcloud
Хост: localhost
Далее включите плагины для работы с LDAP и SSO. Для этого в правом верхнем углу выберите Приложения, в открывшемся окне, в меню выберите Пакеты приложений. Включите плагины LDAP user and group backend и SSO & SAML authentication.
Настройте доступ к LDAP.
Выберите в верхнем правом углу пункт Настройки, в открывшемся окне в меню пункт Интеграция LDAP/AD. Введите данные подключения.
Сервер: ldap://dc.ipa.test
Порт: 389
Пользователь DN: uid=admin,cn=users,cn=accounts,dc=ipa,dc=test
Пароль: qwerqwert12
База DN: dc=ipa,dc=test
Нажмите Проверить базу поиска DN
Если все хорошо, нажмите Продолжить.
Выставите все так, как на скриншоте ниже и нажмите "Проверить" и пересчитать пользователей.
В следующем окне измените запрос LDAP на
(&(|(objectclass=person))(|(uid=%uid)(|(mailPrimaryAddress=%uid)(mail=%uid))))
Впишите пользователя admin и проверьте настройки
В следующем окне измените запрос LDAP на
(&(objectclass=ipausergroup))
Нажмите Проверить базу поиска DN
На этом настройка LDAP завершена.
Перейдите к настройке SSO.
Перейдите в меню в пункт Подтверждение подлинности SSO и SAML
Выберите переменные окружения
Введите в верхнее поле отображаемое имя подключения, например Kerberos
В нижнее поле uid REMOTE_USER
Поставьте галку Allow the use of multiple user back-ends
На этом конфигурация закончена.
Настройка SSO на клиенте
Зайдите на клиенте под учетной записью домена ipa.
Для работы с SSO нужно настроить браузер
Инструкцию по настройке можно найти в панель входа в ipa домен по адресу
https://<имя сервера ipa>
Нажать на ссылку Configured
Для Firefox
- Импортируйте сертификат нажав на кнопку Import Certificate Authority certificate
Поставьте все три галки.
- В адресной строке Firefox введите about:config для отображения списка текущих параметров конфигурации.
- В поле «Поиск» введите, negotiate, чтобы ограничить список параметров.
- Дважды щелкните запись network.negotiate-auth.trusted-uris, чтобы отобразить диалоговое окно «Введите значение(строка)».
- Введите имя домена, в котором вы хотите выполнить аутентификацию, например, .ipa.test.
- Перейдите на страницу Nextcloud в вашей сети и нажмите кнопку Kerberos. После этого вход будет произведен.
Дата последнего изменения: 03.09.2024
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.