URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID14
Нить номер: 1867
[ Назад ]

Исходное сообщение
"Не работает ввод машин в домен"

Отправлено maxxim , 31-Авг-08 02:40 
Имеется локальная сеть на N компьютеров, которые по tcp/ip прекрасно видят друг друга. Поднят samba-сервер 3.0.31 (без ldap, без kerberos) на ALT Linux 4.0 Office Server, в котором создан первичный контроллер домена с несколькими группами и пользователями. Локально аутентификация и просмотр шар работают.

Проблемы начинаются, когда я пытаюсь ввести машину с Windows XP (пробовал штук 7, но все XP) в домен:

DNS успешно запросила запись ресурса размещения службы (SRV), используемой для выяснения размещения контроллера домена для домена "my.domain":

Опрос проводился для SRV-записи для _ldap._tcp.dc._msdcs.my.domain
Этим запросом были идентифицированы следующие контроллеры домена:
dc.my.domain
К возможным причинам этой ошибки относятся:
1. Записи узлов (A), которые сопоставляют имя контроллера домена его IP-адресам утеряны или содержат неправильные адреса.
2. Котроллеры доменов, зарегистрированные в DNS не подключены к сети или не запущены.
Для получения подробной информации щелкните кнопку "Справка".

В BIND9 прописана SRV-запись для _ldap._tcp.dc._msdcs.my.domain, которая указывает на порт 139:
_ldap._tcp      SRV 0 0 139 my.domain.

Когда начинаю вводить машину в домен, то пакеты по сети идут не на 139 порт, а на 137:

[root@altlinux samba]# /usr/sbin/tcpdump -n port 137
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
02:32:22.828036 IP 192.168.100.13.netbios-ns > 192.168.100.10.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; UNICAST
02:32:22.829196 IP 192.168.100.10.netbios-ns > 192.168.100.13.netbios-ns: NBT UDP PACKET(137): QUERY; NEGATIVE; RESPONSE; UNICAST
02:32:22.859046 IP 192.168.100.13.netbios-ns > 192.168.100.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
02:32:23.608954 IP 192.168.100.13.netbios-ns > 192.168.100.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
02:32:24.358967 IP 192.168.100.13.netbios-ns > 192.168.100.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST

Samba по умолчанию открывает 139 порт:

[root@altlinux samba]# netstat -aln | grep LISTEN | grep -v STREAM
tcp        0      0 0.0.0.0:139                 0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:8080                0.0.0.0:*                   LISTEN      
tcp        0      0 192.168.100.11:53           0.0.0.0:*                   LISTEN      
tcp        0      0 192.168.100.10:53           0.0.0.0:*                   LISTEN      
tcp        0      0 127.0.0.1:53                0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      
tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:25                  0.0.0.0:*                   LISTEN      
tcp        0      0 127.0.0.1:953               0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:445                 0.0.0.0:*                   LISTEN  

Заставить её открыть 137 порт без директивы "smb ports" в /etc/samba/smb.conf не получается. А если применить директиву, то абсолютно тоже самое - нет ответа.

Следующая команда показывает, что сервер с samba (\\NSERVER) является DMB.
[root@altlinux samba]# findsmb

                                *=DMB
                                +=LMB
IP ADDR         NETBIOS NAME     WORKGROUP/OS/VERSION
---------------------------------------------------------------------
192.168.100.10  NSERVER       *[MY.DOMAIN] [Unix] [Samba 3.0.31]
192.168.100.13  FSERVER       +[WORKGROUP] [Windows Server 2003 R2 3790 Service Pack 1] [Windows Server 2003 R2 5.2]

Соответственно созрел список вопросов:
1. Перерыл кучу материала, но не где не описывается решение данной проблемы. Собственно, такое ощущение, что у всех samba встаёт на ура и клиенты сразу видят PDC.
2. Фаерволл не блокирует пакеты (выключать тоже пробовал, то же самое)

[root@altlinux samba]# nmap 192.168.100.10  
Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2008-08-31 02:46 MSD
Interesting ports on nserver (192.168.100.10):
Not shown: 1672 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
25/tcp   open  smtp
53/tcp   open  domain
111/tcp  open  rpcbind
139/tcp  open  netbios-ssn
445/tcp  open  microsoft-ds
901/tcp  open  samba-swat
8080/tcp open  http-proxy

3. Обнаружилось, что nmblookup не работает. Похоже, та же самая проблема, что и WinXP.

[root@altlinux samba]# nmblookup //nserver
added interface ip=192.168.100.10 bcast=192.168.100.255 nmask=255.255.255.0
added interface ip=192.168.100.11 bcast=192.168.100.255 nmask=255.255.255.0
Socket opened.
querying //nserver on 192.168.100.255
querying //nserver on 192.168.100.255
name_query failed to find name //nserver

tcpdump показал:
03:03:06.844347 IP 192.168.100.10.1030 > 192.168.100.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
03:03:07.131164 IP 192.168.100.10.1030 > 192.168.100.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
03:03:07.407160 IP 192.168.100.10.1030 > 192.168.100.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
03:03:07.683279 IP 192.168.100.10.1030 > 192.168.100.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
03:03:07.959208 IP 192.168.100.10.1030 > 192.168.100.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
03:03:08.235204 IP 192.168.100.10.1030 > 192.168.100.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST

Помогите, пожалуйста! :)


Содержание

Сообщения в этом обсуждении
"Не работает ввод машин в домен"
Отправлено maxxim , 31-Авг-08 10:13 
Накопал следующее (samba также висит на 139):

Если на windows машине выполнить команду "ping \\nserver", то в логах будет выведено:

[root@altlinux samba]# tail -f -n 0 log.nmbd
[2008/08/31 09:48:18, 3] nmbd/nmbd_winsserver.c:wins_process_name_query_request(1892)
  wins_process_name_query: name query for name \\NSERVER<00> from IP 192.168.100.13
[2008/08/31 09:48:18, 3] nmbd/nmbd_winsserver.c:wins_process_name_query_request(1927)
  wins_process_name_query: name query for name \\NSERVER<00> returning DNS fail.
[2008/08/31 09:48:18, 3] nmbd/nmbd_incomingrequests.c:process_name_query_request(454)
  process_name_query_request: Name query from 192.168.100.13 on subnet 192.168.100.10 for name \\NSERVER<00>
[2008/08/31 09:48:18, 3] nmbd/nmbd_incomingrequests.c:process_name_query_request(454)
  process_name_query_request: Name query from 192.168.100.13 on subnet 192.168.100.10 for name \\NSERVER<00>
[2008/08/31 09:48:18, 3] nmbd/nmbd_incomingrequests.c:process_name_query_request(454)
  process_name_query_request: Name query from 192.168.100.13 on subnet 192.168.100.10 for name \\NSERVER<00>
[2008/08/31 09:48:18, 3] nmbd/nmbd_incomingrequests.c:process_name_query_request(454)
  process_name_query_request: Name query from 192.168.100.13 on subnet 192.168.100.10 for name \\NSERVER<00>
[2008/08/31 09:48:19, 3] nmbd/nmbd_incomingrequests.c:process_name_query_request(454)
  process_name_query_request: Name query from 192.168.100.13 on subnet 192.168.100.10 for name \\NSERVER<00>
[2008/08/31 09:48:19, 3] nmbd/nmbd_incomingrequests.c:process_name_query_request(454)
  process_name_query_request: Name query from 192.168.100.13 on subnet 192.168.100.10 for name \\NSERVER<00>

Теперь если в windows убрать DNS (например, некорректно), а оставить WINS, то имена он начинает брать из SAMBA:

[2008/08/31 09:58:21, 3] nmbd/nmbd_winsserver.c:wins_process_name_query_request(1892)
  wins_process_name_query: name query for name NSERVER<00> from IP 192.168.100.13
[2008/08/31 09:58:21, 3] nmbd/nmbd_winsserver.c:wins_process_name_query_request(1944)
  wins_process_name_query: name query for name NSERVER<00> returning first IP 192.168.100.10.

Но DNS требуется для подключения компьютера в домен. Отсюда новые вопросы:

1. В логах появляются имена с суффиксом <ЧИСЛО>. Что это за числа?
2. Пока машины не в домене использовать запись вида \\машина - бессмыслено?
3. Как сделать, чтобы пока нет домена имена распозновались по WINS, а потом уже по DNS?

Ответ на последний вопрос можно сформулировать так:
Можно назвать машины по разному в домене и samba. В доменах использовать полные доменные имена, а в samba короткие, тогда пересечений быть не должно. Кто что думает?


"Не работает ввод машин в домен"
Отправлено maxxim , 31-Авг-08 19:26 
Оказалось, что всё в порядке с именами.

Когда в консоле набираем 'ping nserver', windows пытается самостоятельно отыскать соответствующий ip-адрес. Для этого используется DNS.
Когда в консоле набираем 'ping \\nserver' - используется NetBIOS.
Если в !проводнике! открыть \\nserver, то будет доступ к ресурсам PDC.

Но появилась новая проблема. При вводе машины WinXP в домен появляется окошечко ввода. После ввода корректного имени появлеяется ошибка: "не найдено имя пользователя" (англ. "The user name could not be found"). В качестве имени использовался root от samba и администратор домена (соответствующие права выставлены). При некорректном вводе выводится другая ошибка, которая сообщает что пара логин и пароль неверна.

Что делать? Как обойти ошибку :)

p.s. В некоторых рекомендациях можно встретить такое (https://www.opennet.ru/openforum/vsluhforumID14/1428.html):
> Бюджет для машины в лдапе создаёться, но там не хватает  objectClass sambaSamAccount
> и SambaSID. когда я их в ручную добавляю, то всё ок, компик в домене региться

Но у меня нет LDAP!


"Не работает ввод машин в домен"
Отправлено maxxim , 31-Авг-08 19:44 
В общем всё решилось очень просто.

Я пытался одновременно изменить имя машины и домен. Такого в Windows сделать нельзя. Пришлось сперва изменить имя (+ перезагрузка), а затем последовал ввод в домен.

Тему можно закрывать. Всем спасибо :)