📁 $ samba – Настройка на Samba в Debian 12

Това ръководство обяснява подробно и разбираемо как да настроиш Samba сървър на Debian 12, използвайки директория /rack с три поддиректории: shared, martin и marian. Настройката ще позволи:

1️⃣ Инсталиране на Samba

sudo apt update
sudo apt install samba samba-common-bin

2️⃣ Създаване на структурата на папките

sudo mkdir -p /rack/shared
sudo mkdir -p /rack/martin
sudo mkdir -p /rack/marian

3️⃣ Създаване на потребители и пароли

sudo adduser martin
sudo smbpasswd -a martin

sudo adduser marian
sudo smbpasswd -a marian

4️⃣ Права върху папките (Linux)

sudo chown -R nobody:nogroup /rack/shared
sudo chmod -R 0777 /rack/shared

sudo chown -R martin:martin /rack/martin
sudo chmod -R 0755 /rack/martin

sudo chown -R marian:marian /rack/marian
sudo chmod -R 0755 /rack/marian

5️⃣ Конфигурация на /etc/samba/smb.conf

В Samba освен валидните потребители, можеш да зададеш и кой да има read only, write only или write list достъп. Виж примера по-долу:

[shared]
  path = /rack/shared
  browseable = yes
  read only = no
  guest ok = yes
  create mask = 0777
  directory mask = 0777

[martin]
  path = /rack/martin
  valid users = martin @users
  read only = yes
  write list = martin
  create mask = 0755
  directory mask = 0755

[marian]
  path = /rack/marian
  valid users = marian @users
  read only = yes
  write list = marian
  create mask = 0755
  directory mask = 0755

💡 Обяснение на параметрите:

6️⃣ Рестартиране на Samba услугата

sudo systemctl restart smbd.service

7️⃣ Достъп от Windows

\\IP-на-сървъра\shared
\\IP-на-сървъра\martin
\\IP-на-сървъра\marian

„Стабилната споделена структура е основа за всяка дигитална работилница. Samba е мостът между машини – но и между хора.“

root – Тони Ангелчовски

🔍 Нужно ли е @users?

При конфигурация като тази:

[martin]
  path = /rack/martin
  valid users = martin @users
  read only = yes
  write list = martin

🔹 martin е конкретният потребител.
🔹 @users означава, че всички потребители в групата users ще имат достъп (обикновено read-only).

✅ Препоръчително ли е?

🛠️ Оптимален пример:

[martin]
  path = /rack/martin
  valid users = martin
  read only = yes
  write list = martin
  create mask = 0755
  directory mask = 0755

📌 Така martin може да пише, а останалите нямат достъп, освен ако не бъдат изрично добавени.

– 12.04.2025

root – Тони Ангелчовски