Как установить и настроить сервер Samba в Ubuntu в docker и без

Установка и настройка Samba в Ubuntu (без Docker)

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

sudo apt update
sudo apt install samba -y

2. Настройка конфигурации

Отредактируйте файл /etc/samba/smb.conf:

sudo nano /etc/samba/smb.conf

Добавьте в конец файла пример общей папки:

[shared]
   comment = Общая папка
   path = /srv/samba/shared
   browseable = yes
   read only = no
   guest ok = no
   valid users = @sambashare
   create mask = 0660
   directory mask = 0770

3. Создайте директорию и настройте права

sudo mkdir -p /srv/samba/shared
sudo groupadd sambashare
sudo chgrp sambashare /srv/samba/shared
sudo chmod 2770 /srv/samba/shared

4. Добавьте пользователя Samba

sudo useradd -M -G sambashare username
sudo smbpasswd -a username

5. Перезапустите Samba

sudo systemctl restart smbd nmbd
sudo systemctl enable smbd nmbd

6. Настройте фаервол (если используется)

sudo ufw allow samba

Установка Samba в Docker

1. Установите Docker (если не установлен)

sudo apt install docker.io -y
sudo systemctl enable --now docker

2. Создайте директории

mkdir -p ~/samba/{config,data}

3. Запустите контейнер Samba

docker run -d \
  --name samba \
  -p 139:139 \
  -p 445:445 \
  -v ~/samba/data:/data \
  -v ~/samba/config:/config \
  -e "USERID=1000" \
  -e "GROUPID=1000" \
  -e "TZ=Europe/Moscow" \
  --restart unless-stopped \
  dperson/samba \
  -u "username;password" \
  -s "shared;/data/shared;yes;no;no;username"

4. Создайте общую папку

mkdir -p ~/samba/data/shared
chmod 777 ~/samba/data/shared  # Временное упрощение прав для теста

Проверка подключения

Для любого способа проверьте доступ:

smbclient //localhost/shared -U username

Windows: \\IP-адрес-сервера\shared


Основные различия методов

КритерийБез DockerС Docker
ИзоляцияЗависит от системыПолная изоляция контейнером
ОбновленияЧерез пакетный менеджерОбновление образа контейнера
КонфигурацияРучное редактирование smb.confЧерез переменные среды и параметры
ПереносимостьЗависит от системыЛегкий перенос между серверами

Советы:
1. Для продакшена используйте SSL/TLS для Samba
2. Регулярно обновляйте пароли пользователей
3. Настройте резервное копирование конфигурации
4. Для Docker используйте docker-compose для удобства управления

Рейтинг
( Пока оценок нет )
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: