ActiveDirectory/SSL: различия между версиями
Liannnix (обсуждение | вклад) |
Liannnix (обсуждение | вклад) |
||
(не показано 10 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
= Введение = | == Введение == | ||
Настройка доступа к дереву домена Samba чере LDAPS. | Настройка доступа к дереву домена Samba чере LDAPS. | ||
Строка 5: | Строка 5: | ||
По умолчанию Samba предоставляет доступ по протоколу LDAP с использованием GSSAPI авторизации и шифрования или без шифрования вообще. LDAPS подразумевает использование SSL/TLS туннеля для обмена данными с сервером, а так же позволяет использовать plain-text авторизацию (с помощью логина и пароля открытым текстом). В отличии от GSSAPI, LDAPS поддерживают большинство библиотек для работы с LDAP деревом. | По умолчанию Samba предоставляет доступ по протоколу LDAP с использованием GSSAPI авторизации и шифрования или без шифрования вообще. LDAPS подразумевает использование SSL/TLS туннеля для обмена данными с сервером, а так же позволяет использовать plain-text авторизацию (с помощью логина и пароля открытым текстом). В отличии от GSSAPI, LDAPS поддерживают большинство библиотек для работы с LDAP деревом. | ||
= Общая информация = | == Общая информация == | ||
Устройство SSL сертификатов выглядит следующим образом: | Устройство SSL сертификатов выглядит следующим образом: | ||
Строка 16: | Строка 16: | ||
Доменные сертификаты можно использовать и без подписи. Пары ключ-сертификат достаточно для создания шифрованного канала, но без подписи такой сертификат считается ненадёжным. Такие сертификаты ещё называют самоподписанными (self-signed). | Доменные сертификаты можно использовать и без подписи. Пары ключ-сертификат достаточно для создания шифрованного канала, но без подписи такой сертификат считается ненадёжным. Такие сертификаты ещё называют самоподписанными (self-signed). | ||
= Генерация ключей = | == Генерация ключей == | ||
Установить пакет {{pkg|openssl}}. | Установить пакет '''{{pkg|openssl}}'''. | ||
Генерация корневой пары ключ-сертификат: | Генерация корневой пары ключ-сертификат: | ||
openssl genrsa -out rootCA.key 2048 | |||
openssl req -x509 -new -key rootCA.key -days 10000 -out rootCA.crt | <source lang="sh">openssl genrsa -out rootCA.key 2048 | ||
openssl req -x509 -new -key rootCA.key -days 10000 -out rootCA.crt</source> | |||
Генерация приватного ключа и сертификата, подписанного корневым сертификатом: | Генерация приватного ключа и сертификата, подписанного корневым сертификатом: | ||
openssl genrsa -out lnx-dc11.alt.test.key 2048 | |||
openssl req -new -key lnx- | <source lang="sh">openssl genrsa -out lnx-dc11.alt.test.key 2048 | ||
openssl req -new -key lnx-dc11.alt.test.key -out lnx-dc11.alt.test.csr</source> | |||
Ответить на вопросы. В поле Common Name важно указать FQDN имя хоста, для которого генерируется сертификат. | Ответить на вопросы. В поле Common Name важно указать FQDN имя хоста, для которого генерируется сертификат. | ||
openssl x509 -req -in lnx-dc11.alt.test.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial -out lnx-dc11.alt.test.crt -days 5000 | |||
<source lang="sh">openssl x509 -req -in lnx-dc11.alt.test.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial -out lnx-dc11.alt.test.crt -days 5000</source> | |||
В итоге получаем комплект: | В итоге получаем комплект: | ||
Cert: lnx-dc11.alt.test.crt | |||
<source lang="text">Cert: lnx-dc11.alt.test.crt | |||
Key: lnx-dc11.alt.test.key | Key: lnx-dc11.alt.test.key | ||
CA: rootCA.crt | CA: rootCA.crt</source> | ||
= Настройка SSL/TLS в Samba = | == Настройка SSL/TLS в Samba DC == | ||
Копируем сгенерированные ключи в рабочий каталог Samba: | Копируем сгенерированные ключи в рабочий каталог Samba: | ||
В секцию Global в /etc/samba/smb.conf добавляем | <source lang="sh"># cp lnx-dc11.alt.test.crt /var/lib/samba/private/tls/ | ||
ldap server require strong auth = yes | # cp lnx-dc11.alt.test.key /var/lib/samba/private/tls/ | ||
# cp rootCA.crt /var/lib/samba/private/tls/</source> | |||
В секцию Global в {{path|/etc/samba/smb.conf}} добавляем следующие параметры: | |||
<source lang="text">ldap server require strong auth = yes | |||
tls enabled = yes | tls enabled = yes | ||
tls keyfile = tls/lnx-dc11.alt.test.key | tls keyfile = tls/lnx-dc11.alt.test.key | ||
tls certfile = tls/lnx-dc11.alt.test.crt | tls certfile = tls/lnx-dc11.alt.test.crt | ||
tls cafile = tls/rootCA.crt | tls cafile = tls/rootCA.crt</source> | ||
Перезапускаем сервис Samba: | Перезапускаем сервис Samba: | ||
systemctl restart samba | |||
<source lang="sh"># systemctl restart samba</source> | |||
== Настройка SSL/TLS на стороне клиента == | |||
Добавляем в системный репозиторий сертификатов наш корневой сертификат: | Добавляем в системный репозиторий сертификатов наш корневой сертификат: | ||
cp rootCA.crt /etc/pki/ca-trust/source/anchors/ | |||
update-ca-trust | <source lang="sh"># cp rootCA.crt /etc/pki/ca-trust/source/anchors/ | ||
# update-ca-trust</source> | |||
Проверяем работоспособность TLS соединения: | Проверяем работоспособность TLS соединения: | ||
ldapsearch -h alt.test -W -x -D "Administrator@alt.test" -Z -b dc=alt,dc=test "(cn=Administrator)" dn sAMAccountName | |||
<source lang="sh"># ldapsearch -h alt.test -W -x -D "Administrator@alt.test" -Z -b dc=alt,dc=test "(cn=Administrator)" dn sAMAccountName</source> | |||
[[Категория:Active Directory]] |
Текущая версия от 15:20, 4 октября 2022
Введение
Настройка доступа к дереву домена Samba чере LDAPS.
По умолчанию Samba предоставляет доступ по протоколу LDAP с использованием GSSAPI авторизации и шифрования или без шифрования вообще. LDAPS подразумевает использование SSL/TLS туннеля для обмена данными с сервером, а так же позволяет использовать plain-text авторизацию (с помощью логина и пароля открытым текстом). В отличии от GSSAPI, LDAPS поддерживают большинство библиотек для работы с LDAP деревом.
Общая информация
Устройство SSL сертификатов выглядит следующим образом:
Создаётся корневая пара ключ-сертифкат. Далее с помощью этой пары подписываются доменные сертификаты. Они так же представляют из себя пару ключ-сертификат.
Библиотеки для работы с SSL (openssl, например) используют список так называемых доверенных центров сертификации, чьи корневые сертификаты распространяются вместе с библиотеками и переодически обновляются. Пользовательские сертификаты, подписанные такими центрами сертификации по умолчанию считаются доверенными.
Доменные сертификаты привязываются к доменным именам. Есть разные варианты: с учётом поддоменов, с использованием wildcard. Такие сертификаты используется, к примеру, для настройки HTTPS сервера. Доменные сертификаты можно использовать и без подписи. Пары ключ-сертификат достаточно для создания шифрованного канала, но без подписи такой сертификат считается ненадёжным. Такие сертификаты ещё называют самоподписанными (self-signed).
Генерация ключей
Установить пакет openssl.
Генерация корневой пары ключ-сертификат:
openssl genrsa -out rootCA.key 2048
openssl req -x509 -new -key rootCA.key -days 10000 -out rootCA.crt
Генерация приватного ключа и сертификата, подписанного корневым сертификатом:
openssl genrsa -out lnx-dc11.alt.test.key 2048
openssl req -new -key lnx-dc11.alt.test.key -out lnx-dc11.alt.test.csr
Ответить на вопросы. В поле Common Name важно указать FQDN имя хоста, для которого генерируется сертификат.
openssl x509 -req -in lnx-dc11.alt.test.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial -out lnx-dc11.alt.test.crt -days 5000
В итоге получаем комплект:
Cert: lnx-dc11.alt.test.crt
Key: lnx-dc11.alt.test.key
CA: rootCA.crt
Настройка SSL/TLS в Samba DC
Копируем сгенерированные ключи в рабочий каталог Samba:
# cp lnx-dc11.alt.test.crt /var/lib/samba/private/tls/
# cp lnx-dc11.alt.test.key /var/lib/samba/private/tls/
# cp rootCA.crt /var/lib/samba/private/tls/
В секцию Global в /etc/samba/smb.conf добавляем следующие параметры:
ldap server require strong auth = yes
tls enabled = yes
tls keyfile = tls/lnx-dc11.alt.test.key
tls certfile = tls/lnx-dc11.alt.test.crt
tls cafile = tls/rootCA.crt
Перезапускаем сервис Samba:
# systemctl restart samba
Настройка SSL/TLS на стороне клиента
Добавляем в системный репозиторий сертификатов наш корневой сертификат:
# cp rootCA.crt /etc/pki/ca-trust/source/anchors/
# update-ca-trust
Проверяем работоспособность TLS соединения:
# ldapsearch -h alt.test -W -x -D "Administrator@alt.test" -Z -b dc=alt,dc=test "(cn=Administrator)" dn sAMAccountName