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

Почему Samba4 не работает с NT_STATUS_INTERNAL_ERROR в Ubuntu 18.04

У меня проблемы с настройкой Samba в качестве AD DC. В настоящее время у меня есть 1 ящик Ubuntu, который я хотел бы использовать для обмена файлами с другими компьютерами в моей домашней сети. В настоящее время та же машина, серверы которой, как DC, также будут обслуживать файлы.

Это домашняя установка, что означает, что я использую маршрутизатор потребительского уровня.

Чтобы начать каждую итерацию моих попыток заставить его работать, я выполняю рекомендуемые шаги, чтобы убить любые процессы самбы и т.д. и удалить файлы, обсуждаемые в Подготовка к установке из руководства по установке https://wiki.samba.org/index.php/Setting_up_Samba_as_an_Active_Directory_Domain_Controller

$ ps ax | egrep "samba|smbd|nmbd|winbindd"

Затем я убиваю все процессы, как описано.

Проверяю, установлена ​​ли самба

$ which samba
/usr/sbin/samba
$ samba --version
Version 4.7.6-Ubuntu

В инструкции также читайте

Убедитесь, что файл / etc / hosts на контроллере домена правильно разрешает полное доменное имя (FQDN) и короткое имя хоста в IP-адрес контроллера домена в локальной сети. Например:

Точное содержание

127.0.0.1       localhost localhost.localdomain
192.168.1.1     DC1.samdom.example.com DC1


# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Обратите внимание, что IP-адрес Ubuntu в локальной сети 192.168.1.20 192.168.1.1 IP-адрес локальной сети, найденный на моем маршрутизаторе на вкладке LAN и в поле IP-адреса. Примечание. На моем маршрутизаторе не включен DDNS.

$ sudo samba-tool domain provision --use-rfc2307 --interactive
Realm: SAMDOM.EXAMPLE.COM
 Domain [SAMDOM]: SAMDOM
 Server Role (dc, member, standalone) [dc]: dc
 DNS backend (SAMBA_INTERNAL, BIND9_FLATFILE, BIND9_DLZ, NONE) [SAMBA_INTERNAL]: SAMBA_INTERNAL
 DNS forwarder IP address (write 'none' to disable forwarding) [192.168.1.1]: 8.8.8.8
Administrator password:
Retype password:
Looking up IPv4 addresses
Looking up IPv6 addresses
No IPv6 address will be assigned
Setting up share.ldb
Setting up secrets.ldb
Setting up the registry
Setting up the privileges database
Setting up idmap db
Setting up SAM db
Setting up sam.ldb partitions and settings
Setting up sam.ldb rootDSE
Pre-loading the Samba 4 and AD schema
Adding DomainDN: DC=samdom,DC=example,DC=com
Adding configuration container
Setting up sam.ldb schema
Setting up sam.ldb configuration data
Setting up display specifiers
Modifying display specifiers
Adding users container
Modifying users container
Adding computers container
Modifying computers container
Setting up sam.ldb data
Setting up well known security principals
Setting up sam.ldb users and groups
Setting up self join
Adding DNS accounts
Creating CN=MicrosoftDNS,CN=System,DC=samdom,DC=example,DC=com
Creating DomainDnsZones and ForestDnsZones partitions
Populating DomainDnsZones and ForestDnsZones partitions
Setting up sam.ldb rootDSE marking as synchronized
Fixing provision GUIDs
A Kerberos configuration suitable for Samba AD has been generated at /var/lib/samba/private/krb5.conf
Setting up fake yp server settings
Once the above files are installed, your Samba AD server will be ready to use
Server Role:           active directory domain controller
Hostname:              zoo-vault
NetBIOS Domain:        SAMDOM
DNS Domain:            samdom.example.com
DOMAIN SID:            …

Отлично, пока все хорошо. Я копирую krb5.conf файл, как предлагается в /etc/krb5.conf.

Я пропускаю Настройка серверной части AD DNS как я использую SAMBA_INTERNAL

Мой /etc/resolv.conf выглядит как

# Generated by NetworkManager
search samdom.example.com
nameserver 192.168.1.1

Я скучаю Создайте обратную зону а затем скопируйте файл kerberos, как предлагается.

Здесь все идет не так. Я начал самбу с sudo samba, процессы выглядят так, как будто они запущены, но ни одна из следующих команд проверки, приведенных в документации, не работает.

$ smbclient //localhost/netlogon -UAdministrator -c 'ls'
Enter SAMDOM\Administrator's password:
session setup failed: NT_STATUS_INTERNAL_ERROR
$ host -t SRV _ldap._tcp.samdom.example.com.
Host _ldap._tcp.samdom.example.com. not found: 3(NXDOMAIN)
$ host -t SRV _kerberos._udp.samdom.example.com.
Host _kerberos._udp.samdom.example.com. not found: 3(NXDOMAIN)
$ host -t A dc1.samdom.example.com.
Host dc1.samdom.example.com. not found: 3(NXDOMAIN)

Я здесь немного растерялся.

Несколько замечаний. Статический IP-адрес моей машины ubuntu в моей локальной сети НЕ 192.168.1.1 (IP, который я использовал в шагах настройки выше). Это 192.168.1.20. Я тоже пытался использовать этот IP, но безуспешно.

Я также пробовал использовать none, 192.168.1.1 и 8.8.8.8 как DNS forwarder IP address во время настройки безрезультатно.

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

В конце концов, я хотел бы настроить Samba для работы как

  1. Убедитесь, что все зависимости, перечисленные для вашей ОС на веб-сайте samba, правильно установлены.
  2. Убедитесь, что IP-адрес, используемый в /etc/hosts принадлежит самой машине, а не маршрутизатору или другому оборудованию.
  3. Используйте тот же IP-адрес в /etc/resolv.conf также.
  4. В /etc/hosts имя машины в примере - DC1. Это имя должно совпадать с именем машины, чтобы последние команды работали. Если имя вашей машины DC1 все готово, иначе заменить DC1 с названием вашей машины.
  5. Чтобы обеспечить непрерывный доступ в Интернет после запуска Samba, используйте IP-адрес DNS, к которому у вас есть доступ, когда вам будет предложено ввести IP-адрес DNS-сервера пересылки. Для этого может потребоваться использовать IP-адрес вашего маршрутизатора в локальной сети.

Я установил Samba на Debian 9 только с

apt install samba

и получил такую ​​же неудачу. Пришлось добавить winbind (и smbclient)

apt install winbind  

установить winbind

sudo apt install winbind

это решит проблему для меня