Кратко о настройке Samba

Для расшаривания файлов с сервера под linux в сеть Windows используем Samba сервер.

Установка Samba:

sudo apt-get install samba

Настройка.
Самба хранит все свои настройки в файле /etc/samba/smb.conf. Откроем его для редактирования

sudo nano /etc/samba/smb.conf

Каждый раздел файла начинается с заголовка раздела: [global], [homes], [printers], и т.п.

В [global] определяются глобальные настройки для всего сервера.
Раздел [homes] позволяет удаленным пользователям иметь доступ к своим (и только своим) домашним директориям на сервере. Т. е., если к серверу подключиться пользователь user1, то он будет подключены к своему домашнему каталогу. Для этого он должен быть зарегистрированы на сервере.
В [printers] прописаны настройки для принтеров.

Глобальные настройки:

[global]
; куда записывать логи
log file = /var/log/samba/log.%m
; максимальный размер файла журнала
max log size = 1000

# имя самба сервера в сетевом окружении
netbios name = HomeServer
; коментарий самба сервера
server string = Home Server Ubuntu
; Рабочая группа
workgroup = WORKGROUP
; выступать как контролер домена
domain master = no

; привязка к интерфейсам, на каких слушать, если не указано
;слушает на все интерфейсах, можно указать ай-пи адреса
interfaces = lo, eth2

; подчиняться директивам учетных записей PAM и управлению сессиями
obey pam restrictions = yes
; шифрование паролей между сервером и клиентом
encrypt passwords = true
; параметр сообщают демону smbd что делать с запросами,
; которые не удалось аутентифицировать в UNIX
; bad user – запросы с неправильным паролем будут отклонены, если
; такое имя пользователя существует. Если не существует, то такие запросы
; будут считаться как попытки зайти гостем (guest account).
map to guest = bad user

; определяет будет ли демон nmbd делать запрос к DNS, если WINS
; не смог разрешить NetBIOS имя
dns proxy = no

; параметр заставляет синхронизировать пароль UNIX с паролем SMB при
; изменении зашифрованного пароля SMB в файле smbpasswd. При включении
; этого параметра (yes) от пользователя ROOT вызывается программа,
; определенная в параметре passwd program, что позволяет установить
; новый пароль UNIX без доступа к старому паролю UNIX
unix password sync = yes
; имя программы, которую можно использовать для смены паролей UNIX,
; любые вхождения %u будут заменены именем пользователя
passwd program = /usr/bin/passwd %u
; механизм для хранения информации о пользователях
passdb backend = tdbsam

; уровень отладки журналов событий, которые будут записываться
; в системный syslog, 0 - события LOG_ERR, 1 - LOG_WARNING,
; 2 — LOG_NOTICE, 3 - LOG_INFO.
syslog = 0

; режим работы Samba:
; share - уровень ресурсов,
; user - уровень пользователей, доступ по логин-паролю,
; domain - домен,
; server - сервер паролей,
; ads - Active directory
security = user

; не аутентифицированные пользователи получают доступ к общим
; ресурсам пользователей
usershare allow guests = yes

panic action = /usr/share/samba/panic-action %d
os level = 20

; если включено, для смены паролей будет использован PAM, вместо
; программы указанной в параметре passwd program
pam password change = yes

; разрешаем доступ для всех со своей подсетки и локалхоста
hosts allow = 192.168.10. 127.

; пользователь с root-правами
admin users = user1

; выступать сервером времени
time server = yes

Основные настройки сделаны. Теперь расшарим нужные папки.

Расшариваем домашние папки пользователей

[HOMES]
; комментарий
comment = Home directories
; путь к папке, %U = имя пользователя
path = /home/samba/homes/%U
; только для чтения?
read only = no
; вход с паролем?
public = no
; запись разрешена?
writable = yes
; права создаваемых файлов и папок
create mask = 0600
directory mask = 0700
; отображать в списке ресурсов в сетевом окружении?
browseable = no

Далее расшариваем нужные папки. Для каждой папки можно определить свои параметры доступа. Для этого дописываем в конец конфиг-файла smb.conf разделы как представлено в примере ниже.

Пример:

; создадим расшаренную папку files
[files]
; комментарий к создаваемой папке
comment = Media files
; путь к папке
path = /home/user1/files
; будем разрешать доступ только по паролю
public = yes
; не видно в сетевом окружении всем кроме владельцев
printable = no
; запрещаем запись всем
writable = no
; и разрешаем запись для user1 и пользователям из группы adm
write list = user1 @adm

По аналогии создаются все остальные шары.

Для добавления пользователей в Samba делаем следующее:
smbpasswd -a username

Вам будет предложено ввести пароль, пользователь будет добавлен в базу, теперь необходимо включить этого пользователя.
smbpasswd -e username

Для проверки правильности сделанных настроек выполните команду
testparm

если testparm сообщает об отсутствии проблем, то smbd правильно загрузит файл настроек.

Не забудьте перезапустить Samba после изменения конфиг-файла.
sudo /etc/init.d/samba restart

Если будете расшаривать внешние устройства, нтфс диски и т. д., не забудьте добавить пользователя в группу plugdev.

После того как вы настроите самбу как вам нужно, выполните в терминале команду
testparm
Результатом будет вывод состояния smb-сервера и список расшаренных ресурсов. Если настройки сделаны не правильно, вы увидите сообщение об ошибке, из которой легко поймете, где ошиблись.
Будем считать, что у вас есть сервер с ip-адресом 192.168.1.1 и ваш рабочий компьютер с адресом 192.168.1.2
Пропингуйте сервер с рабочего компьютера:
ping 192.168.1.1
Также пропингуйте рабочий компьютер с сервера:
ping 192.168.1.2
Если пинги идут, значит с сетью все в порядке. Если пинги не проходят, проверьте ваш файл /etc/hosts. Также проблема может быть в DNS-сервере (если он у вас установлен), в роутере, хабе, кабелях.

Если пинги идут, но вы все еще не видите расшаренные папки, выполните команду
smbclient -L 192.168.1.1
Вы должны увидить список доступных расшаренных ресурсов. Если вы получите сообщение «Bad password»,
проверьте, параметры hosts allow, hosts deny и valid users в файле smb.conf. Попробуйте временно закоментировать их.

Выполнение этих простых тестов, позволяет устранить большинство проблем, связанных с настройкой и использование Samba.

Автор статьи – Ильдар Галиуллин

Закладка Постоянная ссылка.

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *