/etc/one/oned.conf):
…
AUTH_MAD = [
EXECUTABLE = "one_auth_mad",
AUTHN = "ssh,x509,ldap,server_cipher,server_x509"
]
default в атрибут AUTHN:
AUTH_MAD = [
EXECUTABLE = "one_auth_mad",
AUTHN = "default,ssh,x509,ldap,server_cipher,server_x509"
]
# ln -s /var/lib/one/remotes/auth/ldap /var/lib/one/remotes/auth/default
Важно
/etc/one/sunstone-server.conf должно быть указано:
:auth: opennebula
/etc/one/auth/ldap_auth.conf. Формат: YAML-хеш, где:
:order) описывает один LDAP-сервер;
:order — массив с порядком опроса серверов.
Примечание
:order обрабатываются по порядку, пока пользователь не будет успешно аутентифицирован или не будет достигнут конец списка. Серверы, не указанные в :order, использоваться не будут.
Таблица 35.2. Параметры файла /etc/one/auth/ldap_auth.conf
|
Параметр
|
Описание
|
|---|---|
:user
|
Имя пользователя, имеющего право выполнять запросы к LDAP. Не требуется при анонимном доступе
|
:password
|
Пароль для пользователя, определенного в
:user. Не требуется при анонимном доступе
|
:auth_method
|
Поддерживается только
:simple
|
:encryption
|
Можно установить значение
:simple_tls, если требуется SSL-соединение
|
:host
|
LDAP-сервер
|
:port
|
Порт LDAP-сервера (обычно 389 или 636)
|
:timeout
|
Тайм-аут подключения и аутентификации (в секундах)
|
:base
|
Базовый DN для поиска пользователей
|
:group_base
|
Альтернативный DN для поиска групп
|
:group
|
Если задано, только пользователи из этой группы могут входить
|
:user_field
|
Атрибут LDAP, содержащий логин (например, uid, sAMAccountName)
|
:group_field
|
Атрибут членства в группе (по умолчанию member). Для вложенных групп в AD можно использовать: member:1.2.840.113556.1.4.1941
|
:mapping_generate
|
Автоматическая генерация файла сопоставления групп
|
:mapping_timeout
|
Интервал обновления файла сопоставления (в секундах)
|
:mapping_filename
|
Имя файла сопоставления (должно быть уникальным для каждого сервера)
|
:mapping_key
|
Ключ в шаблоне группы, содержащий DN LDAP-группы
|
:mapping_default
|
Группа OpenNebula по умолчанию для пользователей без сопоставления. Установите false, чтобы запретить вход таким пользователям
|
:rfc2307bis:
|
true для Active Directory, false для OpenLDAP
|
:group_admin_group_dn:
|
DN группы, члены которой становятся администраторами всех сопоставленных групп в OpenNebula
|
Примечание
DRIVER_MANAGED_GROUP_ADMIN = "NO" в разделе ldap файла oned.conf.
$HOME/.one/one_auth), в формате:
<user_dn>:ldap_passwordгде:
oneuser encode <user> [<password>]. Например:
$ oneuser encode 'cn=First Name,dc=institution,dc=country' 'pass word'
cn=First%20Name,dc=institution,dc=country:pass%20word
Результат этой команды следует поместить в файл $ONE_AUTH.
$ oneuser chauth <id|name> ldap
/etc/one/auth/ldap_auth.conf необходимо указать:
:user — пользователь AD с правами на чтение в дереве пользователей (пользователь указывается в формате opennebula@test.alt);
:password — пароль пользователя;
:host — IP-адрес или имя сервера AD (имя должно разрешаться через DNS или /etc/hosts);
:base — базовый DN для поиска пользователя;
:user_field — для этого параметра следует установить значение sAMAccountName;
:rfc2307bis — для этого параметра следует установить значение true.
/etc/one/auth/ldap_auth.conf для настройки аутентификации в домене AD (домен test.alt):
server 1:
:user: 'opennebula@test.alt'
:password: 'Pa$$word'
:auth_method: :simple
:host: dc1.test.alt
:port: 389
:base: 'dc=test,dc=alt'
:user_field: 'sAMAccountName'
:mapping_generate: false
:mapping_timeout: 300
:mapping_filename: server1.yaml
:mapping_key: GROUP_DN
:mapping_default: 100
:rfc2307bis: true
:order:
- server 1
Примечание
/etc/samba/smb.conf в секции [global]:
ldap server require strong auth = noи перезапустить samba:
# systemctl restart samba
Примечание
:mapping_default должна существовать в OpenNebula.
Примечание
/etc/one/auth/ldap_auth.conf для настройки аутентификации в домене FreeIPA (домен example.test):
server 1:
:user: 'uid=admin,cn=users,cn=accounts,dc=example,dc=test'
:password: '12345678'
:auth_method: :simple
:host: ipa.example.test
:port: 389
:base: 'dc=example,dc=test'
:user_field: 'uid'
:mapping_generate: false
:mapping_timeout: 300
:mapping_filename: server1.yaml
:mapping_key: GROUP_DN
:mapping_default: 100
:rfc2307bis: true
:order:
- server 1

GROUP_DN="CN=office,CN=Users,DC=test,DC=alt"

/etc/one/auth/ldap_auth.conf указать:
:mapping_generate: true :mapping_key: GROUP_DNПоиск DN сопоставляемой группы будет осуществляться в этом параметре шаблона.
/var/lib/one/server1.yaml:
--- CN=office,CN=Users,DC=test,DC=alt: '100'Пользователи группы AD office будут сопоставлены с группой ALT (ID=100).
:mapping_generate: false и создав файл /var/lib/one/server1.yaml:
CN=office,CN=Users,DC=test,DC=alt: '100' CN=Domain Admins,CN=Users,DC=test,DC=alt: '101'Пользователи из office попадут в группу с ID 100, из Domain Admins — в ID 101.

Примечание
:mapping_key и :mapping_file.
oned.conf.
oned.conf:
AUTH_MAD_CONF = [
ldap = [
DRIVER_MANAGED_GROUPS = "NO"
]
]