⚖️ Безопасность и законность. Выполняйте лабораторию только на своих устройствах, в изолированной виртуальной сети или при наличии письменного разрешения владельца. Не сканируйте, не перехватывайте и не атакуйте чужие системы, 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 smbd2. Проверить только локальный сервис
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 в последнем блоке подходит только для стенда, где секция добавлена последней; в реальной конфигурации редактируйте файл вручную и сохраняйте остальные шары.
Комментарии