Различия

Показаны различия между двумя версиями страницы.


wiki:articles:samba4_ht [21/02/2014 16:52] (текущий) – создано - внешнее изменение 127.0.0.1
Строка 1: Строка 1:
 +Оригинал: [[http://wiki.samba.org/index.php/Samba_AD_DC_HOWTO | Samba AD DC HOWTO]] \\
 +Перевел: //Graf// \\
 +Дата перевода: //февраль 2014 г.//\\
 +
 +\\
 +
 +^   **Samba AD DC HOWTO**   ^
 +\\
 +
 +======  Введение ======
 +
 +Этот документ объясняет, как настроить простой Samba (4.0 +) сервер в качестве контроллера домена совместимого с Microsoft Active Directory, в основном, для использования клиентами Microsoft Windows, которые присоединены к домену Active Directory, для оказания таких услуг, как вход в домен. Если вкратце, то мы имеем в виду возможности AD DC.
 +
 +
 +При обновлении существующего AD DC, пожалуйста ознакомитесь с методом обновления вашего дистрибутива или обратитесь к HowTo - [[http://wiki.samba.org/index.php/Build_Samba#Upgrading_a_source_version | обновление исходной версии]].
 +
 +====== Версии ======
 +
 +Samba развивается очень быстро. Этот документ постоянно обновляется с учетом последних изменений. Пожалуйста, прочтите более подробные сведения о [[http://wiki.samba.org/index.php/Samba_Release_Planning | плановых релизах]] Samba 4.0 и старше.
 +
 +Пожалуйста, просмотрите заметки о выпуске той версии, которую вы установили. Они могут содержать важную информацию, еще не отраженную в этом документе.
 +
 +====== Установка Samba ======
 +
 +===== Различные способы установки =====
 +
 +У вас есть несколько вариантов установки Samba:
 +  *  [[http://wiki.samba.org/index.php/Build_Samba |соберите Samba]] самостоятельно.
 +  *  установите при помощи дистрибутивного менеджера пакетов.
 +  *  установите пакет с [[http://www.enterprisesamba.com/samba/| SerNet Enterprise Samba]].
 +
 +Рекомендации и зависимоси смотрите на [[http://wiki.samba.org/index.php/Samba_4/OS_Requirements | Samba 4/Требования к ОС]] 
 +
 +===== Пути =====
 +
 +Соблюдайте осторожность при работе с командами Samba, если у вас уже установлена её предыдущая версия. Чтобы избежать случайного запуска неподходящей версии, рассмотрите вопрос о помещении каталогов /usr/local/samba/bin/ и /usr/local/samba/sbin/ в начале переменной $PATH. 
 +
 +Вы можете узнать версию Samba, если таковая имеется в переменной PATH, запустив команду:
 +<code>
 +# samba -V
 +</code>
 +
 +===== Информация о сервере =====
 +
 +В остальных частях этого документа, мы будем использовать следующую конфигурацию/настройку нашего AD DC:
 +<code>
 +Каталог установки:      /usr/local/samba/
 +Имя Сервера:            DC1
 +Имя Домена в DNS:       samdom.example.com (Это также будет вашим realm)
 +Имя Домена NT4 :        samdom
 +IP адрес:               192.168.1.1
 +Роль сервера:           DC
 +</code>
 +
 +===== Подготовка Samba (настройка нового домена) =====
 +
 +Подготовка домена создает основную базу данных и используется при настройке Samba сервера в существующем домене. Если же вы хотите установить Samba сервер в качестве дополнительного контроллера домена в существующем домене, то просмотрите HowTo - [[http://wiki.samba.org/index.php/Samba4/HOWTO/Join_a_domain_as_a_DC | Присоединение к контроллеру домена Windows в качестве дополнительного контролера домена в домене.]] 
 +
 +Шаг подготовки домена должен быть запущен от имени пользователя с правами записи в каталог установки. В противном случае вы получаете ошибку о запрете доступа. 
 +
 +Для подготовки нового домена, выполните:
 +<code>
 +# /usr/local/samba/bin/samba-tool domain provision --use-rfc2307 --interactive
 +</code>
 +Это позволит запустить инструмент подготовки домена в интерактивном режиме. Из-за того, что некоторые параметры нельзя настроить интерактивно, рекомендуется запустить //samba-tool domain provision - -help// и посмотреть на дополнительные возможности.
 +
 +Опция //- -use-rfc2307// позволяет Samba AD автоматически сохранять атрибуты posix. Она также создает NIS информацию в AD, что позволяет администрировать UID/GID и другие установки Unix (на вкладке «Атрибуты Unix» в ADUC). Проще включить эту функцию во время подготовки, чем настраивать её потом вручную. И даже, если она вам не нужна (пока), её включение не влияет на установку.
 +
 +**Важные замечания по подготовке:**
 +    * Начиная с версии Samba 4.0.0 RC1, команда подготовки домена использует внутренний Samba DNS-сервер. Если вы хотите использовать [[http://wiki.samba.org/index.php/Dns-backend_bind | Bind как DNS сервер]], добавьте //- -dns-backend=BIND9_DLZ// к команде подготовки. Это решение не является окончательным. Вы можете [[http://wiki.samba.org/index.php/DNS#Changing_the_DNS_backend | переключать бэкэнд]] всегда, когда захотите.
 +    * Если вы повторно запустили подготовку, то нужно удалить файл /usr/local/samba/etc/smb.conf! Также, возможно, потребуется  удаление файлов базы данных, если они были созданы, используя команду //rm -rf /usr/local/samba/private/*//
 +    * Для пароля администратора необходимо выполнение требований сложности пароля. Это означает, что должны использоваться по крайней мере, одна заглавная буква, одна цифра и длина должна быть не менее восьми символов. Если вы не используете достаточно сложный пароль, то сценарий подготовки завершится с ошибкой и вам придётся начать с ввода лучшего пароля (удалив /usr/local/samba/private/ и /usr/local/samba/etc/).
 +    * Если ваш сайт example.com, то доменом вашей AD должен быть его поддомен, такой как samdom.example.com (или ad.example.com, corp.example.com). Избегайте внутреннего использования example.com.
 +
 +===== Classicupgrade (перенос домена в стиле Samba NT4 на AD) =====
 +Если вы планируете перенести существующий домен Samba NT4 на Samba AD прочтите [[http://wiki.samba.org/index.php/Samba4/samba-tool/domain/classicupgrade/HOWTO | Classicupgrade HowTo]].
 +
 +===== Запускаем Samba AD DC =====
 +<note tip>
 +**Если у вас запущены процессы //smbd//, //nmbd// или //winbindd// от предыдущей установки, то они должны быть остановлены до запуска вновь установленной samba!**
 +</note>
 +
 +Если вы планируете запускать Samba в качестве рабочего сервера, то просто запустите двоичный файл от пользователя root.
 +<code>
 +# /usr/local/samba/sbin/samba
 +</code>
 +В этом случае  Samba запустится в <<стандартном>> режиме, который подходит для использования в большинстве случаях. В Samba еще не включены init-сценарии для каждой платформы, но сделать это для вашей платформы не трудно. Есть несколько примеров скриптов на странице [[http://wiki.samba.org/index.php/Samba4/InitScript | Samba4 Init-Script]]
 +
 +Если вы работаете с Samba как разработчик, то нижеследующее может быть полезным: 
 +<code>
 +# /usr/local/samba/sbin/samba -i -M single
 +</code>
 +
 +Это приведет к запуску Samba с выводом сообщений журнала на стандартный вывод и ограничит её одним процессом. Такой режим работы делает отладку Samba с gdb проще. Для запуска Samba под gdb, выполните следующее:
 +<code>
 +# gdb --args /usr/local/samba/sbin/samba -i -M single
 +</code>
 +
 +===== Тестирование подключения к Samba AD DC =====
 +
 +Сначала проверьте свою версию smbclient, выполнив следующую команду:
 +<code>
 +$ /usr/local/samba/bin/smbclient --version
 +</code>
 +Что должно показать вам версию, начиная с <<Version 4.X>>.
 +
 +Теперь запустите команду, чтобы перечислить доступные ресурсы на вашем Samba сервере:
 +<code>
 +$ /usr/local/samba/bin/smbclient -L localhost -U%
 +
 +       Sharename       Type      Comment
 +       ---------       ----      -------
 +       netlogon        Disk
 +       sysvol          Disk
 +       IPC$            IPC       IPC Service (Samba 4.x.y)
 +</code>
 +
 +Вывод команды должен быть аналогичен тому, что показан. //netlogon// и //sysvol// являются основными ресурсами необходимыми для операций сервера Active Directory и создаются в smb.conf во время подготовки/обновления.
 +
 +Если команда не выполняется, перезапустите samba:
 +<code>
 +# killall samba
 +# /usr/local/samba/sbin/samba
 +</code>
 +
 +Для проверки работоспособности аутентификации, вы должны попытаться подключиться к ресурсу //netlogon// с помощью пароля администратора, который вы установили ранее. Вывод команды должен быть похож на тот, что показан ниже:
 +<code>
 +$ smbclient //localhost/netlogon -UAdministrator -c 'ls'
 +
 +Domain=[SAMDOM] OS=[Unix] Server=[Samba 4.x.y]
 +  .                                          0  Tue Dec 11 20:00:00 2012
 +  ..                                  D        0  Tue Dec 11 20:00:00 2012
 +</code>
 +
 +===== Настройка DNS =====
 +Настройка рабочего DNS имеет важное значение для правильной работы Samba и AD. Без правильных DNS-записей не будет работать Kerberos, а это означает, что и многие из основных функций также не будут работать. Стоит потратить немного времени на то, чтобы правильно настроить ваш DNS, чем потом заниматься отладкой проблем, вызванных неправильно настроенным DNS, которая может занять много времени. Для управлением DNS-записями на Windows, можно использовать DNS MMC или на Linux //samba-tool//. Для получения более подробной информации прочтите [[http://wiki.samba.org/index.php/DNS_Administration | Администрирование DNS]].
 +
 +
 +==== DNS Бэкэнды ====
 +
 +Для получения дополнительной информации о поддерживаемых DNS бэкэндах и получении помощи, которая лучше всего вам подойдет, перейдите на страницу [[http://wiki.samba.org/index.php/DNS#Which_DNS_backend_should_I_choose.3F | DNS]].
 +
 +=== Внутренний Samba DNS Сервер ===
 +
 +По умолчанию Samba использует внутренний DNS и дополнительная настройка не требуется.
 +Если вы хотите чтобы внутренний сервер DNS перенаправлял запросы и не нес ответственности за них, то просто добавьте следующую строку
 +<code>
 +dns forwarder = {IP-адрес DNS сервера которому вы хотите перенаправить запросы}
 +</code>
 +в ваш smb.conf и перезапустите Samba.
 +
 +Чтобы запустить внутренний DNS, порт 53 udp/tcp не должен использоваться другой программой (например, другим DNS сервером, Dnsmasq и т.д.). Если Samba не может связаться с портом 53, то вы увидите ошибки в лог-файле samba:
 +<code>
 +Failed to bind to 0.0.0.0:53 TCP - NT_STATUS_ADDRESS_ALREADY_ASSOCIATED
 +</code>
 +
 +Чтобы проверить, какая программа прослушивает порт 53, запустите от имени root:
 +<code>
 +# netstat -tunpe | grep ":53"
 +</code>
 +
 +Она должна возвращать только процессы samba, связанные с этим портом. \\
 +Более подробную информацию об устранении неполадок можно найти на странице [[http://wiki.samba.org/index.php/Samba_troubleshooting_temp | Samba и устранение неисправностей]].
 +
 +=== BIND как DNS-бэкэнд ===
 +
 +Если, во время подготовки, вы выбрали BIND9_DLZ, то для получения инструкций по установке, прочтите HowTo - [[http://wiki.samba.org/index.php/Dns-backend_bind | Bind как DNS бэкэнд]]. Там вы найдете много информации о том, как установить и настроить Bind в целом и как настроить его с Samba AD. Если вы подготовили DC с внутренним DNS, то можно [[http://wiki.samba.org/index.php/DNS#Changing_from_Internal_DNS_to_BIND | переключиться в BIND]] в любое время, при необходимости. 
 +
 +==== Настройка /etc/resolv.conf ====
 +
 +Для правильного разрешения всех локальных запросов DNS,  мы должны изменить файл ///etc/resolv.conf//. Следующего примера должно быть достаточно для обработки DNS запросов должным образом (не забудьте поменять имя домена и IP-адрес на свой):
 +<code>
 +domain samdom.example.com
 +nameserver 192.168.1.1
 +</code>
 +
 +<note tip>
 +Если ваш сервер настроен на получение своей IP конфигурации с помощью DHCP, то файл ///etc/resolv.conf// может автоматически обновляться. Обратитесь к документации вашего дистрибутива для остановки/изменения такого поведения. Кстати, DHCP на контроллере домена не рекомендуется.
 +</note>
 +
 +==== Тестирование DNS ====
 +
 +Чтобы проверить работоспособность DNS, выполните следующие команды и сравните результат с тем, что тут показано:
 +<code>
 +$ host -t SRV _ldap._tcp.samdom.example.com.
 +_ldap._tcp.samdom.example.com has SRV record 0 100 389 samba.samdom.example.com.
 +</code>
 +<code>
 +$ host -t SRV _kerberos._udp.samdom.example.com.
 +_kerberos._udp.samdom.example.com has SRV record 0 100 88 samba.samdom.example.com.
 +</code>
 +<code>
 +$ host -t A samba.samdom.example.com.
 +samba.samdom.example.com has address 192.168.1.1
 +</code>
 +Все полученные ответы должны быть похожи на вышеуказанные (с учетом вашего IP, имени домена и имени хоста). Если вы получаете ошибки, то внимательно проверьте системные журналы, чтобы найти проблему.
 +
 +===== Настройка Kerberos =====
 +
 +Настройка Kerberos осуществляется в файле //krb5.conf//. Этот файл, как правило, расположен в каталоге ///etc//, пожалуйста, обратитесь к документации  дистрибутива для выяснения местоположения этого файла в вашей системе. Замените существующий файл,  образцом созданным во время подготовки домена в ///usr/local/samba/share/setup/krb5.conf//. По умолчанию он содержит следующие строки:
 +<code>
 +[libdefaults]
 +        default_realm = ${REALM}
 +        dns_lookup_realm = false
 +        dns_lookup_kdc = true
 +</code>
 +<note tip>
 +Если вы забыли свой realm, запустите
 +<code>
 +samba-tool testparm --suppress-prompt | grep realm
 +</code>
 + чтобы найти его.
 +</note>
 +
 +==== Тестирование Kerberos ==== 
 +
 +Самый простой тест, это использование команды //kinit// следующим образом:
 +<code>
 +$ kinit administrator@SAMDOM.EXAMPLE.COM 
 +Password:
 +</code> 
 +
 +<note tip> 
 +Вы должны указать realm домена **заглавными буквами**! 
 +</note> 
 +<note tip>
 +В зависимости от вашего дистрибутива, //kinit// может просто вернуть вас обратно в командную строку, однако, некоторые дистрибутивы могут вернуть что-то вроде предупреждения: //ваш пароль истекает через Х дней ...//
 +</note>
 +Чтобы убедиться, что Kerberos работает и вы получили билет, выполните следующую команду: 
 +<code>
 +$ klist
 +Ticket cache: FILE:/tmp/krb5cc_1000
 +Default principal: administrator@SAMDOM.EXAMPLE.COM
 + 
 +Valid starting     Expires            Service principal
 +02/10/13 19:39:48  02/11/13 19:39:46  krbtgt/SAMDOM.EXAMPLE.COM@SAMDOM.EXAMPLE.COM
 +</code>
 +
 +Если //kinit// или //klist// не существуют в вашей системе, обратитесь к [[http://wiki.samba.org/index.php/Samba_4_OS_Requirements | Samba4-Требования к ОС (En)]] или [[http://smb-conf.ru/samba-4-trebovaniya-k-operacionnoj-sisteme.html | Samba4-Требования к ОС (Rus)]] для прочтения того, как установить необходимые пакеты. 
 +
 +Вы также можете проверить Kerberos на удаленном клиенте, но сначала вы должны настроить //krb5.conf// и //resolve.conf// клиента так, как было показано выше. 
 +<note tip> 
 +Если клиент расположен за NAT, то вы должны добавить следующее в //krb5.conf// на контроллере домена:\\ 
 +<code> 
 +[kdc] 
 +       check-ticket-addresses = false 
 +</code> 
 +</note> 
 +<note tip> 
 +Если вы забыли или не сохранили пароль который был сгенерирован во время подготовки домена, то как root вы можете использовать <<//samba-tool user setpassword administrator//>> для его сброса. 
 +</note> 
 +
 +===== Настройка NTP (необязательно, но настоятельно рекомендуется) =====
 +
 +Active Directory требует синхронизации точного времени между клиентами и контролером(ами) домена(ов). Настоятельно рекомендуется запустить NTP или любую другую форму синхронизации. На странице [[http://wiki.samba.org/index.php/Configure_NTP | настройки NTP]] показывается полный процесс настройки NTP, включая политику SELinux.
 +
 +====== Дополнительная информация ======
 +
 +Samba Wiki предоставляет много полезной дополнительной документации для администрирования вашего DC (резервное копирование и восстановление [[http://wiki.samba.org/index.php/Backup_and_Recovery| (EN)]] [[http://wiki.slackware.su/wiki:articles:samba4_br | (RU)]] , [[http://wiki.samba.org/index.php/Setup_and_configure_file_shares | установка и настройка совместного доступа к файлам]] и т.д.), для ежедневной работы ([[http://wiki.samba.org/index.php/Configuring_a_windows_client_for_AD| настройка клиента windows в AD]], [[http://wiki.samba.org/index.php/Samba_AD_management_from_windows|управление Samba AD из windows]], и т.д.) или [[http://wiki.samba.org/index.php/Authenticating_other_services_against_AD|проверка подлинности с помощью AD другими службами]].
 +
 +Некоторые мысли о SELinux и разрешениях управления доступом, которые могут помешать войти пользователям AD, находятся на странице [[http://wiki.samba.org/index.php/Samba_AD_DC_access_control_settings|параметры управления доступом в Samba AD DC]].
 +
 +Обратитесь к странице [[http://wiki.samba.org/index.php/Samba|документации пользователя Samba Wiki]] за дополнительными HOWTO, руководствами и информацией.
 +
 +====== Сообщите о ваших  успехах/неудачах! ======
 + 
 +Samba, как модель контроллера домена, по-прежнему быстро развивается. Мы хотели бы услышать от пользователей о своих успехах и неудачах. Мы рекомендуем Вам сообщать о ваших успехах и неудачах на  [[mailto:samba-technical@lists.samba.org | samba-technical]] или список рассылки на [[http://lists.samba.org]].
  
Навигация
Печать/экспорт
QR Code
QR Code wiki:articles:samba4_ht (generated for current page)