Настройка локального сервера SMB
На этом шаге вы настроите локальный сервер SMB (Server Message Block) с использованием Samba. SMB — это протокол обмена файлами по сети, позволяющий приложениям на компьютере получать доступ к файлам и ресурсам на удалённом сервере. Samba — это свободная программная реализация сетевого протокола SMB. Это обеспечит цель для вашей атаки Hydra на SMB на последующих этапах.
Сначала установим Samba. Откройте терминал в каталоге ~/project.
sudo apt update
sudo apt install samba -y
Эта команда обновляет список пакетов и затем устанавливает пакет Samba. Флаг -y автоматически отвечает «да» на все запросы во время установки.
Далее необходимо настроить Samba. Начнём с резервного копирования исходного конфигурационного файла.
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
Теперь создадим новый, чистый конфигурационный файл, перезаписав существующий. Этот подход гарантирует отсутствие конфликтов с настройками Samba по умолчанию для Ubuntu.
Скопируйте следующую команду и выполните её в терминале. Убедитесь, что команда скопирована правильно.
sudo tee /etc/samba/smb.conf > /dev/null << 'EOF'
[global]
workgroup = WORKGROUP
server string = Samba Server
netbios name = fileserver
security = user
map to guest = never
## Отключить анонимный доступ
restrict anonymous = 2
## Явно включить SMBv1 и NTLMv1 для Hydra
server min protocol = NT1
client min protocol = NT1
ntlm auth = ntlmv1-permitted
## Связь только с localhost
interfaces = 127.0.0.1
bind interfaces only = yes
## Ведение журнала
log file = /var/log/samba/log.%m
max log size = 1000
logging = file
debug level = 3
[share]
path = /home/labex/project/share
browsable = yes
writable = yes
guest ok = no
read only = no
valid users = labex
EOF
Эта команда полностью заменит содержимое /etc/samba/smb.conf нашим чистым конфигурационным файлом.
Важные настройки:
map to guest = never — предотвращает анонимный доступ гостя
restrict anonymous = 2 — полностью отключает анонимный доступ
server min protocol = NT1 и client min protocol = NT1 — включает SMBv1 для совместимости с Hydra
ntlm auth = ntlmv1-permitted — разрешает аутентификацию NTLMv1 для тестирования
interfaces = 127.0.0.1 и bind interfaces only = yes — ограничивает доступ только к localhost
guest ok = no — отключает доступ гостя к общей папке
valid users = labex — ограничивает доступ только определённому пользователю
Почему мы перезаписываем весь файл:
- Избегаем конфликтов с настройками Samba по умолчанию Ubuntu
- Обеспечиваем чистую, минимальную конфигурацию, оптимизированную для тестирования с Hydra
- Устраняет потенциальные проблемы с дублированием или конфликтующими директивами
- Предоставляет согласованную стартовую точку для всех пользователей
Эта конфигурация гарантирует, что Hydra сможет правильно обнаруживать попытки аутентификации без помех от анонимного доступа.
Теперь создадим общую папку.
mkdir ~/project/share
sudo chmod 777 ~/project/share
Это создаёт папку с именем share в вашем каталоге ~/project и устанавливает её права доступа на 777, что означает, что все имеют права чтения, записи и выполнения. Примечание: В реальной ситуации вы захотите использовать более ограниченные права доступа. Для простоты в этой лабораторной среде мы используем 777.
Далее необходимо добавить пользователя Samba. Этот пользователь будет использоваться для аутентификации на сервере SMB. Вы будете использовать пользователя labex, который уже существует в системе. Сначала установите пароль Samba для пользователя labex.
sudo smbpasswd -a labex
Вам будет предложено ввести новый пароль для пользователя labex. Введите password и подтвердите его.
New SMB password:
Retype new SMB password:
Added user labex.
Наконец, перезапустите службу Samba, чтобы применить изменения.
sudo /etc/init.d/smbd restart
sudo /etc/init.d/nmbd restart
Вы должны увидеть вывод, похожий на этот:
* Stopping SMB/CIFS daemon smbd [ OK ]
* Starting SMB/CIFS daemon smbd [ OK ]
* Stopping NetBIOS name server nmbd [ OK ]
* Starting NetBIOS name server nmbd [ OK ]
Эта команда проверит вашу конфигурацию Samba на наличие синтаксических ошибок и покажет активную конфигурацию. Вы должны увидеть вывод, подтверждающий ваши настройки без ошибок.
Теперь ваш локальный сервер SMB настроен с надлежащими настройками безопасности. Вы создали общую папку с именем share и добавили пользователя labex с паролем Samba. Конфигурация оптимизирована для корректной работы с атаками Hydra.