Сеть SWL (V): Debian Wheezy и ClearOS. Аутентификация SSSD с использованием собственного LDAP.

Привет друзья!. Пожалуйста, повторяю, прочтите перед «Введение в сеть с бесплатными программами (I): презентация ClearOS»И загрузите пакет установочных образов ClearOS Step-by-Step (1,1 мега), чтобы быть в курсе того, о чем мы говорим. Без этого чтения будет трудно следить за нами.

Демон службы безопасности системы

Программа SSSD o Демон службы безопасности системы, это проект Fedora, который родился из другого проекта - также из Fedora - под названием БесплатноIPA. Согласно его собственным создателям, короткое и свободно переведенное определение будет следующим:

SSSD - это служба, которая обеспечивает доступ к различным поставщикам удостоверений и аутентификации. Его можно настроить для собственного домена LDAP (поставщик удостоверений на основе LDAP с аутентификацией с использованием LDAP) или для поставщика удостоверений LDAP с аутентификацией с использованием Kerberos. SSSD обеспечивает интерфейс с системой через NSS y ВПП, а также вставляемый Back End для подключения к нескольким и разным источникам учетных записей.

Мы считаем, что перед нами более комплексное и надежное решение для идентификации и аутентификации зарегистрированных пользователей в OpenLDAP, чем те, которые рассматривались в предыдущих статьях, и этот аспект остается на усмотрение каждого и его собственного опыта..

Предлагаемое в этой статье решение является наиболее рекомендуемым для мобильных компьютеров и ноутбуков, так как оно позволяет нам работать автономно, поскольку SSSD хранит учетные данные на локальном компьютере.

Пример сети

  • Контроллер домена, DNS, DHCP: ClearOS Enterprise 5.2sp1.
  • Имя контроллера: CentOS
  • Доменное имя: friends.cu
  • Контроллер IP: 10.10.10.60
  • ---------------
  • Версия Debian: Уизи.
  • Название команды: дебиан7
  • IP-адрес: Использование DHCP

Проверяем, что сервер LDAP работает

Модифицируем файл /etc/ldap/ldap.conf и установите пакет ldap-утилиты:

: ~ # нано /etc/ldap/ldap.conf
[----] BASE dc = friends, dc = cu URI ldap: //centos.amigos.cu [----]
: ~ # aptitude install ldap-utils: ~ $ ldapsearch -x -b 'dc = friends, dc = cu' '(objectclass = *)': ~ $ ldapsearch -x -b dc = friends, dc = cu 'uid = шаги '
: ~ $ ldapsearch -x -b dc = друзья, dc = cu 'uid = legolas' cn gidNumber

С помощью последних двух команд мы проверяем доступность сервера OpenLDAP нашей ClearOS. Давайте внимательно посмотрим на результаты предыдущих команд.

Важно: мы также проверили, что служба идентификации на нашем сервере OpenLDAP работает правильно.

сеть-swl-04-users

Устанавливаем пакет sssd

Также рекомендуется установить пакет палец сделать чеки более удобными, чем ldapsearch:

: ~ # aptitude install sssd finger

По завершении установки сервис твердотельный накопитель не запускается из-за отсутствия файла /etc/sssd/sssd.conf. Результат установки отражает это. Следовательно, мы должны создать этот файл и оставить его с следующий минимальный контент:

: ~ # нано /etc/sssd/sssd.conf
[sssd] config_file_version = 2 services = nss, pam # SSSD не запустится, если вы не настроите какие-либо домены. # Добавить новые конфигурации домена как [домен / ] и # затем добавьте список доменов (в том порядке, в котором вы хотите # их запрашивать) в атрибут «домены» ниже и раскомментируйте его. domains = amigos.cu [nss] filter_groups = root filter_users = root reconnection_retries = 3 [pam] reconnection_retries = 3 # домен LDAP [domain / amigos.cu] id_provider = ldap
auth_provider = ldap
chpass_provider = ldap # ldap_schema может иметь значение «rfc2307», которое сохраняет имена членов группы в атрибуте # «memberuid», или «rfc2307bis», при котором DN членов группы хранится в # атрибуте «member». Если вы не знаете это значение, обратитесь к администратору LDAP #. # работает с ClearOS ldap_schema = rfc2307
ldap_uri = ldap: //centos.amigos.cu
ldap_search_base = dc = friends, dc = cu # Обратите внимание, что включение перечисления будет иметь умеренное влияние на производительность. # Следовательно, значение по умолчанию для перечисления - FALSE. # См. Полную информацию на странице руководства sssd.conf. enumerate = false # Разрешить автономные входы в систему путем локального сохранения хэшей паролей (по умолчанию: false). cache_credentials = true
ldap_tls_reqcert = разрешить
ldap_tls_cacert = /etc/ssl/certs/ca-certificates.crt

После создания файла мы назначаем соответствующие разрешения и перезапускаем службу:

: ~ # chmod 0600 /etc/sssd/sssd.conf
: ~ # перезапуск службы sssd

Если мы хотим обогатить содержимое предыдущего файла, мы рекомендуем выполнить человек sssd.conf и / или обратитесь к существующей документации в Интернете, начиная со ссылок в начале сообщения. Также проконсультируйтесь человек sssd-ldap. Пакет твердотельный накопитель включает пример в /usr/доля/doc/sssd/примеры/sssd-example.conf, который можно использовать для аутентификации в Microsoft Active Directory.

Теперь мы можем использовать самые удобные команды палец y получить:

: ~ $ палец шагов
Логин: strides Имя: Strides El Rey Каталог: / home / strides Shell: / bin / bash Не входил в систему. Почты нет. Нет плана.

: ~ $ sudo getent passwd леголас
леголас: *: 1004: 63000: Леголас Эльф: / home / legolas: / bin / bash

Мы по-прежнему не можем пройти аутентификацию как пользователь сервера LDAP. Прежде чем мы должны изменить файл /etc/pam.d/общая сессия, чтобы папка пользователя автоматически создавалась при запуске сеанса, если она не существует, а затем перезагружаете систему:

[----]
требуется сеанс pam_mkhomedir.so skel = / etc / skel / umask = 0022

### Вышеуказанная строка должна быть включена ДО
# вот модули для каждого пакета ("Основной" блок) [----]

Перезапускаем наш Wheezy:

: ~ # перезагрузка

После входа в систему отключите сеть с помощью диспетчера подключений, выйдите из системы и снова войдите. Быстрее ничего. Запустить в терминале Ifconfig и они увидят, что eth0 он вообще не настроен.

Активируйте сеть. Пожалуйста, выйдите из системы и войдите снова. Проверить еще раз с Ifconfig.

Конечно, для работы в автономном режиме необходимо хотя бы один раз войти в систему, пока OpenLDAP находится в сети, чтобы учетные данные были сохранены на нашем компьютере.

Не забываем сделать внешнего пользователя, зарегистрированного в OpenLDAP, членом необходимых групп, всегда обращая внимание на пользователя, созданного при установке.

примечание:

Объявить вариант ldap_tls_reqcert = никогда, в файле /etc/sssd/sssd.conf, представляет собой угрозу безопасности, как указано на странице SSSD - FAQ. Значение по умолчанию - «спрос«. Видеть человек sssd-ldap. Однако в главе 8.2.5 Настройка доменов В документации Fedora указано следующее:

SSSD не поддерживает аутентификацию по незашифрованному каналу. Следовательно, если вы хотите пройти аутентификацию на сервере LDAP, либо TLS/SSL or LDAPS не требуется.

SSSD он не поддерживает аутентификацию по незашифрованному каналу. Поэтому, если вы хотите пройти аутентификацию на сервере LDAP, это будет необходимо TLS / SLL o LDAP.

Мы лично думаем что решение адресовано с точки зрения безопасности этого достаточно для корпоративной локальной сети. Через WWW Village мы рекомендуем реализовать зашифрованный канал, используя TLS или же "Уровень безопасности транспорта »между клиентским компьютером и сервером.

Мы стараемся добиться этого за счет правильной генерации самоподписанных сертификатов или «Самоподписанный «На сервере ClearOS, но мы не смогли. На самом деле это нерешенная проблема. Если кто-то из читателей знает, как это сделать, добро пожаловать, чтобы объяснить!

debian7.amigos.cu


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   элиотайм3000 сказал

    Отлично.

    1.    Federico сказал

      Приветствую ElioTime3000 и спасибо за комментарий !!!

    2.    Federico сказал

      Приветствую eliotime3000 и спасибо за оценку статьи !!!

  2.   Курайи сказал

    Превосходно! Я хочу выразить огромные поздравления автору публикации за то, что он поделился своими обширными знаниями, и блогу за то, что он позволил опубликовать его.

    Спасибо!

    1.    Federico сказал

      Большое спасибо за похвалу и комментарий !!! Сила, которую вы даете мне, чтобы продолжать делиться знаниями с сообществом, в котором мы все учимся.

  3.   фенобарбитал сказал

    Хорошая статья! Обратите внимание, что относительно использования сертификатов, когда вы генерируете сертификат, вы должны добавить в конфигурацию ldap (cn = config):

    олклокалссф: 71
    olcTLSCACertificateFile: / путь / к / ca / ​​cert
    olcTLSCertificateFile: / путь / к / общедоступному / сертификату
    olcTLSCertificateKeyFile: / путь / к / частному / ключу
    olcTLSVerifyClient: попробуйте
    olcTLSCipherSuite: + RSA: + AES-256-CBC: + SHA1

    Благодаря этому (и созданию сертификатов) у вас будет поддержка SSL.

    Привет!

    1.    Federico сказал

      Спасибо за ваш вклад !!! Тем не менее, я публикую 7 статей об OpenLDAP в:
      http://humanos.uci.cu/2014/01/servicio-de-directorio-con-ldap-introduccion/
      https://blog.desdelinux.net/ldap-introduccion/
      В них я подчеркиваю использование Start TLS перед SSL, что рекомендуется openldap.org. Приветствую @phenobarbital и большое спасибо за комментарии.
      Мой е-маил federico@dch.ch.gob.cu, если вы хотите обменять больше. Для меня выход в Интернет идет очень медленно.

    2.    фенобарбитал сказал

      Для TLS конфигурация такая же, помните, что с SSL транспорт делается прозрачным по зашифрованному каналу, в то время как в TLS двустороннее шифрование оговаривается для транспортировки данных; с TLS согласование можно согласовать на том же порте (389), а с SSL согласование выполняется на альтернативном порту.
      Измените следующее:
      олклокалссф: 128
      olcTLSVerifyClient: разрешить
      olcTLSCipherSuite: НОРМАЛЬНЫЙ
      (если вы параноик в отношении безопасности, вы используете:
      olcTLSCipherSuite: SECURE256:!AES-128-CBC:!ARCFOUR-128:!CAMELLIA-128-CBC:!3DES-CBC:!CAMELLIA-128-CBC)

      и перезапустите, вы увидите позже:
      gnutls-cli-debug -p 636 ldap.ipm.org.gt

      Разрешение "ldap.ipm.org.gt"…
      Проверка поддержки SSL 3.0… да
      Проверка, требуется ли% COMPAT… нет
      Проверка поддержки TLS 1.0… да
      Проверка поддержки TLS 1.1… да
      Проверка перехода с TLS 1.1 на… Н / Д
      Проверка поддержки TLS 1.2… да
      Проверка поддержки безопасного повторного согласования… да
      Проверка поддержки безопасного повторного согласования (SCSV)… да

      При этом также включена поддержка TLS, вы используете 389 (или 636) для TLS и 636 (ldaps) для SSL; они полностью независимы друг от друга, и вам не нужно отключать один, чтобы использовать другой.

      Привет!