Файловый сервер Samba

В настройке файлового сервера сложностей как правило не возникает, в данной статье я рассмотрю установку и настройку сервера samba на ubuntu. Если появиться необходимость, то буду публиковать, по мере возможностей, настройку востребованную читателями данного блога. И так, все эксперименты проводились на Ubuntu 12.04 x86_64, приступим.
Устанавливаем сервер:
sudo apt-get install samba

Сервер установлен, создаем папки которые будем шарить и вешаем на них права:

sudo mkdir /home/share
sudo mkdir /home/Public_Folder
sudo mkdir /home/Server
sudo chmod 777 /home/share
sudo chmod 777 /home/Public_Folder
sudo chmod 777 /home/Server
sudo chown nobody:nogroup /home/share
sudo chown nobody:nogroup /home/Public_Folder
sudo chown nobody:nogroup /home/Server

Забекапим конфиг на всякий пожарный:

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

Переходим непосредственно к настройке конфига, ниже я попытаюсь пояснить некоторые моменты, которые необходимо учитывать. И так, примерный конфиг:

sudo nano /etc/samba/smb.conf

[global]
   workgroup = WORKGROUP
   server string = Files Server
   map to guest = Bad User
   obey pam restrictions = Yes
   pam password change = Yes
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
   unix password sync = Yes
   syslog = 0
   log file = /var/log/samba/log.%m
   max log size = 1000
   dns proxy = No
   usershare allow guests = Yes
   panic action = /usr/share/samba/panic-action %d
   idmap config * : backend = tdb

[Share]
   comment = Public Share
   path = /home/share
   read only = No
   create mask = 0755
   guest ok = Yes

[Public Folder]
   comment = Public Share
   path = /home/Public_Folder
   read only = No
   create mask = 0755
   guest ok = Yes

[Server]
   comment = Hiden Share for BackUp
   path = /home/Server
   read only = No
   create mask = 0755
   guest ok = Yes
   hosts allow = 192.168.0.20, 192.168.0.33
   browseable = No

Теперь объяснить, что к чему:
workgroup - Название рабочей группы, если будет отличатся, то шары не увидите;
comment - Комментарий к шаре;
path - Путь к шаре;
read only - Разрешить только чтение;
create mask - Маска файла при записи в шаре;
guest ok - Разрешить гостевой доступ;
hosts allow - Разрешить вход папку с IP-адресов;
browseable - Разрешить просмотр через проводник;
Объясню некоторые нюансы

  • папка /home/share (в Windows будет видна как Share) - для всех, запись, чтение и удаление разрешено всем
  • папка /home/Public_Folder(в Windows будет видна как Public Folder) - для всех, запись, чтение и удаление разрешено всем
  • папка /home/Server (в Windows будет не видна) - она предназначена для администраторов, запись, чтение и удаление разрешено только для компьютеров с определенным IP-адресом
    Теперь надо разобраться с пользователями. Samba использует пользователей которые уже есть в системе, возьмем для примера имя user, допустим что он уже есть в системе, надо внести его в базу данных SMB и назначить пароль для доступа к общим ресурсам, сделаем это командой:
    smbpasswd -a user

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

    smbpasswd -e user

    Создадим псевдоним для имени пользователя user что бы облегчить себе доступ с Windows машины на которой у нас например пользователь с именем Admin, для этого создадим и отредактируем файл /etc/samba/smbusers:

    sudo touch /etc/samba/smbusers
    sudo nano /etc/samba/smbusers

    Вбиваем туда:

    # Unix_name = SMB_name1 SMB_name2
    user = Admin

    На этом настройка закончена, перезапустите Samba.

    /etc/init.d/smbd restart
  • Оцените блог: 
    Средняя: 3.5 (215 оценки)