Мы — долго запрягаем, быстро ездим, и сильно тормозим.
|
|||||||||||||||||||||||||||||
www.lissyara.su
—> статьи
—> FreeBSD
|
|
Как можно заметить из вывода `uname' - у домена очень длинное имя, ещё и с дефисом в середине. На этом я тоже словлю глюк чуть позже.
Поехали. Ставим самбу, выбираем такой набор галок:
|
Тут надо прерваться на пояснение. В самбе, после версии 3.0.25 есть по крайней мере пара глюков, которые мне известны и толком не пофикшены.
https://bugzilla.samba.org/show_bug.cgi?id=5052 - Бага с наследованием прав. Вроде как пофикшена. Почему "вроде" - см. следующую.
https://bugzilla.samba.org/show_bug.cgi?id=5873 - Невозможно убрать нследование прав. Толи результат фикса предыдущей, толи самостоятельная - но у меня и у чела обнаружилась сразу после фикса предыдущей. Вроде до этого не было такого, хотя может не замечал просто...
Обе баги очень неприятные, в крупных реализациях - делают самбу неприменимой для использования. Обе лечаться откатом на версию 3.0.25, но, там свои интересные глюки, пофикшенные в более поздних версиях. После некоторых размышлений о бренности бытия, рекурсивного грепания сорцов, мата в сторону разработчиков (первую багу пофиксили через несколько месяцев, когда у меня уже всё давно было в продакшене), ругани на себя, что плохо читал книжечку по программированию на сях, был найден файл отвечающий за раздачу прав и прочия. Собственно - разработчик, отписывающийся в первом баге говорит, что неправильно подсовывать файл из старой версии самбы в новую, что "виндовс-со-свистом" будет как-то неправильно работать с шарами... Да и пофиг =) Самое главное - всё пашет.
|
Собственно - виновника торжества я выложил на ftp. Если есть архив 3.0.25 - можете достать из него. Теперь можно продолжить инсталляцию.
|
После инсталляции - настраиваем - правим некоторые файлы до такого состояния (всё тупо копировать не надо, на некоторых надо подумать и подставить своё. Если непонятно - смотрите старую статью - там разжёвано).
При неверной настройке этого файла - не удавалось включить в домен:
|
Прописываем автозапуск самбы:
|
Указываем юзать винбинд для проверки юзеров и паролей:
|
Рисуем конфиг самбы:
|
Про конфиг порассуждаю отдельно - т.к. он без камментов. Про главную часть - смотрите всю ту же предыдущую статью - там она прокомментирована. Лучше расскажу про шары. В данном случае, шары всего две - одна для доков (all), вторая для персональных пользовательских директорий (user_data), доступных тока им (ну и администраторам домена). По первой - почему именно такие опции - я дуже и не объясню. Они просто скопированы с того самого сервера который в продакшене. Они должны быть именно такими - иначе начинается чехарда с правами - когда юзер не может править файл владельцем которого он является и т.п. Так что тут - принимайте как есть, или пытайтесь найти свои значения.
Вторая шара интересней. Там надо было создать по директории каждому юзверю, чтобы туда мог лазить тока он. Решили скриптом, вызываемым при подключении юзера к шаре.
Ну и общее для обоих шар - VFS. Первый модуль - `recycle' - корзина. При удалении файла, он не удаляется с диска, а передвигается в другую директорию на том же диске (можно и на другом, но экспериментальным путём выяснили, что тогда потеряются расширенные права - иногда они дороже файлов в директории =)). Поддерживается версионность. Т.е. может сохранять кучу файлов с одним и тем же именем удаляемых раз за разом. Второй модуль - `full_audit' - может логгировать вообще все телодвижения юзера, но в данном варианте учитывает лишь деструктивные действия - удаление и запись в файлы. Весьма полезен когда прибегает "нечто" и кричит что у него чего-то там удалили. Причём именно админы - ибо само "оно" не могло удалить. Бывает забавно ткнуть его носом в лог, где указано что удалил именно он, с датой... Тут же включается остаток мозга, и юзер вспоминает как чего-то там сортировал. И соображает что удалил не копию, а и копию и оригинал, тупо запутавашись где что... Думаю, ситуация всем знакомая.
Ну да ладно. Получаем тикет от кербероса (юзается доменный пользователь `exim' - ибо там щас все спят, а других юзеров я не знаю - этого вытащщил из конфига почты, что настраивал год назад в этой же конторе):
|
Фтыкаем машинку в домен:
|
Тут имеем интересную ругань - про этот глюк я упоминал в самом начале - слишком длинное имя домена с дефисом превратилось в какой-то обрубок... Странно, но работает. Как чуть позже станет ясно - не совсем коректно работает. Ну а пока продолжаем, запускаем самбу:
|
Проверяем - работает ли:
|
Облом... Подумавши, выполнил другую команду:
|
Юзеров видит. В полном её выводе видна причина облома - видит как `ENGINEERIN\exim' - несмотря на явное указание в конфиге видеть их без домена... Пробуем:
|
И правда... Снова подумал, понравилось =)) Сделал так как рекомендовало в ругани, при вводе в домен, т.е. заменил в конфиге
|
на
|
снова воткнул в домен - на этот раз прокатило без ругани:
|
и рестартовал самбу. Теперь видит как и задумано - без домена:
|
Хорошо. Можно продолжать. Готовим шару. Как именно включить ACL - читаем в старой статье.
|
Делаем такую структуру директорий:
|
Задаём права:
|
Прописываем задания в планировщик рута `crontab -e':
|
Рисуем скрипт ротации логов:
|
И скрипт создающий юзерские директории:
|
Правим конфиг сислога:
|
Всё. На Сахалине сейчас:
|
Все спят, проверить некому. Я тоже, пожалуй, пойду спать, всё должно работать. Завтра, у них будет вечер, а у нас утро, сообщат о глюках... Хотя - не должно их быть...
Несмотря на перечисленные странности самбы, мне кажется, что - плюсы в виде корзины, аудита, шустрой работы и правильной ОС перекрывают недостатки. (Про наличие аудита в винде, shadow copy и прочего - я осведомлён. Тока винду я не админю, на vbs не пишу, и расставлять галки - ненавижу. А без vbs хрен там чего из того аудита выковырнешь...) Кто-то может не согласиться - его право. Каждому своё =)
UPD 2010-03-04: Проблема с отвалом прав из первого комментария, решается установкой FreeBSD8 или правкой исходников ядра для установки чила групп у пользователя больше, чем у вас максимально бывает в домене (в FreeBSD8 вообще радикально - 1023 по дефолту)
Мне хватило такого:
|
размещено: 2008-11-11,
последнее обновление: 2010-03-04,
автор: lissyara
Andy, 2008-11-12 в 9:47:18
Samba тоже умеет shadow copy, только это с Logical Volume Manager замешано.
http://us3.samba.org/samba/docs/man/Samba-HOWTO-Collection/VFS.html#id2644800
http://wiki.samba.org/index.php/Shadow_Copies_with_Snapshots_Script
А про администрирование NAS под самбой, я очень хорошо помню как переодически права отваливались на вложенные директории - было весело.
Cancer, 2008-11-15 в 20:01:00
Спасибо за статью, нашел тут кучу фенечек для корзины итд
sch, 2008-11-25 в 17:07:54
по поводу ругани SAMBA на короткое имя домена - объяснение простое: когда настраивали роль контроллера домена AD, мастер настройки на одном из этапов запросил короткое имя домена - и в качестве такого имени было введено слово ENGINEERING (короткое имя можно указать вообще не похожим на имя DNS зоны). Именно это имя выводится в третьем поле окна авторизации windows.
Вот здесь ИМХО ненужная директива "read list":
read list = "@ENGINEERING\Domain Users"
write list = "@ENGINEERING\Domain Users"
директива write list с указанием такой же группы перекрывает read list.
Извините за нудное поведение :)
man smb.conf:
write list (S)
This is a list of users that are given read-write access to a service. If the connecting user is in this list then they will be given write access, no matter what the read only option is set to.
Note that if a user is in both the read list and the write list then they will be given write access.
StarЫЙ, 2009-06-23 в 7:58:06
Мне кажеться, что тут надо бы для новичков добавить кое-что перед тем как добавить запись в сислог необходимо создать файл /shares/logs/smbd_audit.log,
и еще у меня скрипт ротации логов заработал когда в crontabe написал sh /root/scripts/log_rotate.sh
feomatr, 2010-12-09 в 19:12:09
StarЫЙ
Первый мой опыт работы с syslog.conf.
Потрачен день и "немного" нервов =)
Спасибо за ответ!(я про создание файла)
Yuki, 2011-11-08 в 7:02:35
Хехехе, где-то я это видела :D
Щас повторим :D
Anonymous, 2012-01-02 в 20:54:57
было в статье в описании создания структуры директорий под trash
chmod 770 /shares/trash
надо
chmod -R 770 /shares/trash
Cancer, 2013-01-30 в 17:35:42
Я скрипт немного подпили что бы не создавал он директории с именами ПК в сети типа ur01_
Вот в этом скрипте я добавил в 1 строчке egrep -v create_user_data_subdir.sh
user_name="`echo $1 | /usr/bin/tr '[:upper:]' '[:lower:]' | egrep -v *_`"
Ну вот и все =)
Все работает нормально!
Cancer, 2013-01-30 в 17:37:34
Учитывайте у меня нет пользователей в домене с символами _
Cancer, 2013-01-31 в 9:11:49
5 копеек в копилку.
Запили скрипт который создает домашние директории для пользователей и применяет сразу ACL на них такие как мне нужно.
Владелец DOMAIN\Administrator
Полные права DOMAIN\<user>
Полные права DOMAIN\Администраторы домена
Вот сам скрипт http://pastebin.com/Jqj6FFuV
работает все это дело через smbcacls вот страничка руководства по ней http://www.samba.org/samba/docs/man/manpages/smbcacls.1.html
Использую ее на линуксе, но посмотрел на FreeBSD она тоже есть.
Еще использую в Linux acl_xattr и у меня нет лишних групп UNIX root итд итп, выставляю только группы которые мне нужны.
Вот пример конфига опять же для линукса http://pastebin.com/bhtbn7qR
Думаю информация будет полезной.
Этот информационный блок появился по той простой причине,
что многие считают нормальным, брать чужую информацию не уведомляя автора
(что не так страшно), и не оставляя линк на оригинал и автора — что более существенно.
Я не против распространения информации — только за. Только условие простое — извольте
подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой,
незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
Если соизволите поставить автора в известность — то вообще почёт вам и уважение.
© lissyara 2006-10-24 08:47 MSK
Комментарии пользователей [10 шт.]