SMB: лаборатория аудита общей папки на своём Windows/Linux стенде

⚖️ Безопасность и законность. Выполняйте лабораторию только на своих устройствах, в изолированной виртуальной сети или при наличии письменного разрешения владельца. Не сканируйте, не перехватывайте и не атакуйте чужие системы, Wi‑Fi и домены. Примеры ниже намеренно используют localhost, тестовые стенды, собственные файлы и RFC 5737/документационные домены.

Схема стенда

Используем Samba на localhost или отдельной VM. Цель — увидеть разницу между гостевым и аутентифицированным доступом, а затем закрыть гостевой вход. Не проверяйте реальные Windows‑сети без согласования.

1. Поднять тестовую шару

sudo apt install -y samba smbclient nmap
sudo mkdir -p /srv/samba/lab-share
printf 'только учебный файл\n' | sudo tee /srv/samba/lab-share/readme.txt
sudo chmod -R 0755 /srv/samba/lab-share
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.lab-backup
sudo tee -a /etc/samba/smb.conf <<'EOF'
[lab-share]
   path = /srv/samba/lab-share
   read only = yes
   guest ok = no
   browsable = yes
EOF
sudo testparm -s
sudo systemctl restart smbd

2. Проверить только локальный сервис

smbclient -L //127.0.0.1 -N
smbclient //127.0.0.1/lab-share -U "$USER" -c 'ls' || true
nmap -Pn -p445 --script smb-protocols,smb2-security-mode 127.0.0.1

Ожидайте отказ гостю. Если служба открыта в host-only сети, укажите её IP в отчёте и убедитесь, что firewall разрешает только нужный сегмент.

3. Контроль доступа и уборка

Проверьте права каталога и отсутствие записи для гостя. После занятия удалите секцию [lab-share], восстановите конфигурацию из backup при необходимости и остановите службу.

sudo testparm -s
sudo grep -A8 '^\[lab-share\]' /etc/samba/smb.conf
sudo sed -i '/^\[lab-share\]/,$d' /etc/samba/smb.conf
sudo systemctl restart smbd

Команда sed в последнем блоке подходит только для стенда, где секция добавлена последней; в реальной конфигурации редактируйте файл вручную и сохраняйте остальные шары.

Samba documentation · smbclient manual

Комментарии