Replace Samba.md

This commit is contained in:
Administrator 2026-03-19 17:42:30 +05:00
parent e077001be2
commit 683fd0c6e0

View File

@ -1,243 +1,219 @@
# 🔒 Samba Security Hardening # 🔒 Samba Security Hardening
**Дата завершения:** 19 марта 2026 📚 **Полная документация по безопасной настройке Samba в домашней инфраструктуре**
**Инфраструктура:** Proxmox (LXC + Docker)
**Домен:** zailon.ru ---
**Админ:** Zailon (ноутбук BunkerZ)
## 📑 Содержание
---
- [🎯 Цели](#-цели)
## 🎯 Цели работы - [📂 Шары](#-шары)
- [📁 Права файловой системы](#-права-файловой-системы)
1. Настройка безопасного доступа к Samba-шарам на серверах `media` и `games`. - [🖥️ Клиенты](#-клиенты)
2. Настройка прав на уровне файловой системы. - [✅ Проверка](#-проверка)
3. Обеспечение корректного подключения Windows и torrent-клиентов. - [🔄 Откат](#-откат)
4. Возможность отката гостевого доступа при необходимости. - [📊 Статистика](#-статистика)
- [🔜 Дальше](#-дальше)
--- - [📞 Контакты](#-контакты)
## 📂 Настройки шаров (шаблон) ---
Пример для шары `[Films]`: ## 🎯 Цели
```ini - 🔐 Убрать гостевой доступ
[Films] - 👤 Ввести авторизацию пользователей
comment = Films - 📁 Настроить права Linux
path = /mnt/video/films - 💻 Обеспечить работу Windows + Docker (qBittorrent)
browseable = yes
read only = no ---
guest ok = no
valid users = zailon, zevs, qb ## 📂 Шары
write list = zailon, qb
create mask = 0644 ### 📺 Media сервер (`192.168.1.203`)
directory mask = 0755
``` ```ini
[Films]
--- comment = Films Library
path = /mnt/video/films
## 🗂️ Список всех шаров browseable = yes
read only = yes
| Сервер | Шара | Путь | Назначение | valid users = @mediaread
|--------|------------|---------------------|----------------| write list = zailon qb
| media (192.168.1.203) | Films | /mnt/video/films | Фильмы | force group = mediaread
| media (192.168.1.203) | Mult | /mnt/video/mult | Мультфильмы | create mask = 0644
| media (192.168.1.203) | Anime | /mnt/video/anime | Аниме | directory mask = 0755
| media (192.168.1.203) | Serial | /mnt/video/serial | Сериалы | ```
| media (192.168.1.203) | Mserials | /mnt/video/mserials| Мини-сериалы |
| media (192.168.1.203) | Doc | /mnt/video/doc | Документы | ---
| media (192.168.1.203) | xxx | /mnt/video/xxx | 18+ контент |
| media (192.168.1.203) | Ztube | /mnt/video/ztube | YouTube архив | ### 🎮 Games сервер (`192.168.1.207`)
| media (192.168.1.203) | Show | /mnt/video/show | Шоу |
| media (192.168.1.203) | Abook | /mnt/abooks | Аудиокниги | ```ini
| media (192.168.1.203) | Music | /mnt/audio/music | Музыка | [Games]
| media (192.168.1.203) | Books | /mnt/books | Книги | comment = Games Library
| games (192.168.1.207) | Games | /mnt/games/ | Игры | path = /mnt/games/
browseable = yes
--- read only = yes
valid users = @mediaread
## 📁 Права на файловой системе (Linux) write list = zailon qb
force group = mediaread
### На `media`: create mask = 0644
directory mask = 0755
```bash ```
sudo chown -R zailon:qb /mnt/video/
sudo chown -R zailon:qb /mnt/audio/ ---
sudo chown -R zailon:qb /mnt/books/
sudo chown -R zailon:qb /mnt/abooks/ ## 📁 Права файловой системы
sudo chmod -R 775 /mnt/video/ /mnt/audio/ /mnt/books/ /mnt/abooks/ ### Media
sudo find /mnt/video/ /mnt/audio/ /mnt/books/ /mnt/abooks/ -type f -exec chmod 664 {} \;
``` ```bash
# Владелец и группа
### На `games`: sudo chown -R zailon:mediaread /mnt/video/ /mnt/audio/ /mnt/books/ /mnt/abooks/
```bash # Папки
sudo chown -R zailon:qb /mnt/games/ sudo find /mnt/video/ /mnt/audio/ /mnt/books/ /mnt/abooks/ -type d -exec chmod 775 {} \;
sudo chmod -R 775 /mnt/games/
sudo find /mnt/games/ -type f -exec chmod 664 {} \; # Файлы
``` sudo find /mnt/video/ /mnt/audio/ /mnt/books/ /mnt/abooks/ -type f -exec chmod 664 {} \;
```
### Итоговые права
### Games
| Объект | Владелец | Группа | Права |
|---------|----------|--------|----------------| ```bash
| Папки | zailon | qb | drwxrwxr-x 775 | sudo chown -R zailon:mediaread /mnt/games/
| Файлы | zailon | qb | -rw-rw-r-- 664 | sudo find /mnt/games/ -type d -exec chmod 775 {} \;
sudo find /mnt/games/ -type f -exec chmod 664 {} \;
--- ```
## 🖥️ Настройка клиентов ---
### Сервер torrent (192.168.1.211) ## 🖥️ Клиенты
**Файл учётных данных** (`/etc/smb-creds/qb`): ### 🧲 Torrent (`192.168.1.211`)
```bash ```bash
username=qb sudo mkdir -p /etc/smb-creds
password=Z@p1sk@ sudo nano /etc/smb-creds/qb
``` sudo chmod 600 /etc/smb-creds/qb
```
Создание и защита:
#### `/etc/fstab`
```bash
sudo mkdir -p /etc/smb-creds ```ini
sudo nano /etc/smb-creds/qb //192.168.1.203/Films /mnt/video/films cifs rw,credentials=/etc/smb-creds/qb,uid=1000,gid=1003,file_mode=0644,dir_mode=0755,vers=3.0 0 0
sudo chmod 600 /etc/smb-creds/qb //192.168.1.207/Games /mnt/games cifs rw,credentials=/etc/smb-creds/qb,uid=1000,gid=1003,file_mode=0644,dir_mode=0755,vers=3.0 0 0
``` ```
Монтирование в `/etc/fstab`: Применение:
```ini ```bash
//192.168.1.203/Films /mnt/video/films cifs rw,uid=1000,gid=1000,file_mode=0777,dir_mode=0777,iocharset=utf8,vers=3.0,credentials=/etc/smb-creds/qb 0 0 sudo mount -a
//192.168.1.207/Games /mnt/games cifs rw,uid=1000,gid=1000,file_mode=0777,dir_mode=0777,iocharset=utf8,vers=3.0,credentials=/etc/smb-creds/qb 0 0 ```
```
---
Применение:
### 🪟 Windows
```bash
sudo mount -a ```cmd
``` net use \\\\192.168.1.203\\Films /user:zailon
net use \\\\192.168.1.207\\Games /user:zailon
### Windows (BunkerZ и другие ПК) ```
```cmd Очистка:
net use \\192.168.1.203\Films /user:zailon
``` ```cmd
Или через проводник: `\\192.168.1.203\Films` net use * /delete /yes
Логин: `zailon`, пароль: ваш пароль, ✅ запомнить учётные данные net stop workstation /y
net start workstation
Очистка кэша: ```
```cmd ---
net use * /delete /yes
net stop workstation /y ## ✅ Проверка
net start workstation
``` ### Серверы
--- ```bash
pdbedit -L
## ✅ Проверочные команды testparm
getent group mediaread
### На серверах: ```
```bash ### Torrent
pdbedit -L
testparm ```bash
systemctl status smbd --no-pager | head -10 mount | grep cifs
``` cat /etc/smb-creds/qb
```
### На torrent:
### Docker test
```bash
mount | grep cifs ```bash
cat /etc/smb-creds/qb docker exec qbittorrent touch /mnt/video/films/test.txt
ls -la /etc/smb-creds/qb docker exec qbittorrent rm /mnt/video/films/test.txt
touch /mnt/video/films/test.txt && rm /mnt/video/films/test.txt ```
```
---
### На Windows:
## 🔄 Откат
```cmd
net use ⚠️ **Не рекомендуется**
dir \\192.168.1.203\Films
``` ```ini
guest ok = yes
--- ```
## 🔄 Откат изменений ```bash
sudo systemctl restart smbd nmbd
На серверах (`media`, `games`): ```
```bash ---
sudo nano /etc/samba/smb.conf
``` ## 📊 Статистика
В `[global]`: | Параметр | Значение |
|----------|----------|
```ini | Серверов | 2 |
map to guest = bad user | Шаров | 13 |
usershare allow guests = yes | Пользователей | 3 |
``` | Групп | 1 (`mediaread`) |
| Гостевой доступ | ❌ |
В каждой шаре:
---
```ini
guest ok = yes ## 🔜 Дальше
valid users = (удалить)
write list = (удалить) - 🔴 Firewall
``` - 🔴 SSH hardening
- 🟡 Reverse proxy
Перезапуск: - 🟢 VLAN
- 🟢 Backups
```bash
sudo testparm ---
sudo systemctl restart smbd nmbd
``` ## 📞 Контакты
На torrent (`/etc/fstab`): | Параметр | Значение |
|----------|----------|
```bash | Домен | zailon.ru |
sudo mount -a | Сеть | 192.168.1.0/24 |
``` | VPN | 192.168.45.0/24 |
| Media | 192.168.1.203 |
--- | Games | 192.168.1.207 |
| Torrent | 192.168.1.211 |
## 📊 Итоговая статистика
---
| Параметр | Значение |
|-----------|----------| ## 🎉 Результат
| Серверов настроено | 2 (media, games) |
| Шаров защищено | 13 | ✅ Гостевой доступ отключён
| Пользователей создано | 3 (zailon, zevs, qb) | ✅ Доступ только по пользователям
| Точек монтирования на torrent | 14 | ✅ Права корректны
| Гостевой доступ | ❌ Запрещён | ✅ Docker пишет в шару
| Запись без авторизации | ❌ Невозможна | ✅ Windows подключается
## 📞 Контакты ---
| Ресурс | Значение | > 💡 README оптимизирован под GitHub: есть якоря, навигация и чистая структура
|--------|----------|
| Домен | zailon.ru |
| Админ-ноутбук | BunkerZ |
| Пользователь | zailon |
| Сеть | 192.168.1.0/24 |
| Сервер media | 192.168.1.203 |
| Сервер games | 192.168.1.207 |
| Сервер torrent | 192.168.1.211 |
**Документ создан:** 19 марта 2026
**Статус:** ✅ Завершено
---
## 🎉 Результат
Samba полностью защищена:
✅ Пользователи созданы
✅ Гостевой доступ закрыт
✅ Запись только для авторизованных
✅ Windows подключается
✅ qBittorrent пишет в шары
✅ Права настроены