Переход к предыдущей публикации Перенос FreeBSD на другой жесткий диск Хорошо дома Переход к следущей публикации
 
Я хочу добавить Daemony`s Live RSS ленту в Google Reader Я хочу добавить Daemony`s Live RSS ленту в Яндекс.Лента Я хочу получать RSS ленту Daemony`s Live Blog по электронной почте Я хочу добавить Daemony`s Live RSS ленту в My Yahoo Я хочу добавить Daemony`s Live RSS ленту в My MSN

 

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

Настройка Samba

Samba Server После вчерашнего переноса сервера на более емкий жесткий диск займемся установкой сервера Samba. Данное программное обеспечение в первую очередь призвано дать доступ к файлам и принтерам на *nix системе пользователям Windows систем в локальной сети.

По данному вопросу написано очень много статей. Да и сама настройка Samba не вызывает существенных проблем. Это программное обеспечение из той категории, когда конфигурационный файл предельно прост и понятен. Плюс ко всему имеется web интерфейс конфигуратор называемый Swat. Но им мы пользоваться не будем.

На сайте старого знакомого Лиссяры есть две статьи по настройке Samba. Правда моя конфигурация получилась гораздо проще. Навороты, вроде перезапусков BSD служб из под Windows мне не нужны. Однако ниже я все таки приведу пример конфигурации, взятый на сайте www.lissyara.su


SAMBA + правка расширенных пермишенов (ACL) через виндовые “галочки”

Автор: Lissyara

Возникла необходимость сделать в филиалы файлопомойки не на винде. Альтернатива известна - samba. Однако, было требование - на местах есть админы, и файлопомойкой должны рулить они. Галочками, из-под винды. Ибо нехорошо травмировать несчастных виндовых админов вещщами типа getfacl/setfacl. Им и так тяжело :).

На этом моменте затруднений возникло немного (собственно, на галочках - тока одно, ибо в мане по smb.conf всё хорошо написано), одно из самых главных - я не мог воткнуть машину в домен, но к делу оно отношения не имеет.

Итак. Задача - самба с галками, в домене. Поехали:

lissyara$ cd /usr/ports/net/samba3/
lissyara$ make install clean

Лезет синее окошко, где выбираем такие опции:

 Options for samba 3.0.25a,1
————————————————-
[X] LDAP With LDAP support
[X] ADS          With Active Directory support
[X] CUPS         With CUPS printing support
[X] WINBIND      With WinBIND support
[X] ACL_SUPPORT  With ACL support
[ ] FAM_SUPPORT  With File Alteration Monitor
[ ] SYSLOG With Syslog support
[ ] QUOTAS       With Disk quota support
[X] UTMP         With UTMP accounting support
[ ] MSDFS        With MSDFS support
[ ] PAM_SMBPASS  With PAM authentication vs passdb backends
[ ] CLUSTER      With experimental cluster support
[ ] DNSUPDATE    With dynamic DNS update
[ ] EXP_MODULES  With experimental modules
[X] POPT         With system-wide POPT library

Собственно, у вас они могут и не все быть такие, однако, из необходимых - это winbindd, поддержка ACL и AD. После инсталляции, идём ставить керберос:

lissyara$ cd /usr/ports/security/heimdal
lissyara$ make install clean

Тут тоже имеем голубенькое окошко:

Options for heimdal 0.7.2_2
————————————————-
[ ] LDAP      Use OpenLDAP as the KDC backend
[ ] CRACKLIB  Use CrackLib for password quality checking
[ ] X11       Build X11 utilies

В нём я ничё не выбрал - у меня будет LDAP из AD, проверку паролей выполняют политики домена, а иксов на сервере отродясь не держал.

После инсталляции, рисуем конфиги:

/etc/krb5.conf

[libdefaults]
default_realm = MY-DOMAIN.LOCAL
[realms]
MY-DOMAIN.LOCAL = {
kdc = MY-DOMAIN.LOCAL
admin_server = MY-DOMAIN.LOCAL
}
[domain_realm]
.my-domain.local = MY-DOMAIN.LOCAL
[logging]
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmin.log
default = FILE:/var/log/krb5lib.log

Комментарий к конфигу кербероса - у меня, с этой машины, домен пингуется и резольвится по имени:

lissyara$ ping my-domain.local
PING my-domain.local (192.168.0.103): 56 data bytes
64 bytes from 192.168.0.103: icmp_seq=0 ttl=126 time=0.311 ms
64 bytes from 192.168.0.103: icmp_seq=1 ttl=126 time=0.398 ms
64 bytes from 192.168.0.103: icmp_seq=2 ttl=126 time=0.391 ms
64 bytes from 192.168.0.103: icmp_seq=3 ttl=126 time=0.470 ms
^C
— my-domain.local ping statistics —
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.311/0.393/0.470/0.056 ms
lissyara$ host my-domain.local
my-domain.local has address 192.168.0.42
my-domain.local has address 192.168.0.43
my-domain.local has address 192.168.0.103
my-domain.local mail is handled by 10 exchserv.my-domain.local.
lissyara$

Поэтому я указал имя домена - контроллеров три, и в случае падения какого-то - автоматически подцепится другой.

/etc/hosts

::1                     localhost.my-domain.local localhost
127.0.0.1               localhost.my-domain.local localhost
192.168.31.10		smbsrv.my-domain.local smbsrv
192.168.31.10		smbsrv.my-domain.local.

Надо заметить, что эти данные соответствуют имени хоста:

lissyara$ hostname
smbsrv.my-domain.local
lissyara$

/usr/local/etc/smb.conf

printable		= Yes
use client driver	= yes

# шара ‘data’
[data]
# каммент к шаре
comment                 = Shares for Documents
# путь к шаре на диске
path                    = /shares/data
# список тех, кому разрешён доступ на чтение
read list               = “@MY-DOMAIN\Domain Users”
# список тех, кому разрешён доступ на запись
write list              = “@MY-DOMAIN\Domain Users”
# список тех, кому разрешёно ставить те самые галки,
# ради которых всё затевалось. инттересная особенность, в которую
# до конца не вкурил - в одинаковых конфигурациях, иногда можно
# указывать без домена, а иногда домен необходим.
# Все операции этих пользователей выполняются от рута!
admin users             = “@MY-DOMAIN\Admin Users”, MY-DOMAIN\lissyara# SAMBA

[global]
# Рабочая группа
workgroup	= MY-DOMAIN
# тип безопасности - Актив Директори
security	= ADS
# Сервер паролей - тут указывается контроллер домена
# но у меня их несколько - поэтому я указал имя домена
# благо оно резольвится в их имена.
password server	= MY-DOMAIN.LOCAL
# область kerberos
realm		= MY-DOMAIN.LOCAL
# имя машины в “сетевом окружении”
netbios name	= SMBSRV
# комментарий к имени машины
server string	= SAMBA shares server
# уровень логгирования - 0-10 - но никогда не оставляейте
# в 10 - очень быстро засрёт раздел с логами
#       log level	= 10
# файл логов - подробности о значении переменных
# есть в man smb.conf
log file	= /var/log/samba/%m.%U.log
# максимальный размер файла лога (kB)
max log size	= 50000
# диапазон отмапленых winbindd`ом uid пользователей
idmap uid	= 10000-20000
# диапазон отмапленых winbindd`ом gid пользователей
idmap gid	= 10000-20000
# использовать дефолтовый домен (имя юзера можно
# указывать без домена)
winbind use default domain = yes
# кодировка выводимых сообщений
display charset	= koi8-r
# кодировка в которой хранить на диске
unix charset	= koi8-r
# в какой кодировке общаться с досовскими клиентами
dos charset	= 866
# for mail
template homedir = /shares/mail/%U

[printers]
comment			= All Printers
path			= /var/spool/samba
# browseable		= No
public			= yes
# Доступ к шаре тока на чтение
read only               = No
# маска для создаваемых файлов
create mask             = 0660
# маска для создаваемых директорий
directory mask          = 0770
# наследовать владельца (вышестоящей директории)
inherit owner           = yes
# наследовать ACL
inherit acls            = yes
# наследовать права
inherit permissions     = yes
# позвоялет редактору прав из винды корректно обрабатывать
# наследуемые права
map acl inherit         = yes
# блокировки - иногда бывают грабли без этого пункта
locking                 = no

/etc/nsswitch.conf

group: files winbind
passwd: files winbind
group_compat: nis
passwd_compat: nis
hosts: files dns
networks: files
shells: files

После чего, получаем билет от кербероса (в этом и следующем действии используется доменный пользователь. Иногда, его приходится указывать как lissyara@MY-DOMAIN.LOCAL - иначе не прокатывает):

lissyara$ kinit lissyara
lissyara@MY-DOMAIN.LOCAL’s Password:
kinit: NOTICE: ticket renewable lifetime is 1 week
lissyara$

И вводим машину в домен:

lissyara$ net join -U lissyara
lissyara’s password:
Using short domain name — MY-DOMAIN
Joined ‘SMBSRV’ to realm ‘MY-DOMAIN.LOCAL’
lissyara$

Можно добавлять строчку в /etc/rc.conf:

samba_enable=”YES”

и запускать самбу:

lissyara$ /usr/local/etc/rc.d/samba start
Removing stale Samba tdb files: . done
Starting nmbd.
Starting smbd.
Starting winbindd.
lissyara$

Для вящей красоты, можно сделать так:

lissyara$ id administrator
uid=10001(administrator) gid=10002(domain users) groups=10002(domain users)
lissyara$ chown Administrator:”Domain Users” /shares/data
lissyara$ ll /shares | grep data
drwxr-xr-x  4 administrator  domain users      512 15 июн 12:31 data
lissyara$

Вот, пожалуй и всё. Галочки прекрасно ставятся, поведение как у винды… Тока денег платить не надо, да активации не просит :)

P.S. Где-нить в процессе, до запуска самбы, не забываем включить ACL на самой файловой системе, где у нас шары, что-то типа такого:

lissyara$ umount /shares
lissyara$ tunefs -a enable /shares
tunefs: ACLs set
lissyara$ mount /shares
lissyara$ mount | grep acl
/dev/ad0s1g on /shares (ufs, local, soft-updates, acls
lissyara$

P.S.2 Владельцы контроллера домена с русской виндой, скорей всего, будут летать как фанера над парижем - я слабо представляю в какой кодировке надо подсовывать юзеров в таком случае :)

P.S.3 Для тех кто в танке - до кучи можно выбрать фряху из под винды, через управление компьютером -> подключиться к другому. И точно как с виндой рулить подключенными юзерами и даже рестартовать сервисы.

 

Ключевые слова


| | | | | |
 

Публикации по теме

Пятница, 4 января, 2008 13:46:14 EET

Подпишись на RSS ленту и будь в курсе обновлений

Я хочу добавить Daemony`s Live RSS ленту в Google Reader Я хочу добавить Daemony`s Live RSS ленту в Яндекс.Лента Я хочу получать RSS ленту Daemony`s Live Blog по электронной почте Я хочу добавить Daemony`s Live RSS ленту в My Yahoo Я хочу добавить Daemony`s Live RSS ленту в My MSN

Я хочу подписаться на Daemony`s Live RSS ленту комментариев к записям
  1. Комментарии (2) к публикации “Настройка Samba”

  2. № 1 .:. simplexe говорит:

    а зачем то копировать статью?

    2008-03-13 13:49:09 EET
  3. № 2 .:. Daemony говорит:

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

    2008-03-13 13:51:20 EET

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

Быстрая вставка HTML тегов

Подсказки:
  • Для вставки фрагментов кода используйте "быстрый" тег <PRE></PRE>.
  • Для цитирования фрагментов текста используйте "Цитата".
  • Поддерживаются также другие HTML теги.

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