SambaADclient — различия между версиями
(Новая страница: «{{Samba}}») |
|||
Строка 1: | Строка 1: | ||
+ | =Настройка Samba в качестве в члена домена= | ||
+ | ==Вступление== | ||
+ | Член домена Samba - это компьютер Linux, подключенный к домену, на котором работает Samba, и не предоставляет доменные службы, такие как контроллер основного домена NT4 (PDC) или контроллер домена Active Directory (AD) (DC). | ||
+ | |||
+ | В качестве участника домена Samba вы можете: | ||
+ | *Использовать пользователей и группы домена в локальных списках ACL для файлов и каталогов. | ||
+ | *Настроить общие ресурсы для работы в качестве файлового сервера. | ||
+ | *Настроить службы печати в качестве сервера печати. | ||
+ | *Настроить PAM, чтобы разрешить пользователям домена входить в систему локально или проходить проверку подлинности на локально установленных службах. | ||
+ | |||
+ | ==Подготовка к установке== | ||
+ | |||
+ | ===Общая подготовка=== | ||
+ | *Убедитесь, что ни один процесс Samba не запущен: | ||
+ | # ps ax | egrep "samba|smbd|nmbd|winbindd" | ||
+ | Если в выводе консоли будут следующие процессы: samba, smbd, nmbd или winbindd, завершите их. | ||
+ | *Если вы ранее настраивали Samba на этом компьютере: | ||
+ | **Сделайте резервную копию существующего файла smb.conf. Чтобы узнать путь до файла, введите: | ||
+ | # smbd -b | grep "CONFIGFILE" | ||
+ | CONFIGFILE: /usr/local/samba/etc/samba/smb.conf | ||
+ | *Удалите все файлы базы данных Samba (файлы *.tdb и *.ldb). Для просмотра списка папок, содержащих базы данных Samba введите: | ||
+ | # smbd -b | egrep "LOCKDIR|STATEDIR|CACHEDIR|PRIVATE_DIR" | ||
+ | LOCKDIR: /usr/local/samba/var/lock/ | ||
+ | STATEDIR: /usr/local/samba/var/locks/ | ||
+ | CACHEDIR: /usr/local/samba/var/cache/ | ||
+ | PRIVATE_DIR: /usr/local/samba/private/ | ||
+ | Начиная с чистой среды, вы можете избежать путаницы, и никакие файлы из предыдущей установки Samba не будут смешаны с установкой нового члена домена. | ||
+ | |||
+ | ===Подготовка компьютера к присоединению к домену AD=== | ||
+ | |||
+ | ====Настройка DNS==== | ||
+ | Active Directory (AD) использует DNS в фоновом режиме, чтобы найти другие контроллеры домена и службы, такие как Kerberos. Таким образом, члены и серверы домена AD должны иметь возможность разрешать зоны AD DNS. | ||
+ | |||
+ | Далее описано, как вручную настроить клиенты Linux для использования DNS-серверов. Если вы используете DHCP-сервер, предоставляющий настройки DNS для ваших клиентских компьютеров, настройте ваш DHCP-сервер на отправку IP-адресов ваших DNS-серверов. | ||
+ | |||
+ | =====Настройка /etc/resolv.conf===== | ||
+ | Установите IP-адрес DNS-сервера и DNS-домена AD в файле /etc/resolv.conf. Например: | ||
+ | |||
+ | nameserver 10.99.0.1 | ||
+ | search samdom.example.com | ||
+ | |||
+ | Некоторые утилиты, такие как NetworkManager, могут перезаписывать изменения, внесенные вручную, в этом файле. Обратитесь к документации вашего дистрибутива за информацией о том, как постоянно настраивать разрешение имен. | ||
+ | |||
+ | ====Тестирование разрешения DNS==== | ||
+ | Чтобы убедиться, что ваши настройки DNS верны и ваш клиент или сервер может разрешить IP-адреса и имена хостов, используйте команду nslookup. Команда доступна и в Linux и в Windows. | ||
+ | |||
+ | =====Прямой поиск===== | ||
+ | Чтобы определить имя хоста по его IP-адресу: | ||
+ | |||
+ | # nslookup DC1.samdom.example.com | ||
+ | Server: 10.99.0.1 | ||
+ | Address: 10.99.0.1#53 | ||
+ | |||
+ | Name: DC1.samdom.example.com | ||
+ | Address: 10.99.0.1 | ||
+ | |||
+ | =====Обратный поиск===== | ||
+ | Чтобы преобразовать IP-адрес в имя хоста: | ||
+ | |||
+ | # nslookup 10.99.0.1 | ||
+ | Server: 10.99.0.1 | ||
+ | Address: 10.99.0.1#53 | ||
+ | |||
+ | 1.0.99.10.in-addr.arpa name = DC1.samdom.example.com. | ||
+ | |||
+ | Обратите внимание, что в Samba AD обратная зона не настраивается автоматически. Чтобы настроить обратную зону, см. [[Администрирование DNS]]. | ||
+ | |||
+ | ====Разрешение записей SRV==== | ||
+ | Active Directory (AD) использует записи SRV для поиска служб, таких как Kerberos и LDAP. Чтобы убедиться, что записи SRV разрешены правильно, используйте интерактивную оболочку nslookup: | ||
+ | |||
+ | # nslookup | ||
+ | Default Server: 10.99.0.1 | ||
+ | Address: 10.99.0.1 | ||
+ | |||
+ | > set type=SRV | ||
+ | > _ldap._tcp.samdom.example.com. | ||
+ | Server: UnKnown | ||
+ | Address: 10.99.0.1 | ||
+ | |||
+ | _ldap._tcp.samdom.example.com SRV service location: | ||
+ | priority = 0 | ||
+ | weight = 100 | ||
+ | port = 389 | ||
+ | svr hostname = dc1.samdom.example.com | ||
+ | samdom.example.com nameserver = dc1.samdom.example.com | ||
+ | dc1.samdom.example.com internet address = 10.99.0.1 | ||
+ | |||
+ | ====Настройка Kerberos==== | ||
+ | Samba поддерживает бэк-энды Heimdal и MIT Kerberos. Чтобы настроить Kerberos для члена домена, добавьте в свой файл '''/etc/krb5.conf''' следующее: | ||
+ | |||
+ | [libdefaults] | ||
+ | default_realm = SAMDOM.EXAMPLE.COM | ||
+ | dns_lookup_realm = false | ||
+ | dns_lookup_kdc = true | ||
+ | |||
+ | Предыдущий пример настраивает Kerberos для области SAMDOM.EXAMPLE.COM. | ||
+ | |||
+ | Команды Samba рекомендует не устанавливать никаких дополнительных параметров в файле /etc/krb5.conf. | ||
+ | |||
+ | Если ваш файл /etc/krb5.conf содержит строку include, то она не будет работать, вы должны ее удалить. | ||
+ | |||
+ | ====Настройка синхронизации времени==== | ||
+ | <...> | ||
+ | |||
+ | ====Разрешение имени локального хоста==== | ||
+ | Когда вы присоединяете хост к домену, Samba пытается зарегистрировать имя хоста в зоне AD DNS. Для этого утилита '''net''' должна иметь возможность разрешать имя хоста, используя DNS или используя правильную запись в файле '''/etc/hosts'''. | ||
+ | |||
+ | Чтобы убедиться, что ваше имя хоста разрешается правильно, используйте команду '''getent hosts'''. Например: | ||
+ | |||
+ | # getent hosts M1 | ||
+ | 10.99.0.5 M1.samdom.example.com M1 | ||
+ | |||
+ | Имя хоста и полное доменное имя не должны преобразовываться в IP-адрес 127.0.0.1 или любой другой IP-адрес, отличный от того, который используется в LAN-интерфейсе члена домена. | ||
+ | |||
+ | Если выходные данные не отображаются или хост разрешен с неверным IP-адресом и вы не используете dhcp, установите правильную запись в файле '''/etc/hosts'''. Например: | ||
+ | |||
+ | 127.0.0.1 localhost | ||
+ | 10.99.0.5 M1.samdom.example.com M1 | ||
+ | Если вы используете dhcp, убедитесь, что '''/etc/hosts''' содержит только строку «127.0.0.1», показанную выше. Если проблемы не устранены, обратитесь к системному администратору, который контролирует ваш DHCP-сервер. | ||
+ | |||
+ | В системах, основанных на Debian, вы также в /etc/hosts увидите строку 127.0.1.1 hostname. Удалите ее перед установкой samba. | ||
+ | |||
+ | Если вам нужно добавить псевдонимы к имени хоста, добавьте их в конец строки, начинающейся с ipaddress машин, а не со строки 127.0.0.1. | ||
+ | |||
+ | ===Подготовка компьютера к присоединению к домену NT4=== | ||
+ | Для присоединения компьютера к домену NT4 подготовка не требуется. | ||
+ | ==Установка Samba== | ||
+ | |||
{{Samba}} | {{Samba}} |
Версия 21:23, 9 апреля 2020
Содержание
[убрать]Настройка Samba в качестве в члена домена
Вступление
Член домена Samba - это компьютер Linux, подключенный к домену, на котором работает Samba, и не предоставляет доменные службы, такие как контроллер основного домена NT4 (PDC) или контроллер домена Active Directory (AD) (DC).
В качестве участника домена Samba вы можете:
- Использовать пользователей и группы домена в локальных списках ACL для файлов и каталогов.
- Настроить общие ресурсы для работы в качестве файлового сервера.
- Настроить службы печати в качестве сервера печати.
- Настроить PAM, чтобы разрешить пользователям домена входить в систему локально или проходить проверку подлинности на локально установленных службах.
Подготовка к установке
Общая подготовка
- Убедитесь, что ни один процесс Samba не запущен:
# ps ax | egrep "samba|smbd|nmbd|winbindd"
Если в выводе консоли будут следующие процессы: samba, smbd, nmbd или winbindd, завершите их.
- Если вы ранее настраивали Samba на этом компьютере:
- Сделайте резервную копию существующего файла smb.conf. Чтобы узнать путь до файла, введите:
# smbd -b | grep "CONFIGFILE" CONFIGFILE: /usr/local/samba/etc/samba/smb.conf
- Удалите все файлы базы данных Samba (файлы *.tdb и *.ldb). Для просмотра списка папок, содержащих базы данных Samba введите:
# smbd -b | egrep "LOCKDIR|STATEDIR|CACHEDIR|PRIVATE_DIR" LOCKDIR: /usr/local/samba/var/lock/ STATEDIR: /usr/local/samba/var/locks/ CACHEDIR: /usr/local/samba/var/cache/ PRIVATE_DIR: /usr/local/samba/private/
Начиная с чистой среды, вы можете избежать путаницы, и никакие файлы из предыдущей установки Samba не будут смешаны с установкой нового члена домена.
Подготовка компьютера к присоединению к домену AD
Настройка DNS
Active Directory (AD) использует DNS в фоновом режиме, чтобы найти другие контроллеры домена и службы, такие как Kerberos. Таким образом, члены и серверы домена AD должны иметь возможность разрешать зоны AD DNS.
Далее описано, как вручную настроить клиенты Linux для использования DNS-серверов. Если вы используете DHCP-сервер, предоставляющий настройки DNS для ваших клиентских компьютеров, настройте ваш DHCP-сервер на отправку IP-адресов ваших DNS-серверов.
Настройка /etc/resolv.conf
Установите IP-адрес DNS-сервера и DNS-домена AD в файле /etc/resolv.conf. Например:
nameserver 10.99.0.1 search samdom.example.com
Некоторые утилиты, такие как NetworkManager, могут перезаписывать изменения, внесенные вручную, в этом файле. Обратитесь к документации вашего дистрибутива за информацией о том, как постоянно настраивать разрешение имен.
Тестирование разрешения DNS
Чтобы убедиться, что ваши настройки DNS верны и ваш клиент или сервер может разрешить IP-адреса и имена хостов, используйте команду nslookup. Команда доступна и в Linux и в Windows.
Прямой поиск
Чтобы определить имя хоста по его IP-адресу:
# nslookup DC1.samdom.example.com Server: 10.99.0.1 Address: 10.99.0.1#53 Name: DC1.samdom.example.com Address: 10.99.0.1
Обратный поиск
Чтобы преобразовать IP-адрес в имя хоста:
# nslookup 10.99.0.1 Server: 10.99.0.1 Address: 10.99.0.1#53 1.0.99.10.in-addr.arpa name = DC1.samdom.example.com.
Обратите внимание, что в Samba AD обратная зона не настраивается автоматически. Чтобы настроить обратную зону, см. Администрирование DNS.
Разрешение записей SRV
Active Directory (AD) использует записи SRV для поиска служб, таких как Kerberos и LDAP. Чтобы убедиться, что записи SRV разрешены правильно, используйте интерактивную оболочку nslookup:
# nslookup Default Server: 10.99.0.1 Address: 10.99.0.1 > set type=SRV > _ldap._tcp.samdom.example.com. Server: UnKnown Address: 10.99.0.1 _ldap._tcp.samdom.example.com SRV service location: priority = 0 weight = 100 port = 389 svr hostname = dc1.samdom.example.com samdom.example.com nameserver = dc1.samdom.example.com dc1.samdom.example.com internet address = 10.99.0.1
Настройка Kerberos
Samba поддерживает бэк-энды Heimdal и MIT Kerberos. Чтобы настроить Kerberos для члена домена, добавьте в свой файл /etc/krb5.conf следующее:
[libdefaults] default_realm = SAMDOM.EXAMPLE.COM dns_lookup_realm = false dns_lookup_kdc = true
Предыдущий пример настраивает Kerberos для области SAMDOM.EXAMPLE.COM.
Команды Samba рекомендует не устанавливать никаких дополнительных параметров в файле /etc/krb5.conf.
Если ваш файл /etc/krb5.conf содержит строку include, то она не будет работать, вы должны ее удалить.
Настройка синхронизации времени
<...>
Разрешение имени локального хоста
Когда вы присоединяете хост к домену, Samba пытается зарегистрировать имя хоста в зоне AD DNS. Для этого утилита net должна иметь возможность разрешать имя хоста, используя DNS или используя правильную запись в файле /etc/hosts.
Чтобы убедиться, что ваше имя хоста разрешается правильно, используйте команду getent hosts. Например:
# getent hosts M1 10.99.0.5 M1.samdom.example.com M1
Имя хоста и полное доменное имя не должны преобразовываться в IP-адрес 127.0.0.1 или любой другой IP-адрес, отличный от того, который используется в LAN-интерфейсе члена домена.
Если выходные данные не отображаются или хост разрешен с неверным IP-адресом и вы не используете dhcp, установите правильную запись в файле /etc/hosts. Например:
127.0.0.1 localhost 10.99.0.5 M1.samdom.example.com M1
Если вы используете dhcp, убедитесь, что /etc/hosts содержит только строку «127.0.0.1», показанную выше. Если проблемы не устранены, обратитесь к системному администратору, который контролирует ваш DHCP-сервер.
В системах, основанных на Debian, вы также в /etc/hosts увидите строку 127.0.1.1 hostname. Удалите ее перед установкой samba.
Если вам нужно добавить псевдонимы к имени хоста, добавьте их в конец строки, начинающейся с ipaddress машин, а не со строки 127.0.0.1.
Подготовка компьютера к присоединению к домену NT4
Для присоединения компьютера к домену NT4 подготовка не требуется.
Установка Samba
Samba | |||
---|---|---|---|
Файловое хранилище | Samba как файловый сервер • Подключение общей папки • Samba как файловый сервер в домене | ||
Служба каталогов | |||
Сервер | Samba как служба каталогов (AD) • Изменение IP-адреса AD • Репликация сервера AD • Резервное копирование и восстановление • Управление пользователями • Групповые политики • Групповая политика паролей | ||
Клиент | Подключение клиента AD • Устранение неполадок участников домена Samba | ||
Бэкэнды идентификаторов winbind | idmap config tdb • idmap config ad • idmap config rid • idmap config autorid | ||
Прочее | Samba как сервер печати • Проверка конфигурационного файла • Утилиты командной строки • LMHOSTS • Уровень логов • Каталоги Samba • Настройка DNS | ||
Разное | Настройка Samba для привязки к определенным интерфейсам • Тестирование динамических обновлений DNS • Samba Перенастройка бэкенда BIND9 DLZ • Конфигурация DNS для Linux и Unix | ||
Информация | SSSD vs Winbind • Установка Samba |