Установка и настройка Samba в Debian

Что такое Samba.

Samba  это набор UNIX-приложений, которые умеют работать с протоколом SMB (Server Message Block). Многие операционные системы, включая Windows и OS/2 используют SMB для организации сетевого клиент-серверного взаимодействия. Благодаря поддержке этого протокола, Samba позволяет UNIX-серверам взаимодействовать с тем же сетевым протоколом, что и семейство ОС Microsoft Windows.

Пакет Samba для Debian.

Этот пакет содержит все компоненты необходимые для превращения вашего Debian-сервера в мощный файл- и принт-сервер.

В настоящий момент, пакеты Samba для Debian включают в себя:

  • samba - файл- и принт- сервер для UNIX.
  • samba-common - общие файлы Samba, используемые как сервером, так и клиентом.
  • smbclient - простой клиент для Unix.
  • swat - Samba Web Administration Tool, веб-клиент.
  • samba-doc - документация по Samba.
  • smbfs - команды монтирования и отмонтирования для smbfs (ядра версий 2.2.x и выше)
  • libpam-smbpass - подключаемый модуль авторизации для базы паролей SMB.
  • libsmbclient - разделяемая библиотека, которая позволяет приложением общаться с SMB серверами.
  • libsmbclient-dev - разделяемые библиотеки libsmbclient.
  • winbind - служба для получения информации о пользователях и группах от серверов на Windows NT.
  • python2.3-samba - модуль для python, дающий доступ к различным аспектам Samba.

Есть возможность устанавливать определенный набор из этих пакетов в зависимости от ваших запросов. На пример, чтобы получить доступ к другим SMB-серверам вам понадобятся только пакеты smbclient и samba-common.

Установка Samba в Debian.

#aptitude install samba samba-client

Затем создаем директорию, доступ к которой будем предоставлять с помощью Samba:

# mkdir -p /samba/movie /samba/polzovatel

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

# useradd polzovatel

Теперь создаем в samba пароль для этого пользователя:

# smbpasswd -a polzovatel

Настройка Samba в Debian.

Правим конфигурационный файл samba с помощью команды:

# nano /etc/samba/smb.conf

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

Далее привожу пример рабочей конфигурации. Основной блок:

[global]
workgroup = WORKGROUP
netbios name = server
server string = lan file server
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192

dns proxy = no
wide links = yes
max log size = 1000

local master = yes
os level = 254
preferred master = yes

username map = /etc/samba/smbusers
name resolve order = hosts wins bcast
wins support = yes

security = share
browseable = yes

interfaces = lo, eth1
bind interfaces only = true

В основном блоке указываем имя рабочей группы (WORKGROUP) и имя сервера, которое будет видно в системах клиентов, а также комментарий. Чтобы пользователи могли видеть сервер, их системы должны быть настроены на использование той же рабочей группы. socket options - параметры для улучшения производительности, можно поиграться размерами буферов, числа должны быть кратны 1024. local master - позволяет указать, является ли сервер главным в сети. security = share - позволяет включить по умолчанию доступ без пароля.

Далее описываются отдельно все директории, к которым открыт доступ:

[movie]
path = /samba/movie
readonly = No
guest ok = Yes

В квадратных скобках пишется имя директории, которое будет видно пользователям. Данная конфигурация позволяет доступ всем без пароля и с возможностью записи. Классическая файлопомойка.

[polzovatel]
path = /samba/polzovatel
comment = Polzovatel private folder
security = user
valid users = polzovatel

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

Проверить правильность конфигурационного файла можно командой:

# testparm

После настройки необходимо перезапустить samba:

# /etc/init.d/samba restart

Описание всех параметров на русском языке можно найти на smb-conf.ru.

Проверка работоспособности samba-сервера:

# smbclient -L //server -U polzovatel

Если после тестирования оказалось, что samba работает не на столько хорошо, как хотелось бы, то попробуйте настроить nfs-сервер.

Наверх

Опубликовано