Простой Samba-сервер на Debian 10.8 и Ubuntu Server 20.10

Краткая инструкция о том, как настроить папки общего доступа в локальной сети для Windows-машин на примере Debian и Ubuntu Server.

Устанавливаем Самбу

# apt install samba

В Debian система задаст вопрос об использовании smb.conf настроек WINS из DHCP:

Отвечаем <Нет>, так как нам это не нужно и продолжаем установку.

Создадим каталог /home/smbshare, а в нём — ещё 2 каталога: /home/smbshare/ro_folder — здесь будут храниться файлы с правами только для чтения и /home/smbshare/rw_folder — файлы с правами для чтения и записи

# mkdir /home/smbshare /home/smbshare/{ro_folder,rw_folder}

Зададим этим двум каталогам соответствующие права:

# chmod 755 /home/smbshare/ro_folder/
# chmod 777 /home/smbshare/rw_folder/

Теперь переименуем файл /etc/samba/smb.conf в smb.conf.old, созданный установщиком самбы по умолчанию, чтобы сохранить его на всякий случай и создадим новый

# mv /etc/samba/smb.conf /etc/samba/smb.conf.old
# touch /etc/samba/smb.conf

откроем его

# nano /etc/samba/smb.conf

и впишем в него такие строчки:

[GLOBAL]
workgroup = VIRTUAL
security = USER
available = Yes
browseable = Yes
server string = MyServer
netbios name = SambaServer

[readonly]
path = /home/smbshare/ro_folder
read only = Yes
guest ok = No

[rw]
path = /home/smbshare/rw_folder
valid users = @smbgroup
guest ok = No
read only = No

В секции [rw] в параметре valid users указываются группы или пользователи, которые имеют доступ к этому каталогу.

Затем проверим его на корректность перед запуском служб Самбы

# testparm /etc/samba/smb.conf

или

# testparm -a 

Для доступа к гостевой папке без логина и пароля (если такая нужна) необходимо создать каталог, к примеру /home/smbshare/public и задать права 777 для чтения и записи в неё, и в разделе [GLOBAL] дописать строчку

map to user = Bad Password

и также создать новую секцию [public], в которой будут указаны следующие параметры:

[public]
path = /home/smbshare/public
read only = No
writeable = Yes
guest ok = Yes

Далее переходим к созданию групп и пользователей Самбы.

Создадим группу smbgroup

# groupadd smbgroup

и пользователя smbuser

# useradd smbuser

Включаем пользователя smbuser в группу smbgroup

# usermod -aG smbgroup smbuser

и задаём для него пароль для Самбы

# smbpasswd smbuser

или

# smbpasswd -a smbuser

После этого запускаем необходимые службы

# systemctl start smbd
# systemctl start nmbd

и включаем их в автозагрузку

# systemctl enable smbd.service
# systemctl enable nmbd.service

На этом настройка Samba-сервера закончена. Можно с других машин в сети открывать \\SambaServer, ввести логин и пароль пользователя Самбы и в результате будут отображены ресурсы сервера.

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

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