3.16.4 Настройка доверительных отношений Samba и MS Active Directory
Исходные данные
Настройка сервера Samba
Настройка DNS на сервере Windows
Настройка доверительных отношений
Окружение
- Версия РЕД ОС: 7.3.1
- Конфигурация: Сервер графический
- Версия Samba: 4.15.9-2h
- Версия Windows Server: 2012 R2
Исходные данные
Для примера создания доверительных отношений будут использоваться следующие данные:
Сервер Samba - dcsamba.smbwoland.red, IP - 10.81.1.199
Сервер MS AD – dc.mswoland.red, IP - 10.81.1.210
Предполагается, что сервер Samba был настроен по инструкции «Установка сервера Samba DC».
Настройка сервера Samba
В сетевых настройках сервера Samba требуется указать DNS адрес контроллера домена MS AD и поисковый домен MS AD. После применения настроек в файле /etc/resolv.conf должны содержаться следующее записи:
cat /etc/resolv.conf # Generated by NetworkManager search smbwoland.red mswoland.red nameserver 10.81.1.199 nameserver 10.81.1.210
Пример настройки DNS:
Далее потребуется изменить файл конфигурации:
nano /etc/samba/smb.conf
В строке dns forwarder
пропишите IP-адрес MS AD:
dns forwarder = 10.81.1.210
Если доверительные отношения создаются с доменом .local, то в файле /etc/nsswitch.conf приведите строку, которая начинается на hosts, к виду:
hosts: files dns resolve [!UNAVAIL=return] myhostname mdns4_minimal
Затем отредактируйте файл /etc/krb5.conf:
nano /etc/krb5.conf
Добавив строки в [realms], где нужно описать kerberos область Windows домена:
MSWOLAND.RED= { kdc = dc.mswoland.red kdc = dc2.mswoland.red admin_server = dc.mswoland.red }Если имеется резервный контроллер домена, то его также следует добавить. В примере это
kdc = dc2.mswoland.red.
Пример вывода:
cat /etc/krb5.conf:
[libdefaults]
default_realm = SMBWOLAND.RED
dns_lookup_realm = false
dns_lookup_kdc = true
ticket_lifetime = 24h
forwardable = yes
[realms]
SMBWOLAND.RED = {
default_domain = smbwoland.red
}
MSWOLAND.RED = {
kdc = dc.mswoland.red
kdc = dc2.mswoland.red
admin_server = dc.mswoland.red
}
[domain_realm]
dcsamba = SMBWOLAND.RED
Проверьте разрешения SRV-записей командой:
host -t srv _kerberos._tcp.mswoland.red
_kerberos._tcp.mswoland.red has SRV record 0 100 88 dc.mswoland.red.
Запросите тикет Kerberos:
kinit admin@MSWOLAND.RED
Проверьте, что тикет успешно получен:
klist Ticket cache: FILE:/tmp/krb5cc_0 Default principal: admin@MSWOLAND.RED Valid starting Expires Service principal 25.07.2022 15:19:37 26.07.2022 01:19:37 krbtgt/MSWOLAND.RED@MSWOLAND.RED renew until 26.07.2022 15:19:34
Настройка DNS на сервере Windows
Создайте сервер условной пересылки, для этого откройте Диспетчер DNS и перейдите на вкладку «Серверы условной пересылки».
В контекстном меню выберите «Создать сервер условной пересылки».
Впишите DNS домен сервера SAMBA и его IP-адрес. Выберите «Все DNS серверы в этом лесу» и нажмите ОК.
Также необходимо добавить глобальный «Сервер пересылки» в свойствах DNS сервера Windows.
Для этого в диспетчере DNS нажмите правой кнопкой мыши на сервере DNS (SERV) и в выпадающем меню выберите «Свойства», перейдите на вкладку «Сервер пересылки», нажмите на кнопку «Изменить» и в открывшемся окне введите IP-адрес сервера SAMBA.
Перейдите в свойства DNS сервера MS AD.
Чтобы убедиться, что сервер AD может корректно видеть Samba, проверьте, правильно ли разрешены записи SRV.
C:\> nslookup.exe > set type=srv > _ldap._tcp.mswoland.red > _kerberos._tcp.mswoland.red > exit
Настройка двухсторонних транзитивных доверительных отношений
Добавьте доверительные отношения командой:
samba-tool domain trust create mswoland.red --type=forest --direction=both --create-location=both -U admin@mswoland.red LocalDomain Netbios[SMBWOLAND] DNS[smbwoland.red] SID[S-1-5-21-3278458734-1377290257-482432228] RemoteDC Netbios[DC] DNS[dc.mswoland.red] ServerType[PDC, GC, LDAP, DS, KDC, TIMESERV, CLOSEST, WRITABLE, GOOD_TIMESERV, FULL_SECRET_DOMAIN_6, SERVICE, DS_8, __unknown_00008000__]
При появлении запроса введите пароль администратора. Если все настроено верно, будет установлено доверие к домену AD.
Password for [Admin@mswoland.red]: RemoteDomain Netbios[MSWOLAND] DNS[mswoland.red] SID[S-1-5-21-2219352354-104895378-3667193527] Creating remote TDO. Remote TDO created. Setting supported encryption types on remote TDO. Creating local TDO. Local TDO created Setting supported encryption types on local TDO. Validating outgoing trust… OK: LocalValidation: DC[\\dc.mswoland.red] CONNECTION[WERR_OK] TRUST[WEER_OK] VERIFY_STATUS_RETURNED Validating incoming trust… OK: RemoteValidation: DC[\\dcsamba.smbwoland.red] CONNECTION[WERR_OK] TRUST[WEER_OK] VERIFY_STATUS_RETURNED Success.
Проверить установленные доверительные отношения можно командой:
samba-tool domain trust show mswoland.red LocalDomain Netbios[SMBWOLAND] DNS[smbwoland.red] SID[S-1-5-21-3278458734-1377290257-482432228] TrustedDomain: NetbiosName: MSWOLAND DnsName: mswoland.red SID: S-1-5-21-3278458734-1377290257-482432228 Type: 0x2 (UPLEVEL) Direction: 0x3 (BOTH) Attributes: 0x4 (QUARANTINED_DOMAIN) PosixOffset: 0x00000000 (0) kerb_EncTypes: 0x18 (AES128_CTS_HMAC_SHA1_96, AES256_CTS_HMAC_SHA1_96)
Если между samba и windows установлены двухсторонние доверительные отношения с типом связи Лес, то рабочую станцию с РЕД ОС нужно вводить в домен samba через winbind.
Для ввода компьютера в домен Samba используйте следующую команду, которая введет ПК в домен через windind:
join-to-domain.sh -d <ваш_домен_samba> -n <имя_пк> -u <имя_администратора_samba> -y -w
Если планируется создать односторонние доверительные отношения между Samba и Windows, то для этого на сервере Samba используется команда:
samba-tool domain trust create mswoland.red -U admin@mswoland.redПри такой связи устанавливаются не транзитивные доверительные отношения (External Trust) между двумя доменами Samba и Windows из разных лесов.
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.