Samba 41 FreeBSD 10.1
ActiveDirectory 2008R2
Задача
1. Создать папку для пользователей всего домена
2. Создать личные папки закрытые от остальных

Реализация портом /usr/port/net/samba41/
#make install clean
компилировал с полными настройками.
необходимый порт для задачи 2 /usr/ports/security/pam_mkhomedir/
cd /usr/ports/security/pam_mkhomedir/
#make install clean

начнем с pam
#cat > /etc/pam.d/samba

#
# PAM configuration for the "samba" service
#

# auth
auth sufficient pam_opie.so no_warn no_fake_prompts
auth requisite pam_opieaccess.so no_warn allow_local
auth sufficient /usr/local/lib/pam_winbind.so silent try_first_pass krb5_auth krb5_ccache_type=FILE
#auth sufficient pam_ssh.so no_warn try_first_pass
auth required pam_unix.so no_warn try_first_pass

# account
account required pam_nologin.so
account sufficient /usr/local/lib/pam_winbind.so krb5_auth krb5_ccache_type=FILE
account required pam_unix.so

# session
session required pam_permit.so
session required /usr/local/lib/pam_mkhomedir.so

---------------------------------------------------------------------------
Создаем шары
mkdir /home/VESP_SHARE
mkdir /home/VESP_USERS
Выдаем права чтения, записи
chown 0777 /home/VESP_SHARE
chown 0777 /home/VESP_USERS
(не работает создание папки домена в формате %D/%U, а имено так хочу хранить )
значит создаем папку домена
в пользовательских папках
mkdir /home/VESP_USERS/VESP
Задаем права
chown 0777 /home/VESP_USERS/VESP

подготовили скилет.

файлы настройки сети
/etc/resolv.conf

domain vesp.ru
search vesp.ru
nameserver 172.22.1.20
nameserver 172.22.1.1

Сервера имен по вкусу
так выглядит мой файл свича

/etc/nsswitch.conf
services: files
rpc: files
group: files winbind
shells: files
passwd: files winbind
hosts: files dns
sudoers: files
networks: files
protocols: files

Настройка Kerberos используем порт /usr/ports/security/krb5
cd /usr/ports/security/krb5
#make install clean

файл конфигурации
/etc/krb5.conf

[appdefaults]
pam = {
forwardable = true
ticket_lifetime = 86400
renew_lifetime = 86400
}

[libdefaults]
dns_lookup_realm = true
dns_lookup_kdc = true
ticket_lifetime = 24h
clockskew = 300
forwardable = yes

[domain_realm]
vesp.ru = VESP.RU
.vesp.ru = VESP.RU
VESP.RU = VESP.RU
.VESP.RU = VESP.RU

[realms]
VESP.RU = {
kdc = server-ad-1.vesp.ru:88
admin_server = server-ad-1.vesp.ru:88
kpasswd_server = server-dc-3.vesp.ru:464
default_domain = VESP.RU
}

[logging]
default = SYSLOG:INFO:LOCAL7

Далее конфиг самой самбы
/usr/local/etc/smb4.conf

[global]
server max protocol = SMB2
encrypt passwords = yes
dns proxy = no
strict locking = no
oplocks = yes
deadtime = 15
max log size = 51200
max open files = 113735
load printers = no
printing = bsd
printcap name = /dev/null
disable spoolss = yes
getwd cache = yes
guest account = nobody
map to guest = Bad User
obey pam restrictions = yes
directory name cache size = 0
kernel change notify = no
panic action = /usr/local/libexec/samba/samba-backtrace
server string = FreeNAS Server
ea support = yes
store dos attributes = yes
hostname lookups = yes
time server = yes
acl allow execute always = true
acl check permissions = true
dos filemode = yes
domain logons = no
idmap config *: backend = tdb
idmap config *: range = 90000001-100000000
server role = member server
netbios name = FREENAS
workgroup = VESP
realm = VESP.RU
security = ADS
client use spnego = yes
cache directory = /var/tmp/.cache/.samba
local master = no
domain master = no
preferred master = no
winbind cache time = 7200
winbind offline logon = yes
winbind enum users = yes
winbind enum groups = yes
winbind nested groups = yes
winbind use default domain = no
winbind refresh tickets = yes
idmap config VESP: backend = rid
idmap config VESP: range = 10000-90000000
allow trusted domains = no
client ldap sasl wrapping = plain
template shell = /bin/sh
template homedir = /home/%D/%U
pid directory = /var/run/samba
smb passwd file = /var/etc/private/smbpasswd
private dir = /var/etc/private
create mask = 0666
directory mask = 0777
client ntlmv2 auth = yes
dos charset = CP1251
unix charset = UTF-8
log level = 1

[VESP_SHARE]
path = /home/VESP_SHARE
printable = no
veto files = /.snapshot/.windows/.mac/.zfs/
writeable = yes
browseable = yes
recycle:repository = .recycle/%U
recycle:keeptree = yes
recycle:versions = yes
recycle:touch = yes
recycle:directory_mode = 0777
recycle:subdir_mode = 0700
vfs objects = zfsacl aio_pthread streams_xattr
hide dot files = yes
guest ok = no
nfs4:mode = special
nfs4:acedup = merge
nfs4:chown = true
zfsacl:acesort = dontcare

[homes]
valid users = %D\%U
path = /home/VESP_USER/%D/%U
comment = Home Directories
printable = no
veto files = /.snapshot/.windows/.mac/.zfs/
writeable = yes
browseable = yes
recycle:repository = .recycle/%U
recycle:keeptree = yes
recycle:versions = yes
recycle:touch = yes
recycle:directory_mode = 0777
recycle:subdir_mode = 0700
vfs objects = zfsacl aio_pthread streams_xattr
hide dot files = yes
guest ok = no
nfs4:mode = special
nfs4:acedup = merge
nfs4:chown = true
zfsacl:acesort = dontcare

################ЗАКОНЧИЛИ с конфигами ##############################

ВАЖНО! синхронизируем время с часами домена

#ntpdate server-ad-1.vesp.ru

даем службам разрешение запуска
добавляем в /etc/rc.conf

samba_server_enable="YES"
nmbd_enable="YES"
smbd_enable="YES"
winbindd_enable="YES"

включаемся в домен
проверяемся kinit Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра. пароль
смотрим тикеты klist если тикеты есть то все хорошо
#sudo samba-tool domain join vesp.ru MEMBER -Uadministrator --realm=vesp.ru

процедура вводит в домен машину
смотрим права из домена
wbinfo -u покажет всех юзеров домена
wbinfo -g группы
wbinfo -t доступность домена

стартуем сервер самбы
#service samba_server start

Должно все работать

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

Защитный код
Обновить