Перейти к концу метаданных
Переход к началу метаданных

Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 2 Следующий »

Тип статьиИнструкция
КомпетенцииАдминистратор
Необходимые праваroot
Версия компонентов

python 3.8.8
jupyter core 4.6.1
pip 21.0.1

Статус
ЧЕРНОВИК
Сложность легко
Полезные ссылки

https://github.com/jupyterhub/ldapauthenticator - плагин ldap аутентификации
https://github.com/benhosmer/jupyterhub-ldapcreateusers - расширение для плагина, помогает в создании локальных юзеров

Дополнительные сведенияUbuntu 18.04

Введение


Данная инструкция поможет настроить LDAP аутентификацию в Jupiterhub через ваш LDAP сервер. Конкретно тут будет рассматриваться интеграция с Active Directory.

1. Вводные данные


Настройка происходит на виртуальной машине Ubuntu Server 18.04.5 со свеже-установленным ViXtract.

LDAP сервер (DC) находится в той же подсети, что и наш Jupiterhub. Адрес DC - 192.168.1.66.

2. Установка плагина jupyterhub-ldapauthenticator


Выполняем следующие команды:

sudo /opt/jupyterhub/bin/pip install --target=/opt/jupyterhub/lib/python3.8/site-packages jupyterhub-ldapauthenticator
sudo /opt/jupyterhub/bin/pip install --target=/opt/jupyterhub/lib/python3.8/site-packages jupyterhub-ldapcreateusers

После установки открываем конфиг jupyterhub_config.py для редактирование:

sudo vim /opt/jupyterhub/etc/jupyterhub/jupyterhub_config.py

И в конец файла добавляем следующие строки:

#LDAP authentication
c.JupyterHub.authenticator_class = 'ldapcreateusers.LocalLDAPCreateUsers'
c.LocalLDAPCreateUsers.server_address = 'ldap://192.168.1.66'
c.LocalLDAPCreateUsers.server_port = 389;
c.LocalLDAPCreateUsers.use_ssl = True
c.LocalLDAPCreateUsers.lookup_dn = True
c.LocalLDAPCreateUsers.lookup_dn_search_filter = '({login_attr}={login})'
c.LocalLDAPCreateUsers.lookup_dn_search_user = 'cn=adm,cn=Users,dc=supersonic,dc=lan'
c.LocalLDAPCreateUsers.lookup_dn_search_password = '251600Mc'
c.LocalLDAPCreateUsers.user_search_base = 'dc=supersonic,dc=lan'
c.LocalLDAPCreateUsers.user_attribute = 'sAMAccountName'
c.LocalLDAPCreateUsers.lookup_dn_user_dn_attribute = 'cn'
c.LocalLDAPCreateUsers.escape_userdn = True
c.LocalLDAPCreateUsers.bind_dn_template = '{username}'
c.LocalLDAPCreateUsers.use_lookup_dn_username = False

# create system users that don't exist yet
c.LocalLDAPCreateUsers.create_system_users = True

Тут есть некоторая интересная особенность. Несмотря на то, что LDAP сервер не был настроен на использование SSL, а в конфиге прописан не SSL порт (389) и протокол указан ldap, а не ldaps, опцию .use_ssl необходимо было определить в True. Иначе аутентификация не проходила.

Перезапускаем jupiterhub:

sudo service jupyterhub restart


После этого LDAP аутентификация должна заработать. Если пользователя нет в ОС, он будет создан автоматически.

  • Нет меток