Назад | Перейти на главную страницу

Аутентификация CentOS в AD без Samba / Winbind

В настоящее время наши серверы CentOS 5.5 проходят аутентификацию в среде Active Directory (Windows 2003 R2) с использованием Samba и Winbind. Это хорошо послужило нам, но нам нужно что-то более надежное, и кто-то предложил использовать LDAP и Kerberos для аутентификации непосредственно в AD. Основная мотивация этого толчка заключается в том, что у нас есть несопоставимые UID / GID, где один пользователь (bob) на одном сервере будет иметь UID 501, а на другом 531, и это влияет на разрешения для смонтированных каталогов SMB.

Насколько я понимаю (говоря как новичок в Linux), атрибуты Unix в AD могут быть прочитаны, поэтому централизация и стандартизация нашего UID / GID в среде? Я бы хотел, чтобы эта среда была как можно более стабильной, и не думаю, что решение Samba / Winbind хорошо масштабируется, поэтому, если я могу сделать это строго, указав на AD как на сервер LDAP, это было бы идеально.

Любые предложения приветствуются и удерживают меня от дальнейшего выдергивания волос.

Во-первых, не забудьте установить компонент Windows «Управление идентификацией для UNIX» в разделе «Службы Active Directory» в окне «Добавление / удаление компонентов Windows».

Контроллер домена Active Directory предоставит вам 2 службы:

  1. Перечисление пользователей (UID / GID / Home Dir / и т. Д.) Через LDAP
  2. Аутентификация пользователя через Kerberos

На серверах CentOS вам нужно будет настроить перечисление пользователей LDAP через /etc/ldap.conf, ваша конфигурация Kerberos находится в /etc/krb5.conf, и для использования пользователей вам необходимо обновить /etc/nsswitch.conf.

Чтобы включить аутентификацию Kerberos, вам необходимо отредактировать файл /etc/pam.d/system-auth.

Несколько готтах:

  • Убедитесь, что ваше время синхронизируется из надежного источника на DC и клиентах.
  • Убедитесь, что у вас есть правильное разрешение и обратное разрешение
  • Руководства обязательно покажут вам, как выполнить привязку к DC с помощью пользователя / прохода, более безопасным способом будет использование билета Kerberos для проверки подлинности контроллера домена (для перечисления / проверки подлинности пользователей).
  • Скорее всего, это не сработает с первого раза, оставьте пользователя root в системе как можно дольше, чтобы можно было быстро исправить это без необходимости переходить в режим восстановления (после того, как вы заблокировали себя вне машины).

Быстрый поиск дал следующее руководство. После этого я бы попробовал привязку Kerberos к DC. Руководство предназначено для RHEL5, но все равно будет работать на CentOS5.

Если ваша единственная проблема с winbind - это несоответствие UID серверов, убедитесь, что winbind использует RID Active Directory для генерации своих UID, и они будут согласованными. Этот предыдущий вопрос должно быть достаточно подробностей, чтобы вы начали. Мне еще никогда не требовались какие-либо расширения Unix для AD, и связанный метод работает у меня на нескольких десятках отдельных серверов, каждый из которых монтирует один и тот же центральный общий ресурс NFS без несоответствий.