You are here

Настройка файлового сервера Samba на Debian: часть третья

Настройка файлового сервера Samba на Debian
Первые две статьи рассказывали об установке системы Debian и пакета Samba. Данная статья "Настройка samba server" - является "основной" и "завершающей". От вас требуется минимум знаний при работе в Linux системах, но при этом необходимо проявить внимание и желание по настройке своего первого Samba server. Приступим...

1. Заходим в систему под root. Создадим общий каталог для будущих файлов и папок пользователей в директории /home. А так же конкретную папку files, для определённой группы пользователей:

root@sambaserv:/# (изначальное положение, корень!)
root@sambaserv:/# cd /home (переходим в папку /home)
root@sambaserv:/home# mkdir samba (создаем папку samba - как начальную для всех папок и файлов)
root@sambaserv:/home# cd /samba (переходим в папку /samba)
root@sambaserv:/home/samba# mkdir files (создаем папку files - для конкретной группы)
root@sambaserv:/home/samba# ls (проверяем её появление)
files (результат после ввода команды ls)


2. Данный пункт читаем, если у вас нет ещё нужного вам пользователя (иначе сразу п. 3). Создадим нового пользователя:

root@sambaserv:/# useradd test (где, test - это имя пользователя. Можете указать своё: vasya, petya и т.д.)
root@sambaserv:/# passwd test (создадим пароль для этого пользователя)
Введите новый пароль UNIX: (вводите новый пароль на пользователя test)
Повторите ввод нового пароля UNIX: (повтор)
passwd: пароль успешно обновлён


3. Создадим группу, в которую будут входить нужные нам пользователи (групп - можно создать много, по аналогии):

root@sambaserv:/# groupadd new (добавили группу new)
root@sambaserv:/# less /etc/group (проверили появление нашей, будет большой список всех групп)


4. Добавим нашего пользователя в группу:

root@sambaserv:/# usermod -a -G new test (добавили пользователя test в группу new)
root@sambaserv:/# less /etc/group (проверили привязку пользователя к группе)
…все группы системы...
new:x:1002:test (результат проверки)
или
root@sambaserv:/# cat /etc/group |grep new (или этой командой: проверили привязку пользователя к группе)
new:x:1002:test (результат проверки)


5. Добавим нашего пользователя в Samba:

root@sambaserv:/# smbpasswd -a test (пользователь test)
New SMB password: (Samba просит новый пароль на пользователя test. Указываем такой же как и в системе Debian)
Retype new SMB password: (повтор)
Added user test. (сообщение о добавлении пользователя)
root@sambaserv:/# (выкидывает обратно к корню)


6. Возвращаемся к нашей папке files и проверяем кто имеет право доступа к ней:

root@sambaserv:/# (начальная позиция)
root@sambaserv:/# cd /home/samba (переходим в папку samba)
root@sambaserv:/home/samba# ls (смотрим какая папка внутри)
share (ответ по команде ls)

root@sambaserv:/home/samba# ls -la (вводим команду которая отразит права на папки/файлы находящиеся в основной папке samba)
drwxr-xr-x 4 root root 4096 сен 1 22:21 . (результат)
drwxr-xr-x 5 root root 4096 авг 29 19:48 .. (результат)
drwxr-xr-x 2 root root 4096 сен 1 22:21 files (результат)


Немного теории:

Это значение "drwxr-xr-x" можно представить как "d [rwx [r-x [r-x". Каждый блок отвечает за конкретного пользователя/группу. Подробнее:
  • d - директория
  • [rwx - права владельца root
  • [r-x - права группы
  • [r-x - права всех остальных, кто обращается к папке
Что означает rwx?
  • r - чтение
  • w - запись
  • x - выполнить


7. Дадим группе "new" право доступа к этой папке с распределением прав:

root@sambaserv:/home/samba# chown root:new files (присвоим группу new к папке, где root-владелец, new-группа, files-папка)
root@sambaserv:/home/samba# ls -la (Проверяем права)
drwxr-xr-x 4 root root 4096 сен 1 22:21 . (результат)
drwxr-xr-x 5 root root 4096 авг 29 19:48 .. (результат)
drwxr-xr-x 2 root new 4096 сен 1 22:21 files (значение "root root" сменилось на "root new")

root@sambaserv:/home/samba# chmod 770 files/ (определяем права 770 для root/группа/все, см. п. 6 "Немного теории")
root@sambaserv:/home/samba# ls -la (проверяем результат)
drwxr-xr-x 4 root root 4096 сен 1 22:21 . (результат)
drwxr-xr-x 5 root root 4096 авг 29 19:48 .. (результат)
drwxrwx--- 2 root new 4096 сен 1 22:21 files ("drwxr-xr-x" сменилось на "drwxrwx---", т.е. мы добавили группе права на запись. Остальным сняли права, кроме root)


8. Возвращаемся в корень и заполняем файл конфигурации Samba:

root@sambaserv:/# nano /etc/samba/smb.conf (smb.conf - файл конфигурации Samba)

В открывшемся редакторе nano, файл "smb.conf" будет заполнен. Стираем все строчки, либо оставляем закомментированными, если ориентируетесь в nano:


GNU nano 2.2.6 Файл: /etc/samba/smb.conf

dos charset = cp1251
unix charset = utf8

workgroup = WORKGROUP
netbios name = debianserv
name resolve order = wins bcast
interfaces = eth0 192.168.0.0/24
hosts deny = ALL
hosts allow = 192.168.0. 127.0.0.1
server string = Samba Server 4

log file = /var/log/samba/%m.log
max log size = 1024

security = user
encrypt passwords = true
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192
SO_SNDBUF=8192

local master = yes
os level = 255
preferred master = yes

[files
comment = Test gruppi
path = /home/samba/files
valid users = @new
force group = new
create mask = 0770
directory mask = 0770
writable = yes


* Для любых действий в редакторе nano добавляем Ctrl + "Буква". В нашем случае: "Ctrl + O" - "Enter" - "Ctrl + X".

9. Перезагружаем Samba server:

root@sambaserv:/# /etc/init.d/samba restart


10. Перед проверкой работы, необходимо настроить работу сетевой карты. В фале прописаны параметры для стандартного роутера D-link с адресом "192.168.0.1":

root@sambaserv:/# nano /etc/network/interfaces


Редактируем файл под свои параметры сети!

GNU nano 2.2.6 Файл: /etc/network/interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet static
address 192.168.0.15
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 192.168.0.1



* Из параметров файла, виден присвоенный сетевой адрес "address 192.168.0.15"


Настройка Samba server завершена, проверяем...


настройка samba server

настройка samba server

настройка samba server

настройка samba server


Немного информации:


Как установить права доступа на запись в папку и на все подпапки и файлы:

chmod -R 755 /home/vasya
смена прав, -R рекурсивно, т.е. изменит и то, что внутри каталога vasya
циферки - это три отдельных атрибута:
  • 7 - rwx - читать, писать, выполнять
  • 6 - rw- - читаь, писать
  • 5 - r-x - читать, выполнять
  • 4 - r-- - читать
  • 3 - -wx - писать, выполнять
  • 2 - -w- - писать
  • 1 - --x - выполнять
  • 0 - --- - ничего нельзя делать


Авторское право: http://linuxsql.ru/