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

Исходное сообщение
"Samba в составе домена WinNT"

Отправлено graffiti , 17-Дек-03 08:59 
Помогите, пожалуйста, решить проблему с настройкой Samba в составе домена WinNT.
Имеем:
    Компьютер HP NetServer E 40 (все родное, сет. карта 3com 100Mb) - далее "LIN"
    OS - RedHat9 - все программы "в состоянии поставки", ничего не пересобиралось и не перекомпилировалось.
    
    Сеть -   домен WinNT,
                PDC - WinNT 4 Server (лицензия) - IBM e-server xSeries 220
                BDC - WinNT 4 Server - noname (P-III, 256Mb)
                все сетевое оборудование - 3сом, сеть TP, 5 cat.
                компьютер с Linux физически подсоединен к тому-же свичу, что и PDC и BDC (3com Switch 4400, работает в режиме хаба), никакая аппаратная либо програмная фильтрация пакетов в данный момент не применяется.
Клиенты (~50 рабочих станций Win9x-WinXP) нормально регистрируются в домене (пароли и имена только латинскими символами, без пробелов и пр.), вся сеть нормально пингуется и присутствует в сетевом окружении. В общем, виндовая часть сети настроена и работает без видимых глюков.

Проблема - никак не удается настроить Samba на компьютере LIN так, чтобы она брала пароли и учетные записи пользователей с PDC.

Сама Samba как клиент к домену подключается, расшаренные win ресурсы видит. Свои ресурсы тоже шарит, но только пользователям, которые прописаны в ее файлах паролей/пользователей (когда прописано security = server или user, когда security = domain - то либо всем на чтение - либо никому). А с PDC пароли брать отказывается. В сетевом окружении машина с Samba видна, расшаренные папки на ней присутствуют, но когда из винды пытаешься войти в расшаренную папку просит ввести пароль, потом ругается, что пароль неправильный. Интересно, что машина с самбой видна в NTишном Srvmgr. на ней видны все шары и можно даже пермишены поменять, правда эти изменения в самбовском конфиге не отражаются (где сохраняются - неизвестно) и при повторном просмотре пермишенов в Srvmgr ругается на неизвестные имена пользователей, хотя установки запоминает.
Попытайтесь, plz, помочь с решением данной проблемы - чтение документации, форумы и пр. результата не дали... Во всяком случае я не нашел никого, кто НА САМОМ ДЕЛЕ бы заставил самбу работать в составе домена WinNT, в смысле, чтобы она права доступа с PDC-WinNT получала... Все ЗНАЮТ, как это сделать, но реально никто не пробовал...

Вот запуск Samba
[root@Lin root]# service smb start
Запускаются сервисы SMB:                                   [  ОК  ]
Запускаются сервисы NMB:                                   [  ОК  ]
[root@Lin root]# smbpasswd -j ASU -r nasos -U Administrator
Password:
Joined domain ASU.
[root@Lin root]#

Вот последний на сегодня smb.conf

[global]
    workgroup = ASU
    server string = Samba %v
    security = domain
    password server = *
    netbios name = File_Server
    allow trusted domains = yes
    nt acl support = yes
    encrypt passwords = yes
    local master = no
    domain master = no
    os level = 33
    guest account = nobody
    map to guest = bad user
    client code page = 866
    character set = KOI8-R
    admin log = No
    log level = 4
    syslog = 1
    syslog only = No
    log file = /root/samba.log
    max log size = 5000
[pub]
valid users = root
printable = no
writable = no
path = /shared
write list = root
read list = root

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

А вот что оказывается после этого в samba.log

[2003/12/16 15:06:44, 3] smbd/process.c:process_smb(878)
  Transaction 118 of length 85
[2003/12/16 15:06:44, 3] smbd/process.c:switch_message(685)
  switch message SMBtrans2 (pid 1690)
[2003/12/16 15:06:44, 4] smbd/uid.c:change_to_user(119)
  change_to_user: Skipping user change - already user
[2003/12/16 15:06:44, 3] smbd/trans2.c:call_trans2findfirst(898)
  call_trans2findfirst: dirtype = 22, maxentries = 6, close_after_first=0, close_if_end = 0 requires_resume_key = 0 level = 260, max_data_bytes = 2432
[2003/12/16 15:06:44, 3] lib/util.c:unix_clean_name(387)
  unix_clean_name [/*]
[2003/12/16 15:06:44, 3] lib/util.c:unix_clean_name(387)
  unix_clean_name [*]
[2003/12/16 15:06:44, 3] lib/util.c:unix_clean_name(387)
  unix_clean_name [./]
[2003/12/16 15:06:44, 3] smbd/dir.c:dptr_create(488)
  creating new dirptr 256 for path ./, expect_close = 1
[2003/12/16 15:06:44, 4] smbd/trans2.c:call_trans2findfirst(981)
  dptr_num is 256, wcard = *, attr = 22
[2003/12/16 15:06:44, 4] smbd/trans2.c:call_trans2findfirst(1063)
  SMBtrans2 mask=* directory=./ dirtype=22 numentries=6
[2003/12/16 15:06:44, 3] smbd/process.c:process_smb(878)
  Transaction 119 of length 41
[2003/12/16 15:06:44, 3] smbd/process.c:switch_message(685)
  switch message SMBgetatr (pid 1690)
[2003/12/16 15:06:44, 4] smbd/uid.c:change_to_user(119)
  change_to_user: Skipping user change - already user
[2003/12/16 15:06:44, 3] smbd/reply.c:reply_getatr(1235)
  getatr name= mode=18 size=0
[2003/12/16 15:06:44, 3] smbd/process.c:process_smb(878)
  Transaction 120 of length 89
[2003/12/16 15:06:44, 3] smbd/process.c:switch_message(685)
  switch message SMBtrans2 (pid 1690)
[2003/12/16 15:06:44, 4] smbd/uid.c:change_to_user(119)
  change_to_user: Skipping user change - already user
[2003/12/16 15:06:44, 3] smbd/trans2.c:call_trans2findnext(1134)
  call_trans2findnext: dirhandle = 256, max_data_bytes = 2432, maxentries = 6, close_after_request=0, close_if_end = 0 requires_resume_key = 0 resume_key = 0 resume name = shared continue=0 level = 260
[2003/12/16 15:06:44, 3] smbd/dir.c:dptr_fetch_lanman2(547)
  fetching dirptr 256 for path ./
[2003/12/16 15:06:44, 3] smbd/trans2.c:call_trans2findnext(1185)
  dptr_num is 256, mask = *, attr = 16, dirptr=(0x823C2C8,6)
[2003/12/16 15:06:44, 3] smbd/trans2.c:call_trans2findnext(1328)
  SMBtrans2 mask=* directory=./ dirtype=22 numentries=6
[2003/12/16 15:06:44, 3] smbd/process.c:process_smb(878)
  Transaction 121 of length 87
[2003/12/16 15:06:44, 3] smbd/process.c:switch_message(685)
  switch message SMBtrans2 (pid 1690)
[2003/12/16 15:06:44, 4] smbd/uid.c:change_to_user(119)
  change_to_user: Skipping user change - already user
[2003/12/16 15:06:44, 3] smbd/trans2.c:call_trans2findnext(1134)
  call_trans2findnext: dirhandle = 256, max_data_bytes = 2432, maxentries = 6, close_after_request=0, close_if_end = 0 requires_resume_key = 0 resume_key = 0 resume name = boot continue=0 level = 260
[2003/12/16 15:06:44, 3] smbd/dir.c:dptr_fetch_lanman2(547)
  fetching dirptr 256 for path ./
[2003/12/16 15:06:44, 3] smbd/trans2.c:call_trans2findnext(1185)
  dptr_num is 256, mask = *, attr = 16, dirptr=(0x823C2C8,12)
[2003/12/16 15:06:44, 3] smbd/trans2.c:call_trans2findnext(1328)
  SMBtrans2 mask=* directory=./ dirtype=22 numentries=6
[2003/12/16 15:06:44, 3] smbd/process.c:process_smb(878)
  Transaction 122 of length 86
[2003/12/16 15:06:44, 3] smbd/process.c:switch_message(685)
  switch message SMBtrans2 (pid 1690)
[2003/12/16 15:06:44, 4] smbd/uid.c:change_to_user(119)
  change_to_user: Skipping user change - already user
[2003/12/16 15:06:44, 3] smbd/trans2.c:call_trans2findnext(1134)
  call_trans2findnext: dirhandle = 256, max_data_bytes = 2432, maxentries = 6, close_after_request=0, close_if_end = 0 requires_resume_key = 0 resume_key = 0 resume name = opt continue=0 level = 260
[2003/12/16 15:06:44, 3] smbd/dir.c:dptr_fetch_lanman2(547)
  fetching dirptr 256 for path ./
[2003/12/16 15:06:44, 3] smbd/trans2.c:call_trans2findnext(1185)
  dptr_num is 256, mask = *, attr = 16, dirptr=(0x823C2C8,18)
[2003/12/16 15:06:44, 3] smbd/trans2.c:call_trans2findnext(1328)
  SMBtrans2 mask=* directory=./ dirtype=22 numentries=4
[2003/12/16 15:06:44, 3] smbd/process.c:process_smb(878)
  Transaction 123 of length 92
[2003/12/16 15:06:44, 3] smbd/process.c:switch_message(685)
  switch message SMBtrans2 (pid 1690)
[2003/12/16 15:06:44, 4] smbd/uid.c:change_to_user(119)
  change_to_user: Skipping user change - already user
[2003/12/16 15:06:44, 3] smbd/trans2.c:call_trans2findnext(1134)
  call_trans2findnext: dirhandle = 256, max_data_bytes = 2432, maxentries = 6, close_after_request=0, close_if_end = 0 requires_resume_key = 0 resume_key = 0 resume name = .autofsck continue=0 level = 260
[2003/12/16 15:06:44, 3] smbd/dir.c:dptr_fetch_lanman2(547)
  fetching dirptr 256 for path ./
[2003/12/16 15:06:44, 3] smbd/trans2.c:call_trans2findnext(1185)
  dptr_num is 256, mask = *, attr = 16, dirptr=(0x823C2C8,22)
[2003/12/16 15:06:44, 3] smbd/trans2.c:call_trans2findnext(1328)
  SMBtrans2 mask=* directory=./ dirtype=22 numentries=0
[2003/12/16 15:06:44, 3] smbd/process.c:process_smb(878)
  Transaction 124 of length 41
[2003/12/16 15:06:44, 3] smbd/process.c:switch_message(685)
  switch message SMBfindclose (pid 1690)
[2003/12/16 15:06:44, 4] smbd/uid.c:change_to_user(119)
  change_to_user: Skipping user change - already user
[2003/12/16 15:06:44, 3] smbd/trans2.c:reply_findclose(3135)
  reply_findclose, dptr_num = 256
[2003/12/16 15:06:44, 4] smbd/dir.c:dptr_close_internal(225)
  closing dptr key 256
[2003/12/16 15:06:44, 3] smbd/trans2.c:reply_findclose(3141)
  SMBfindclose dptr_num = -3
[2003/12/16 15:06:44, 3] smbd/process.c:process_smb(878)
  Transaction 125 of length 76
[2003/12/16 15:06:44, 3] smbd/process.c:switch_message(685)
  switch message SMBtrans2 (pid 1690)
[2003/12/16 15:06:44, 4] smbd/uid.c:change_to_user(119)
  change_to_user: Skipping user change - already user
[2003/12/16 15:06:44, 3] smbd/trans2.c:call_trans2qfsinfo(1354)
  call_trans2qfsinfo: level = 258
[2003/12/16 15:06:44, 4] smbd/trans2.c:call_trans2qfsinfo(1566)
  SMBtrans2 info_level = 258
[2003/12/16 15:06:44, 3] smbd/process.c:process_smb(878)
  Transaction 126 of length 41
[2003/12/16 15:06:44, 3] smbd/process.c:switch_message(685)
  switch message SMBgetatr (pid 1690)
[2003/12/16 15:06:44, 4] smbd/uid.c:change_to_user(119)
  change_to_user: Skipping user change - already user
[2003/12/16 15:06:44, 3] smbd/reply.c:reply_getatr(1235)
  getatr name= mode=18 size=0
[2003/12/16 15:06:44, 3] smbd/process.c:process_smb(878)
  Transaction 127 of length 39
[2003/12/16 15:06:44, 3] smbd/process.c:switch_message(685)
  switch message SMBdskattr (pid 1690)
[2003/12/16 15:06:44, 4] smbd/uid.c:change_to_user(119)
  change_to_user: Skipping user change - already user
[2003/12/16 15:06:44, 3] smbd/reply.c:reply_dskattr(1329)
  dskattr dfree=8665

А вот что на это говорит log на PDC

The session setup from the computer FILE_SERVER failed because there is no trust account in the security database for this computer. The name of the account referenced in the security database is FILE_SERVER$.

Помогите разобраться, пожалуйста.


Содержание

Сообщения в этом обсуждении
"Samba в составе домена WinNT"
Отправлено Liquid , 17-Дек-03 11:32 
>А вот что на это говорит log на PDC
>
>The session setup from the computer FILE_SERVER failed because there is no
>trust account in the security database for this computer. The name
>of the account referenced in the security database is FILE_SERVER$.
>
>Помогите разобраться, пожалуйста.


Ну он как бы ругается что имя машины не введено в домен... пока машина не введена в домен - то твой PDC не даст ей доступа.

Может я и ошибаюсь...


"Samba в составе домена WinNT"
Отправлено graffiti , 17-Дек-03 14:22 
я же говорю что машина с самбой видна в NTишном Srvmgr как член домена. (см выше)
к тому же:
[root@Lin root]# smbpasswd -j ASU -r nasos -U Administrator
Password:
Joined domain ASU.
[root@Lin root]#


"Samba в составе домена WinNT"
Отправлено Liquid , 17-Дек-03 15:56 
>я же говорю что машина с самбой видна в NTишном Srvmgr как
>член домена. (см выше)
>к тому же:
>[root@Lin root]# smbpasswd -j ASU -r nasos -U Administrator
>Password:
>Joined domain ASU.
>[root@Lin root]#

а что ж тогда твой пдц ругаица в логе что нетбиосовое имя линуховой машины не находится в базе пермишнов????

The session setup from the computer FILE_SERVER failed because there is no trust account in the security database for this computer. The name of the account referenced in the security database is FILE_SERVER$.

я честно говоря незнаю как делается введение машины в пдц под виндой, но вот если в роли пдц выступает самба, то для ыиндовой машины надо сначала создать аккаунт на линуховом сервере с логином netbios_mashin_name$... и только при присутствии этого аккаунта машина может быть введена в домен самбы и ей будет присвоен SID...


"Samba в составе домена WinNT"
Отправлено graffiti , 17-Дек-03 14:24 
Пытался прикрутить для решения проблемы Winbind - не помогло....
Если использую Winbind аутентификацию, то имею следущее:
[root@Lin samba]# smbpasswd -j ASU -r nasos -U setup_user
Password:
Joined domain ASU.
[root@Lin samba]# wbinfo -t
Secret is good
[root@Lin samba]# wbinfo -a setup_user%********
plaintext password authentication failed
error code was NT_STATUS_INVALID_PARAMETER (0xc000000d)
Could not authenticate user setup_user2083208 with plaintext password

Но wbinfo -u и -g пользователей и группы показывает...



"Samba в составе домена WinNT"
Отправлено Liquid , 17-Дек-03 16:30 
>Пытался прикрутить для решения проблемы Winbind - не помогло....
>Если использую Winbind аутентификацию, то имею следущее:
>[root@Lin samba]# smbpasswd -j ASU -r nasos -U setup_user
>Password:
>Joined domain ASU.
>[root@Lin samba]# wbinfo -t
>Secret is good
>[root@Lin samba]# wbinfo -a setup_user%********
>plaintext password authentication failed
>error code was NT_STATUS_INVALID_PARAMETER (0xc000000d)
>Could not authenticate user setup_user2083208 with plaintext password
>
>Но wbinfo -u и -g пользователей и группы показывает...

судя по написанному то действиетльно все входит ништяк....

выложи конфиг pam.d для самбы, nsswitch.conf


"Samba в составе домена WinNT"
Отправлено graffiti , 17-Дек-03 17:02 
#%PAM-1.0
auth       required     pam_nologin.so
auth       required     pam_stack.so service=system-auth
account    required     pam_stack.so service=system-auth
session    required     pam_stack.so service=system-auth
password   required     pam_stack.so service=system-auth

nsswitch.conf

passwd:     files
shadow:     files
group:      files
hosts:      files dns
bootparams: nisplus [NOTFOUND=return] files
ethers:     files
netmasks:   files
networks:   files
protocols:  files
rpc:        files
services:   files
netgroup:   files
publickey:  nisplus
automount:  files
aliases:    files nisplus


"Samba в составе домена WinNT"
Отправлено Liquid , 17-Дек-03 17:41 
>#%PAM-1.0
>auth       required    
>pam_nologin.so
>auth       required    
>pam_stack.so service=system-auth
>account    required     pam_stack.so service=system-auth
>session    required     pam_stack.so service=system-auth
>password   required     pam_stack.so service=system-auth
>
>nsswitch.conf
>
>passwd:     files
>shadow:     files
>group:      files
>hosts:      files dns
>bootparams: nisplus [NOTFOUND=return] files
>ethers:     files
>netmasks:   files
>networks:   files
>protocols:  files
>rpc:        files
>services:   files
>netgroup:   files
>publickey:  nisplus
>automount:  files
>aliases:    files nisplus


ясно! у тебя тут еще не отконфигурено....

что использовать буш winbind или pam_smb?


"Samba в составе домена WinNT"
Отправлено graffiti , 17-Дек-03 17:57 
pam_smb для начала



"Samba в составе домена WinNT"
Отправлено Liquid , 17-Дек-03 18:08 
>>#%PAM-1.0
>>auth       required    
>>pam_nologin.so
>>auth       required    
>>pam_stack.so service=system-auth
>>account    required     pam_stack.so service=system-auth
>>session    required     pam_stack.so service=system-auth
>>password   required     pam_stack.so service=system-auth
>>
>>nsswitch.conf
>>
>>passwd:     files
>>shadow:     files
>>group:      files
>>hosts:      files dns
>>bootparams: nisplus [NOTFOUND=return] files
>>ethers:     files
>>netmasks:   files
>>networks:   files
>>protocols:  files
>>rpc:        files
>>services:   files
>>netgroup:   files
>>publickey:  nisplus
>>automount:  files
>>aliases:    files nisplus
>
>
>
>
>ясно! у тебя тут еще не отконфигурено....
>
>что использовать буш winbind или pam_smb?

смотри свое мыло...


"Samba в составе домена WinNT"
Отправлено graffiti , 18-Дек-03 12:22 
Привел /etc/pam.d/samba к такому виду:

auth       required     pam_securetty.so
auth       required     pam_smb_auth.so
auth       required     pam_nologin.so
account    required     pam_pwdb.so
password   required     pam_pwdb.so shadow nullok use_authtok
session    required     pam_mkhomedir.so skel=/etc/skel/ umask=0077
session    required     security/pam_pwdb.so
session    optional     security/pam_console.so

Результат нулевой. При попыпке подключения к ресурсу из винды просит ввести пароль, потом ругается, что пароль неверный...


"Samba в составе домена WinNT"
Отправлено Mikhail , 25-Дек-03 14:43 
А samba собрана с параметрами '--with-winbind --with-winbind-auth-challenge'?  

$cat /etc/nsswitch.conf|grep bind
passwd:     files winbind
group:      files winbind

$smbd -V
Version ALT/2.2.8

$cat /etc/samba/smb.conf
...
password server = PDC BDC #это важно, при указании одного - может не работать
...
winbind use default domain = True
...                                
winbind enum users = yes        
winbind enum groups = yes        
...
wins server = ip.ad.dr.ess
...

Вот с такими параметрами у меня работает (http://www.opennet.me/openforum/vsluhforumID1/38740.html)


"Samba в составе домена WinNT"
Отправлено Andrew , 17-Дек-03 11:57 
Предварительно:
[pub]
valid users = root
printable = no
writable = no
path = /shared
write list = root
read list = root

Это есть не очень правильно. Если у тебя политика безопасности линукса определена таким образом, что запрещает удаленное подключение рута, то работать не будет. Поэтому заведи пользователя обычного под это дело. В доке посмотри определение прав доступа на эту папку. Предлагаю, для начала упростить:
[pub]
path = /shared
readonly = no

найдешь баг с юзерами, тогда можешь с правами морочьится.


"Samba в составе домена WinNT"
Отправлено graffiti , 17-Дек-03 14:30 
В таком виде
[pub]
path = /shared
readonly = no
работает, я же писал (см. выше)
И root, кстати удаленно логинится - так и работаю, через SSh со своей виндовой машины.

"Samba в составе домена WinNT"
Отправлено graffiti , 17-Дек-03 14:44 
Кстати (а может и нет) пару слов про поддержку пользователей.
Пытался попросить помощи на support@asplinux.ru - я типа там зарегистрированный пользователь, дистрибутив их купил и все такое...
вот чего ответили (орфография сохранена):

"Для решения подобных вопросов вы можете воспользоваться помощью
пользователей в бесплатном листе рассылки:
http://www.asplinux.ru/ru/support/maillist.shtml
А так же можно поискать решение на http://opennet.ru, http://google.com
Это обусловленно правилами оказания поддержки пользователей
дистрибутива, где указано, что базовая поддержка от support@asplinux.ru
оказывается в установке и первоночальной настроеке системы."

Вот такой вот ненавязчивый совковый сервис... Похоже господа из службы поддержки ASP считают "настроенной системой" голое стартующее ядро, а пакеты, включенные в их дистрибутив и которые тоже требуют установки и настройки их не колышат... Получается служба поддержки программы установки дистрибутива ASP. Кстати, когда брал их дистрибутив (так просто для коллекции) то нормальные блины оказались только в пятой коробке. Первые четыре коробки - на втором диске брак - капя пластика на диске, диск не читается