Комментарии 36
Хороший набор утилит значительно снижает время настройки сервера
Только стоит помнить, что ограничение на длину имени файла (если не ошибаюсь, с учетом пути) в ~два раза меньше, чем под Windows (для русского языка).
Под линуксами длина имени 255байт. Под виндовс 255символов UTF-16.
При использовании самбы в офисе неизбежно возникнут проблемы с длинными русскими именами файлов на этапе миграции с виндовс-сервера.
Под линуксами длина имени 255байт. Под виндовс 255символов UTF-16.
При использовании самбы в офисе неизбежно возникнут проблемы с длинными русскими именами файлов на этапе миграции с виндовс-сервера.
Под линуксом лимит на длину пути — 4096 байта, если нужно больше — перекомпилируйте ядро
Под виндой, если использовать UNC (\\?\, не все программы умеют, например Double Commander — нет, а Total Commander — да) — около 32767, если обычным путем — 255.
https://github.com/torvalds/linux/blob/master/include/uapi/linux/limits.h
#define NAME_MAX 255 /* # chars in a file name */
#define PATH_MAX 4096 /* # chars in a path name including nul */
Под виндой, если использовать UNC (\\?\, не все программы умеют, например Double Commander — нет, а Total Commander — да) — около 32767, если обычным путем — 255.
Материал поражает наличием комментария к каждой банальной команде, при отсутствии последовательного объяснения теории и всего происходящего.
Из крайности в крайность: то вы предполагаете, что читатель способен самостоятельно создать виртуальную машину в vSphere и установить операционную систему, то объясняете, как выйти из vi, при установленном несколько шагов назад mcedit. То вы выставляете права 777, выключаете SELinux, и монтируете директории логов и конфигурации Samba в другую директорию, то рекомендуете выполнить команду SELinux setsebool с разными параметрами, оставляете конфигурацию и логи Kerberos, nsswitch и cron'а в директориях по-умолчанию, редактируете /etc/samba/smb.conf и предлагаете смотреть логи в /var/log/samba. То не упоминаете о необходимости добавления на виртуальную машину второго диска и отказываетесь использовать квоты, то форматируете неизвестно откуда взявшийся /deb/sdb, и создаёте и подключаете аж два 100-мегабайтных псевдо диска в одну и ту же директорию. Бедная /samba/guest описывается аж тремя способами в smb.conf в двух местах в тексте, система инициализации у вас то SysV, то Systemd, домен то fqdn.com, то contoso.com, группа «domain users» то может читать и писать, то только читать.
Не статья, а бардак, одним словом.
Опытный инженер пойдёт читать официальную документацию. Малоопытному, простите, вредно читать и использовать эту статью.
Из крайности в крайность: то вы предполагаете, что читатель способен самостоятельно создать виртуальную машину в vSphere и установить операционную систему, то объясняете, как выйти из vi, при установленном несколько шагов назад mcedit. То вы выставляете права 777, выключаете SELinux, и монтируете директории логов и конфигурации Samba в другую директорию, то рекомендуете выполнить команду SELinux setsebool с разными параметрами, оставляете конфигурацию и логи Kerberos, nsswitch и cron'а в директориях по-умолчанию, редактируете /etc/samba/smb.conf и предлагаете смотреть логи в /var/log/samba. То не упоминаете о необходимости добавления на виртуальную машину второго диска и отказываетесь использовать квоты, то форматируете неизвестно откуда взявшийся /deb/sdb, и создаёте и подключаете аж два 100-мегабайтных псевдо диска в одну и ту же директорию. Бедная /samba/guest описывается аж тремя способами в smb.conf в двух местах в тексте, система инициализации у вас то SysV, то Systemd, домен то fqdn.com, то contoso.com, группа «domain users» то может читать и писать, то только читать.
Не статья, а бардак, одним словом.
Опытный инженер пойдёт читать официальную документацию. Малоопытному, простите, вредно читать и использовать эту статью.
Подробный полезный туториал.
Скажите, какие либо подводные камни встречались? (В комментариях упоминают ограничение на длину имени файла)
Скажите, какие либо подводные камни встречались? (В комментариях упоминают ограничение на длину имени файла)
После отключения SMB1 в домене, перестало пускать доменных пользователей на шары, вывел машину из домена и завел обратно, все пофиксилось.
Я линукс использую для хранения дистрибутивов и временных файлов, не ИТ пользователи с этими ресурсами не работаю, откуда тут камни?)))
Я линукс использую для хранения дистрибутивов и временных файлов, не ИТ пользователи с этими ресурсами не работаю, откуда тут камни?)))
Со временем запись в DNS, сформированная после net ads join, протухает.
Нужно в cron (ну или куда там) добавить «net ads dns register -P»
Нужно в cron (ну или куда там) добавить «net ads dns register -P»
По отключению selinux без перезагрузки:
проверить состояние:
$ getenforce
отключить без перезагрузки:
$ setenforce 0
проверить состояние:
$ getenforce
отключить без перезагрузки:
$ setenforce 0
отключить без перезагрузки:
$ setenforce 0
Как я понимаю после перезагрузки selinux будет снова активным…
да, поэтому в конфиг, как вы написали, тоже надо внести изменения
$ setenforce 0 переводит selinux в permissive режим (аудит ведется, действия записываются в журнал, но правила безопасности не применяются), в котором он находится до перезагрузки, либо до setenforce 1.
Поэтому перманентное отключение делается через конфиг-файл.
Поэтому перманентное отключение делается через конфиг-файл.
Как правило данную возможность используют, чтобы получить список необходимых правил для SeLinux. т.е. выполняем:
# setenforce 0
Что то творим и настраиваем. У нас все работает и мы хотим врубить SeLinux.
Прежде делаем так:
# cat /var/log/audit/audit.log | grep denied | audit2allow -M modul_name
# semodule -i modul_name.pp
# setenforce 1
modul_name — имя модуля который подключит необходимые правила. По audit.log можно еще грепнуть по имени сервиса который настраиваем. Я как правило просто чищу файл перед началом сбора статистики.
# setenforce 0
Что то творим и настраиваем. У нас все работает и мы хотим врубить SeLinux.
Прежде делаем так:
# cat /var/log/audit/audit.log | grep denied | audit2allow -M modul_name
# semodule -i modul_name.pp
# setenforce 1
modul_name — имя модуля который подключит необходимые правила. По audit.log можно еще грепнуть по имени сервиса который настраиваем. Я как правило просто чищу файл перед началом сбора статистики.
Да, так работает! ^_^
Я раньше пытался создать «правило» вот так, не получалось…
П.С.
установка audit2allow…
П.П.С.
Странно, я решил все проверить еще раз на VM где я не пытался настроить SELINUX, я его включил — после чего winbind начал работать без бубна… 0_о
Я раньше пытался создать «правило» вот так, не получалось…
grep winbind /var/log/audit/audit.log | audit2allow -m somenameofmodule
П.С.
установка audit2allow…
yum install policycoreutils-python
П.П.С.
Странно, я решил все проверить еще раз на VM где я не пытался настроить SELINUX, я его включил — после чего winbind начал работать без бубна… 0_о
По интеграции с MS AD: пошаговая от производителя
В остальном — как Лиссяру перечитал, с поправкой на CentOS. Ностальгия, однако.
В остальном — как Лиссяру перечитал, с поправкой на CentOS. Ностальгия, однако.
А по какой причине необходимо было отключить SELinux?
мне кажется стоит писать про:
semanage fcontext -at samba_share_t "/path/to/share(/.*)?"
А отключение SELinux не такая уж и хорошая затея!
мне кажется стоит писать про:
semanage fcontext -at samba_share_t "/path/to/share(/.*)?"
А отключение SELinux не такая уж и хорошая затея!
Я такое ещё году в 11-м писал :)))
Принуждение к NTLM2 дает больший эффект, чем принуждение к SMB2
Для CentOs можно ещё одним официальным руководством воспользоваться, от другого производителя: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Windows_Integration_Guide/index.html
Мне кажется или все-таки начиная c CentOS 7* команды ifconfig и chkconfig упразднены?
В минимальной установке уже нет ifconfig, но можно поставить.
Случайно не знаете, почему Редхат-гуру, Сандер Ван Ваг (Sander van Vugt) крайне не рекомендовал в своих курсах пользоваться утилитой ifconfig, а делать упор именно на nmcli/nmtui?
Потому что nmcli более навороченный и ему учат в курсе, а nmtui интуитивно понятен и сэкономит время на экзамене.
Поражаюсь вашей усидчивости — у меня учебник пошел намного быстрее, тем более курс построен вокруг лаб и зубрёжки команд.
Поражаюсь вашей усидчивости — у меня учебник пошел намного быстрее, тем более курс построен вокруг лаб и зубрёжки команд.
потому что она depricated начиная с RHEL6
это псевдоним к ip
причём довольно криво работающий
это псевдоним к ip
причём довольно криво работающий
Sander так же говорил, что рекомендует пользоваться nmcli, потому что nmtui переодически вываливается с ошибкой.
net-tools ставится как зависимость для open-vm-tools, а chkconfig и service сделали алиасами для systemclt.
Про SeLinux и Samba
Насколько я понимаю это глобальные разрешения:
# setsebool -P samba_export_all_ro=1
# setsebool -P samba_export_all_rw=1
но так не совсем правильно поступать… Для конкретной директории доступ к которой необходимо предоставить Samba делается так:
# semanage fcontext -a -t samba_share_t '/mnt/storage/files(/.*)?'
# restorecon -Rv '/mnt/storage/files'
Если Вам нужно подружить одну директорию с Samba и еще что либо (Apache, VSFtpd) то делаем так:
# semanage fcontext -a -t public_content_rw_t '/mnt/storage/web(/.*)?'
# restorecon -Rv '/mnt/storage/web'
Далее добавляем сами сервисы:
# setsebool -P allow_smbd_anon_write 1
# setsebool -P allow_httpd_anon_write 1
# setsebool -P allow_ftpd_anon_write 1
Также есть public_content_t если запись не нужна.
Насколько я понимаю это глобальные разрешения:
# setsebool -P samba_export_all_ro=1
# setsebool -P samba_export_all_rw=1
но так не совсем правильно поступать… Для конкретной директории доступ к которой необходимо предоставить Samba делается так:
# semanage fcontext -a -t samba_share_t '/mnt/storage/files(/.*)?'
# restorecon -Rv '/mnt/storage/files'
Если Вам нужно подружить одну директорию с Samba и еще что либо (Apache, VSFtpd) то делаем так:
# semanage fcontext -a -t public_content_rw_t '/mnt/storage/web(/.*)?'
# restorecon -Rv '/mnt/storage/web'
Далее добавляем сами сервисы:
# setsebool -P allow_smbd_anon_write 1
# setsebool -P allow_httpd_anon_write 1
# setsebool -P allow_ftpd_anon_write 1
Также есть public_content_t если запись не нужна.
Вот интересная статья про корзину, но я еще не пробовал настроить — Сохранение удаленных файлов Samba в корзине.
Да и на serveradmin.ru есть и другие интересные материалы.
Да и на serveradmin.ru есть и другие интересные материалы.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Файловый сервер SAMBA на базе Linux CentOS 7