Подключаем samba к домену Windows [CentOS+Samba+Winbind+Pam+Kerberos+AD]

Автор: Admin

Дата:2013-04-25

Samba в Домене Windows 2003 SP1

Одним из хороших правил организации файлового сервера может послужить использование операционной системы Linux и Samba в качестве файлового хранилища и авторизацией в домене Windows.
Эта статья описывает, то как можно используя Linux/CentOS 6.3 и пакет Samba подключить к Домену Windows 2003.

Что у нас есть:

Сам домен Windows 2003:
    Имя домена SUN.COR
    Имя сервера: pdc-cen1.sun.corp
    IP: 192.168.200.245
    Шлюз 192.168.200.254
    DNS: 192.168.200.245

Samba сервер как файловое хранилище:
    IP: 192.168.200.104
    Имя: proxy.sun.corp
    Шлюз 192.168.200.254
    DNS: 192.168.200.245

1) Установка CentOS 6.3

Здесь нам нужно установить саму ОС CentOS и сделать настройки для вашего варианта. Необходимо создать машину с именем proxy.sun.corp
Отключим Selinux
/etc/selinux/config
Отключим фаервол

Конфигурация сети

# vi /etc/sysconfig/network-scripts/ifcfg-eth0
OTPROTO=static
NETMASK=255.255.255.0
IPADDR=192.168.200.104
ONBOOT=yes


Указываем DNS

# vi /etc/resolv.conf
nameserver 192.168.200.245

Указываем шлюз и имя машины

# vi /etc/sysconfig/network
GATEWAY=192.168.200.254
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=proxy.sun.corp

# vi /etc/hosts
#127.0.0.1 localhost.localdomain localhost proxy.sun.corp
#::1 localhost6.localdomain6 localhost6
192.168.200.104 proxy.sun.corp

Перезагружаем CentOS
# reboot

2) Установка Bind

# yum update
# yum install bind-utils

3) Синхронизация времени

# yum install ntp
# chkconfig ntpd on

Закомментируем следующее и добавим запись нашего AD

# vi /etc/ntp.conf
#server 0.centos.pool.ntp.org
#server 1.centos.pool.ntp.org
#server 2.centos.pool.ntp.org
server 192.168.200.245

Выполним команду синхронизации времени

# ntpdate -b pdc-cen1.sun.corp
24 Apr 14:56:47 ntpdate[3465]: step time server 192.168.200.245 offset 1035949.935389 sec

#service ntpd start

4) Установка Kerberos

#yum install krb5-workstation krb5-libs

Редактируем файл

# vi /etc/krb5.conf

[logging]
 default = FILE:/var/log/krb5libs.log
 kdc = FILE:/var/log/krb5kdc.log
 admin_server = FILE:/var/log/kadmind.log
[libdefaults]
 default_realm = SUN.CORP
 dns_lookup_realm = false
 dns_lookup_kdc = false
 ticket_lifetime = 24h
 renew_lifetime = 7d
 forwardable = true
 default_tgs_enctypes = rc4-hmac
 default_tkt_enctypes = rc4-hmac
 permitted_enctypes = rc4-hmac
[realms]
 SUN.CORP = {
  kdc =  pdc-cen1.sun.corp
  admin_server = pdc-cen1.sun.corp
  default_domain = sun.corp
 }
[domain_realm]
 .sun.corp = SUN.CORP
 sun.corp = SUN.CORP

Выполним команды

# kinit администратор@SUN.CORP
Password for администратор@SUN.CORP:

# klist
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: администратор@SUN.CORP
Valid starting     Expires            Service principal
04/24/13 15:04:17  04/25/13 01:04:22  krbtgt/SUN.CORP@SUN.CORP
        renew until 05/01/13 15:04:17


Перестартуем CentOS

5) Устанавливаем Samba и подключаем к AD

# yum install samba
# chkconfig smb on
# chkconfig nmb on

# mv /etc/samba/smb.conf /etc/samba/smb.conf.orig

# vi /etc/samba/smb.conf

[global]

        workgroup = SUN
        realm = SUN.CORP
        server string = Samba Server Version %v
        security = domain
        log file = /var/log/samba/log.%m
        max log size = 50
        cups options = raw
        passdb backend = tdbsam
        winbind uid = 10000-20000
        winbind gid = 10000-20000
        winbind enum users = yes
        winbind enum groups = yes
#      winbind separator = +
(можно указать разделения
SUN+aroma)
        template shell = /bin/bash
        max log size = 50
        encrypt passwords = yes
[homes]
        comment = Home Directories
        read only = No
        browseable = No
[cross]
        comment = files
        path = /share/test
        browseable = yes
        writable = no #Запись запрещена
        valid users = SUN\aroma
,
SUN\misha, SUN\amot
        
read list = 
SUN\amot, SUN\misha #пользователи только на чтение
        write list = SUN/
aroma
        create mask = 0755

6) Редактируем nsswith и pam.d

Редактируем nsswitch

# mv /etc/nsswith.conf /etc/nsswith.conf.orig

# vi /etc/nsswith.conf

 passwd: files winbind
 shadow: files winbind
 group: files winbind
 hosts: files dns winbind
 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

Редактируем pam.d

# vi /etc/pam.d/samba

auth        include        system-auth
auth        required    pam_winbind.so
auth        required    pam_nologin.so
auth        required    pam_stack.so service=system-auth
account        required    pam_nologin.so
account        required    pam_stack.so service=system-auth
account        include        system-auth
account        sufficient    pam_winbind.so
session        include        system-auth
session        required    pam_stack.so service=system-auth
password    required    pam_winbind.so

Перестартуем службы
#service smb restart
#service winbind restart

7) Подключение к домену Windows 2003 и проверка

Подключение к домену Windows
# net ads join -Uадминистратор
Enter администратор's password:
Using short domain name -- SUN
Joined 'PROXY' to dns domain 'sun.corp'


Проверяем работу

# wbinfo -p
Ping to winbindd succeeded

# wbinfo -u
SUN\администратор
SUN\гость
SUN\support_388945a0
SUN\krbtgt
SUN\aroma

# wbinfo -g
SUN\helpservicesgroup
SUN\telnetclients
SUN\компьютеры домена
SUN\контроллеры домена
SUN\администраторы схемы
SUN\администраторы предприятия
SUN\издатели сертификатов
SUN\администраторы домена
SUN\пользователи домена
SUN\гости домена

Дальше нам нужно создать пользователей на стороне Linux для обеспечения доступа к файловому серверу

#useradd aroma 
#useradd misha
#useradd amot

Количество просмотров: 11443

Комментарии к статье:

Добавить комментарий

Введите сумму с картинки

© Plutonit.ru - Администрирование, настройка Linux и Windows 2009 - 2017