smb.conf

Материал из Lblss.ru
Перейти к: навигация, поиск

Файл конфигурации Samba-сервера /usr/local/etc/smb.conf (FreeBSD)

Содержание

Секция общих настроек

Простой файловый сервер.

[global]
# Кодировки
    dos charset = 866
    unix charset = KOI8-R
    display charset = KOI8-R
# Имя рабочей группы.
    workgroup = TREE
# Уровень определения прав доступа на уровне пользователей.
    security = user
# Использовать файл smbpasswd для хранения паролей вместо passdb.tdb
    passdb backend = smbpasswd
# Имя машины, отображаемое в сетевом окружении.
    server string = srv
# Логгирование.
    log file = /var/log/samba/log.%m
    max log size = 50
    syslog = 0
# Опции сокета.
    socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
# Приоритет данного сервера среди других компьютеров рабочей группы,
# длина пиписьки при выборе мастер-браузера.
    os level = 75
# Пользователи, имеющие привилегии администратора.
    admin users = admin, vk, psiha
# Адреса, с которых разрешено подключение.
    hosts allow = 192.168.0.
# Очевидно, что раз нет домена - нет и мастера.
    domain master = no
# Не стоит становиться сервером паролей для окрестных машин. 
    domain logons = no
# Обычно в простейшей сети WINS не нужен
    wins support = no

Секции файловых шар

В принципе, повторяющиеся параметры можно вынести в секцию global

# Отображаемое имя шары
[pomoyka]
 
# Отображаемое описание шары
    comment = мегахламник
 
# Невидимая шара (не отображается в браузере при просмотре ресурсов сервера)
    browseable = No
 
# Локальный путь расшариваемой директории
    path = /r1/Users
 
# Только для чтения (всем)
    read only = Yes
 
# Можно писать (всем)
    writable = Yes
 
# Гостевого входа нет, требуется аутентификация пользователя
    guest ok = No
 
# Доступ на чтение всем авторизованным пользователям (в том
# числе и гостевым, если они определены)
    public = Yes
 
# Запрещенные типы файлов, удалять без базару
    veto files = /*.avi/*.mp3/*.mp4/*.wav/
    delete veto files = Yes
 
# Шара будет проверяться антивирем, указан файл конфига для проверки
    vfs object = vscan-clamav
    vscan-clamav: config-file = /usr/local/etc/samba-vscan/vscan-clamav.conf
 
# Список пользователей и @групп для входа в шару
    valid users = vi alena nataly @manager
 
# Список пользователей и @групп с правом записи:
    write list = vi alena nataly 
 
 
# Следующий параметр может решить проблему с сообщением вида
# "Файл или папка smb://server/folder не доступна"
# при расшаривании папок из домашней директории юзера.
# Любой вошедший в системе будет представлен этим именем:
    force user = bober
 
# Любой вошедший в системе будет представлять эту группу:
    force group = manager
 
# Файлы будут создаваться с указанными максимальными правами [дефолт = 744]
    create mode = 0664
# Директрии будут создаваться с указанными максимальными правами [дефолт = 755]
    directory mode = 0775
# Имеются так же синонимы для этих двух директив:
    create mask = 0664
    directory mask = 0775
 
# Добавляет указанные привилегии к существующим путем побитового ИЛИ [дефолт = 0000]
# для файлов:
    force create mode = 0664
# для директорий:
    force directory mode = 0775
 
# Разрешается удалять директории, содержащие рид-онли файлы (при наличии прав на запись)
    delete readonly = Yes
 
# Устанавливать бит 'архивный' (0100) [дефолт = Yes]
    map archive = Yes
 
# Устанавливать бит 'системный' (0010) [дефолт = No]
    map system = Yes
 
# Устанавливать бит 'скрытый' (0001) [дефолт = No]
    map hidden = Yes
 
# Скрывать системные файлы и папки *nix (начинающиеся с точки) [дефолт = Yes]. 
# Может быть полезен при расшаривании директорий веб-хостинга 
# с файлами .htasses, .htpasswd и подобными.
    hide dot files = No

Симлинки

Когда то симлинки "куда-угодно" в самба-шарах работали без проблем. Начиная с версии 3.4 политика немного изменилась, теперь симлинки за пределы шары по дефолту не работают.

Чтобы исправить ситуацию, в секции глобальных настроек добавляем:

   unix extensions = no

А в описание шары:

   wide links = yes
   follow symlinks = yes

Рестарт

Раньше после внесения изменений в конфиг требовалось перезапустить Samba-сервер. Теперь в большинстве случаев этого делать не требуется, примерно через минуту конфиг будет перечитан и принят к исполнению. Если же этого не произошло, для FreeBSD выполняем:

# /usr/local/etc/rc.d/samba restart

или

# /usr/local/etc/rc.d/samba reload

Для Linux соответственно: /etc/init.d/smb

Отличия:

  • restart - производит полный рестарт процессов smbd и nmbd со сбросом текущих соединений. Как правило, клиенты сами производят автоматический реконнект к ресурсам, однако если в момент рестарта были открыты файлы, то возможны проблемы с клиентскими приложениями (например, MS Office и особенно 1C);
  • reload - заставляет smbd и nmbd только лишь перечитывать файлы конфигурации без рестарта и сброса соединений. При этом старые соединения продолжают существовать по старым правилам, а ко всем новым соединениям будут применены уже новые правила на основании файлов конфигурации.

После ручной правки файла /etc/group самба ничего не знает об изменениях. Чтобы файл групп перечитался, требуется выполнить рестарт Самбы. После этого необходимо немного отдохнуть :-)

Персональные инструменты