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

Исходное сообщение
"ошибка Ввод самбы в домен"

Отправлено Zar , 17-Фев-05 05:43 
Приветствую!
Народ помогите мне с одной траблой.... тут выходит следующие пытаюсь затащить Linux Mandrake10.0  в доменную аунтификацию win2k при попытке

net join -U zar

выдаеться ошибка Кербероса но это нестрашно он мне не нужен... дальше выдаеться следующая строчка

libads/kerberos.c:ads_kinit_password(133)
kerberos_kinit_password Zar@terminal.zar failed: KDC has no support for encryption type

unable a find a suitable server

unable a find a suitable server

(два раза)
что это значит?
вот конфиг самыбы:

#smb.conf
[global]
log file = /var/log/samba/log.%m #обязательно ведем логи....без них я бы никогда ничего не настроил :)
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 #Опции TCP и буферизации
null passwords = yes #Разрешить пустые пароли
encrypt passwords = yes #Шифровать пароли
hosts allow = 192.168.0. 127. #Разрешенные хостыподсети
interfaces = 192.168.0.10/24 #Привязываем самбу к своему интерфейсу(можно указать несколько)
winbind use default domain = yes #Говорим winbind использовать домен по умолчанию
winbind uid = 10000-20000 #Выделяем диапазон UIDов для winbind
case sensitive = no #Отключаем зависимость от регистра имен файлов
dns proxy = no # Не проксировать DNS
netbios name = linux #Имя машины(которое будет с "СЕТЕВОМ ОКРУЖЕНИИ")
server string = My Workstation #Описание машины(необязательно)
password server = terminal #Названия первичного и вторичного контроллера домена (соответствие указывается в файле /etc/samba/lmhosts
dos charset = 866 #Кодовая страница
winbind gid = 10000-20000 #Выделяем диапазон GIDов для winbind
local master = no #Не помню что это значит...по моему это даже не нужно...
workgroup = Terminal.zar #Имя домена
security = domain #Тип безопасности: домен
unix charset = KOI8-R #Кодовая страница nix
max log size = 50 #Максимальный размер лога
auth methods = winbind #Метод аутентификации: winbind
winbind separator = \ #Разделитель ДОМЕН\Пользователь(Группа)


идет настройка через samba и winbind
Если есть более стоющее предложение как можно это реализовать то я с удовольстивем выслушаю. Т.к. пытасю ввести в домен месяц. и ницига неполучастся...


Содержание

Сообщения в этом обсуждении
"ошибка Ввод самбы в домен"
Отправлено 4tune , 17-Фев-05 16:31 
>Приветствую!
>Народ помогите мне с одной траблой.... тут выходит следующие пытаюсь затащить Linux
>Mandrake10.0  в доменную аунтификацию win2k при попытке
>
>net join -U zar
>
>выдаеться ошибка Кербероса но это нестрашно он мне не нужен... дальше выдаеться
>следующая строчка
>
>libads/kerberos.c:ads_kinit_password(133)
>kerberos_kinit_password Zar@terminal.zar failed: KDC has no support for encryption type
>
>unable a find a suitable server
>
>unable a find a suitable server
>
>(два раза)
>что это значит?
>вот конфиг самыбы:
>
>#smb.conf
>[global]
>log file = /var/log/samba/log.%m #обязательно ведем логи....без них я бы никогда ничего
>не настроил :)
>socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 #Опции TCP и буферизации
>null passwords = yes #Разрешить пустые пароли
>encrypt passwords = yes #Шифровать пароли
>hosts allow = 192.168.0. 127. #Разрешенные хостыподсети
>interfaces = 192.168.0.10/24 #Привязываем самбу к своему интерфейсу(можно указать несколько)
>winbind use default domain = yes #Говорим winbind использовать домен по умолчанию
>
>winbind uid = 10000-20000 #Выделяем диапазон UIDов для winbind
>case sensitive = no #Отключаем зависимость от регистра имен файлов
>dns proxy = no # Не проксировать DNS
>netbios name = linux #Имя машины(которое будет с "СЕТЕВОМ ОКРУЖЕНИИ")
>server string = My Workstation #Описание машины(необязательно)
>password server = terminal #Названия первичного и вторичного контроллера домена (соответствие указывается
>в файле /etc/samba/lmhosts
>dos charset = 866 #Кодовая страница
>winbind gid = 10000-20000 #Выделяем диапазон GIDов для winbind
>local master = no #Не помню что это значит...по моему это даже
>не нужно...
>workgroup = Terminal.zar #Имя домена
>security = domain #Тип безопасности: домен
>unix charset = KOI8-R #Кодовая страница nix
>max log size = 50 #Максимальный размер лога
>auth methods = winbind #Метод аутентификации: winbind
>winbind separator = \ #Разделитель ДОМЕН\Пользователь(Группа)
>
>
>идет настройка через samba и winbind
>Если есть более стоющее предложение как можно это реализовать то я с
>удовольстивем выслушаю. Т.к. пытасю ввести в домен месяц. и ницига неполучастся...
>

Покажите /etc/krb5.conf


"ошибка Ввод самбы в домен"
Отправлено Zar , 21-Фев-05 04:55 
>Покажите /etc/krb5.conf
Я его нетрогал он мне ненужен... во всяком случае пока что....

#krb5.conf
[logging]
default = FILE:/var/log/kerberos/krb5libs.log
kdc = FILE:/var/log/kerberos/krb5kdc.log
admin_server = FILE:/var/log/kerberos/kadmind.log

[libdefaults]
ticket_lifetime = 24000
default_realm = MANDRAKESOFT.COM
default_tgs_enctypes = des3-hmac-sha1 des-cbc-crc
default_tkt_enctypes = des3-hmac-sha1 des-cbc-crc
permitted_enctypes = des3-hmac-sha1 des-cbc-crc
dns_lookup_realm = false
dns_lookup_kdc = false
kdc_req_checksum_type = 2
checksum_type = 2
ccache_type = 1
forwardable = true
proxiable = true

[realms]
MANDRAKESOFT.COM = {
  kdc = kerberos.mandrakesoft.com:88
  admin_server = kerberos.mandrakesoft.com:749
  default_domain = mandrakesoft.com
}

[domain_realm]
.mandrakesoft.com = MANDRAKESOFT.COM

[kdc]
profile = /etc/kerberos/krb5kdc/kdc.conf

[pam]
debug = false
ticket_lifetime = 36000
renew_lifetime = 36000
forwardable = true
krb4_convert = false

[login]
krb4_convert = false
krb4_get_tickets = false

#End krb5.conf

Я все это делал по документации:

Включаем Samba 3 в домен с контроллером домена под Windows 2000 Server

Написать данную статью мне захотелось, потому что 2 дня я провел перед машиной, чтобы это гиблое дело заработало. Под рукой было множество статей(авторы!не принимайте за оскорбление), но ни одна из них не помогла полностью....

Определяемся:

Сеть: полностью виндузная, кроме Вас - счастливчика, да гейта в инет, который нас в этом деле не интересует :)
Samba: версии 3.0.2a (с winbind)(ставил из дистриба MDK из rpm)
ОС: Mandrake 10 Official
Домен: Windows 2000 Server(русский), Active Directory, DNS находится на этом сервере
Имя машины под Linux: linux (IP 192.168.0.10)
Имя домена: DOMAIN.RU
Имя сервера: Server (IP 192.168.0.2)
Имя админа сервера: Admin
Имеются права админа на сервере и права рута на Вашей машине ;)

Для начала настаиваем DNS в Windows 2000 Server.
Идем в "Панель управления>Администрирование>DNS"
Добавляем узел: linux в зону domain.ru с ip адресом 192.168.0.2
Все...винда готова.

Надеюсь Samba и winbind уже установлены.
Итак...наполняем /etc/samba/smb.conf:


#smb.conf
[global]
log file = /var/log/samba/log.%m #обязательно ведем логи....без них я бы никогда ничего не настроил :)
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 #Опции TCP и буферизации
null passwords = yes #Разрешить пустые пароли
encrypt passwords = yes #Шифровать пароли
hosts allow = 192.168.0. 127. #Разрешенные хостыподсети
interfaces = 192.168.0.10/24 #Привязываем самбу к своему интерфейсу(можно указать несколько)
winbind use default domain = yes #Говорим winbind использовать домен по умолчанию
winbind uid = 10000-20000 #Выделяем диапазон UIDов для winbind
case sensitive = no #Отключаем зависимость от регистра имен файлов
dns proxy = no # Не проксировать DNS
netbios name = linux #Имя машины(которое будет с "СЕТЕВОМ ОКРУЖЕНИИ")
server string = My Workstation #Описание машины(необязательно)
password server = pdc, bdc #Названия первичного и вторичного контроллера домена (соответствие указывается в файле /etc/samba/lmhosts
dos charset = 866 #Кодовая страница
winbind gid = 10000-20000 #Выделяем диапазон GIDов для winbind
local master = no #Не помню что это значит...по моему это даже не нужно...
workgroup = DOMAIN #Имя домена
security = domain #Тип безопасности: домен
unix charset = KOI8-R #Кодовая страница nix
max log size = 50 #Максимальный размер лога
auth methods = winbind #Метод аутентификации: winbind
winbind separator = \ #Разделитель ДОМЕН\Пользователь(Группа)

# Далее расшаривание ресурсов:

[mp3] #название ресурса
comment = Upload #Комментарий(необязательно)
path= /mnt/win_e/MMedia/mp3 #Путь
browseable = yes #Разрешить видеть содержимое
writable = no #Запретить запись
directory mask = 0777 #Маска создания директорий
create mask = 0666 #Маска создания файлов
valid users = @"Admin" #Даем доступ только админу, пользователей или группы перечисляем через запятую.Группы для домена на русской версии windows указывается таким образом: @"DOMAIN\Пользователи домена"
#Конец smb.conf

Сохраняем smb.conf
Начинаем править /etc/samba/lmhosts
В этом файле указываем IP нашего сервера и соответствующее имя для использования в smb.conf
Запись про bdc создана на всякий случай...пусть самба думает что у вас есть резервный контроллер домена(иначе все может просто не заработать). Или - если он есть, укажите его.

#lmhosts
127.0.0.1 localhost
192.168.0.2 pdc
192.168.0.3 bdc
#Конец lmhosts

Дальше - системе надо сказать, что она будет использовать для аутентификации.
Для этого правим файл /etc/nsswitch.conf
Я привожу его полностью, внимание же надо обратить на первые 3 строчки (начиная с passwd :))


#nsswitch.conf
passwd: files winbind
shadow: files winbind
group: files winbind

hosts: files nisplus nis dns

bootparams: nisplus [NOTFOUND=return] files

ethers: files
netmasks: files
networks: files
protocols: files
rpc: files
services: files

netgroup: nisplus

publickey: nisplus

automount: files nisplus
aliases: files nisplus
#Конец nsswitch.conf

Потом редактируем /etc/pam.d/samba
Добавляем недостающие строки:

#samba
auth required pam_winbind.so
auth required pam_nologin.so
account required pam_stack.so service=system-auth
session required pam_stack.so service=system-auth
auth required pam_stack.so service=system-auth
account sufficient pam_winbind.so
password required pam_winbind.so
#Конец samba

Аналогично: /etc/pam.d/system-auth-winbind

#system-auth-winbind
auth required pam_env.so
auth sufficient pam_winbind.so
auth sufficient pam_unix.so likeauth nullok use_first_pass
auth required pam_deny.so

account sufficient pam_winbind.so
account required pam_unix.so

password required pam_cracklib.so retry=3
password sufficient pam_unix.so nullok use_authtok md5 shadow
password required pam_deny.so

session required pam_mkhomedir.so skel=/etc/skel/ umask=0022
session required pam_limits.so
session required pam_unix.so
#Конец system-auth-winbind

Для тех, кто хочет использовать Kerberos надо отредактировать файл /etc/krb5.conf, чтобы он смотрел на центр раздачи ключей, который есть у вас в сети.(Скорее всего это тот самый пресловутый доменный сервер под Win2kServer).
И вообще, чтобы использовать Kerberos на полную, конфиг самбы нужно использовать в режиме ads, а не domain
Мне Kerberos не нужен, поэтому я этот файл даже не трогал.

Все...файлы отредактировали. Переводим дух... Выполняем:


[root@linux /]net join -U Admin


После этого мы должны ввести пароль админа контроллера домена.
Результатом должно быть
Joined to domain DOMAIN.
Если не трогали /etc/krb5.conf или неправильно его отредактировали, в процессе ругнется что не может использовать KDC.


libads/kerberos.c:ads_kinit_password(133)
kerberos_kinit_password Admin@DOMAIN.RU failed: KDC has no support for encryption type
Joined domain DOMAIN


Это ничего - если вы не хотите использовать Kerberos.

Далее выполняем:


[root@linux /]service winbind restart
[root@linux /]service smb restart

Грабли: особенность Мандрейка 10:
Если еще раз перезапустить winbind и выскочит такое. Т.е. после "Shutting Down" нет [OK]:

Shutting Down Winbind...............
Starting Winbind.................... [ OK ]


Для решения проблемы можно привести файл /etc/rc.d/init.d/winbind в надлежащий вид. А если конкретнее секцию stop(кто знает другой способ - пишите:)):


stop() {
gprintf "Shutting down Winbind services: "
RETVAL=1
killproc winbindd
rm -f /var/run/samba/winbindd.pid
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/winbind
return $RETVAL
}


После этого, смотрим, как все работает:
Если что-то неправильно - смотрим конфиги.
Сначала:


[root@linux /]wbinfo -p
Ping to winbindd succeeded


Затем:


[root@linux /]wbinfo -t
Сhecking the trust secret via RPC calls succeeded


Смотрим, отображаются ли пользователи:


[root@linux /]wbinfo -u
Тут будут перечислены пользователи домена.


Смотрим, отображаются ли группы:


[root@linux /]wbinfo -g
Тут будут перечислены группы домена.

Смотрим видит ли линукс вышеперечисленное:


[root@linux /]getent group
Тут будут перечислены сначала группы и пользователи линукса - следом будут пользователи и группы домена.

Если что-то не так: смотрим
/var/log/samba/log.smbd
/var/log/samba/log.nmbd
/var/log/samba/log.winbindd

В них четко и ясно написано где ошибка :)


Все! Дописываем нужные шары, разрешения на них. Также можно использовать квоты, но для этого Ваше ядро должно быть откомпилено с поддержкой квот.

P.S. Не забываем про man smb.conf !


Posted by Morph

что можите посоветовать? и можете сказать где можно найти более мение нормальные доки по Kerberos....
Зарание спасибо


"ошибка Ввод самбы в домен"
Отправлено Zar , 21-Фев-05 06:44 
Забыл добавиь что у меня сть еще один сервак под win2003 при попытки ввести Линуху в его домен он выдает следующе

[2005/02/21 11:27:30, 0] libads/kerberos.c:ads_kinit_password(133)
  kerberos_kinit_password zar@IAT failed: Cannot find KDC for requested realm
Joined domain IAT.

[root@psiholog samba]# wbinfo -t
checking the trust secret via RPC calls failed
error code was  (0x0)
Could not check secret
[root@psiholog samba]#


[root@psiholog samba]# wbinfo -u
Error looking up domain users

вообщем как я понял что в случае с win2003 он его видит но ошибка в шифрование пароля он его нераспознает... сервак показывает в AD что тачка в домене но пароль непризнает..... вот кстате поэтому я и пытаюсь ввести в win2000 сервак а не в win2003 т.к. у этих сераваков отличаеться шифрование.... это два разных домена и разные локальные сети.
что можете посоветовать?


"ошибка Ввод самбы в домен"
Отправлено 4tune , 21-Фев-05 15:50 
>что можете посоветовать?
Читать нормальные доки. Ты же используешь Kerberos, чтобы запросить пароль из контролера домена, так почему не настраиваешь krb5?
http://www.wlug.org.nz/ActiveDirectoryKerberos