Мой сайт
Главная | Каталог статей | Регистрация | Вход
Суббота
27.04.2024
03:53
Приветствую Вас Гость | RSS
Главная » Статьи » Linux и Unix

samba в домене windows 2003 под Debian GNU/Linux

samba в домене windows 2003 под Debian GNU/Linux
За основу взята статья сыскавшаяся у меня в закладках.
ссылок на неё предостаточно, но первичный источник мне искать лениво.
Естественно, внесены небольшие изменения под специфику Debian.

Поехали:
Система уже стоит, скорее всего Debian Etch. ставим сверху самбу.

Для удобства писать буду от имени root
Если работать от пользователя, то перед каждой командой надо ставить sudo

# apt-get update
# apt-get install samba winbind krb5-user

Зависимости подтянутся сами

САМОЕ ГЛАВНОЕ!!!
перед редактированием любого файла создавайте резервные копии!

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

# vi /etc/resolv.conf

search domain.foo
nameserver 192.168.0.1
значения подствить свои

на машине с самбой на всякий случай прописываем следующее

# vi /etc/hosts
192.168.0.1 adc.domain.foo adc
файл хостов на контроллере домена трогать не обязательно

Настройка Kerberos.

Часть этого документа использует DOMAIN.FOO прописными буквами. Удостоверьтесь, что в вашем конфиге krb5.conf правильный регистр!

Приводим файл krb5.conf в соответствие с настройками вашей сети(не забывайте про регистр!).

# vi /etc/krb5.conf
 [libdefaults] 
default_realm = DOMAIN.FOO

[realms]
ADC.DOMAIN.FOO = {
kdc = adc.domain.foo
}

[domain_realms]
.domain.foo = DOMAIN.FOO

После этого выполняем команду(необходимо знать пароль администратора КД):

# kinit admin@DOMAIN.FOO
#
в случае успешного завершения вывода на консоль не будет.

Возможные проблемы на этом этапе:
kinit: krb5_get_init_creds: Client (Admin@DOMAIN.FOO) unknown 

Надо проверить правильность ввода логина\пароль админа.
kinit: krb5_get_init_creds: unable to reach any KDC in realm (DOMAIN.FOO) 

Проверьте правильность настроек DNS и конфига krb5.conf
kinit: krb5_get_init_creds: Clock skew too great 

Рассинхронизация времени на КД и клиенте – выполните команду net time set(в linux) Желательно выполнять данную команду раз в неделю(можно через cron).

Настройка Samba и Winbind:
Пожалуй, самая легкая часть настройки.

Выкладываю свой реально работающий конфиг:
# vi /etc/samba/smb.conf
 [global]
admin users = admin # обычно не пользуюсь, но себя лучше не прописывать
log file = /var/log/samba/log.%m
log level = 1
socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192
null passwords = true
# interfaces = 192.168.0.10/255.255.255.0 #
# hosts allow = 192.168.0. 127.0.0.1 #
encrypt passwords = yes # шифрованные пароли, шифрованные
idmap uid = 10000-40000
idmap gid = 10000-40000
auth methods = winbind # это та самая штука, которая общается с виндовым сервером
name resolve order = hosts bcast lmhosts
case sensitive = no
dns proxy = no
netbios name = smbserver
server string = %v samba
password server = adc.domain.foo
realm = DOMAIN.FOO
client use spnego = yes
client signing = yes
local master = no
domain master = no
preferred master = no
workgroup = DOMAIN
debug level = 2
security = ads
unix charset = UTF-8 # локальная кодировка
dos charset = 866 # клиентская кодировка. да, винды всё ещё держат имена файлов в 866
max log size = 50
os level = 0 # это, чтоб самба не брала на себя функции мастербраузера сети
# guest access = ok
follow symlinks = yes
winbind separator = \
winbind uid = 10000-40000
winbind gid = 10000-40000
winbind enum groups = yes
winbind enum users = yes
winbind use default domain = no
это общаяя часть

можно прописать и шары
[share]
   comment = data
   path = /home/data # путь к расшареному каталогу
   browseable = yes
   writable = yes
   create mask = 0664 # файлы в этой шаре будут создаваться с этими правами
   directory mask = 0777 # каталоги в шаре будут создаваться с этими правами
   valid users = @"DOMAIN wingroup", "DOMAIN winuser1", "DOMAIN winuser2"
   write list = "DOMAIN winuser1"
   read list = @"DOMAIN wingroup", "DOMAIN winuser2"
ну примерно так.
шара homes неплохо описана с конфиге самбы по умолчанию.
ну и не забываем про волшебную команду
# man smb.conf
там подробно описан каждый параментр конфигурации.

редактируем nsswitch.conf, добавляем то, что написано зелёным
# vi /etc/nsswitch.conf
passwd: compat winbind
group: compat winbind
shadow: compat winbind

hosts: files dns

Входим в Active Directory

Убедившись, что на контроллере домена нет машин с именем, которое мы использовали в конфиге Samba. Выполняем команду:
# net ads join -U winadmin
winadmin's password:
Using short domain name -- DOMAIN
Joined 'SMBSERVER' to realm 'DOMAIN.FOO'
всё, самба-сервер в домене

перезапускаем винбинд и самбу
# /etc/init.d/winbind restart
Stopping the Winbind daemon: winbind.
Starting the Winbind daemon: winbind.
# /etc/init.d/samba restart
Stopping Samba daemons: nmbd smbd.
Starting Samba daemons: nmbd smbd.
ещё одно. если шара сделана с доступом на запись, то писать в расшареный каталог должно быть разрешено всем.
# chmod 777 /home/data
будем считать, что он пустой.
почему? помните параметры
 winbind uid = 10000-40000
winbind gid = 10000-40000

вот из этой поляны назначаются ID пользователей и групп. в системе их нет и заранее знать их нельзя.

Источник: http://mar1ner.livejournal.com/315094.html
Категория: Linux и Unix | Добавил: SAM (15.10.2009)
Просмотров: 9252 | Комментарии: 23 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа
Категории раздела
Мои статьи [0]
Linux и Unix [47]
Все про Linux и Unix
Windows [2]
Все про Windows
Администрирование [5]
Все для Системного администратора
Cisco [2]
Мой опыт работы с кисками
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Статистика

    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    Copyright MyCorp © 2024
    Бесплатный конструктор сайтов - uCoz