---
# System prepended metadata

title: 3. OS Linux basic. Практическая работа 4

---

# 3. OS Linux basic. Практическая работа 4
Подготовка включает создание публичной и приватной (доступной только состоящим в группе smbgrp пользователям) папок. Создание пользователя и добавление его в группу smbgrp.
![](https://i.imgur.com/x300A8E.png)

![](https://i.imgur.com/a3Uz4O8.png)
выполняется настройка конфигурации samba.
![](https://i.imgur.com/I3u6LL0.png)
сервис доступен
![](https://i.imgur.com/arirQ2L.png)

# 1.1 Получить доступ к папкам и файлам находящимся на файловом сервере Linux, клиентом Linux
ip-адрес узла с ОС Linux (Kali):
![](https://i.imgur.com/OOdLYkP.png)

![](https://i.imgur.com/ZVoY4Go.png)

![](https://i.imgur.com/jkDJq2e.png)

![](https://i.imgur.com/KgHYSxz.png)

![](https://i.imgur.com/65dgtcT.png)



# 1.2 Получить доступ к папкам и файлам находящимся на файловом сервере Linux, клиентом Windows
ip-адрес узла с ОС Windows:
![](https://i.imgur.com/cFx5dMP.png)
сетевой ресурс доступен. Каталог public открывается:
![](https://i.imgur.com/HKIyRv1.png)

Каталог private требует ввода УЗ, после этого становится доступен:
![](https://i.imgur.com/fHg2u9u.png)

![](https://i.imgur.com/GWU5Scz.png)


# 1.3 Добавить сервис Samba в автозагрузку OS Linux

![](https://i.imgur.com/LvOBn07.png)


# 1.4 Настройка iptables

Настраиваются правила для iptables для доступа по портам smb и для возможности администрирования (ssh, tcp/22). Правило по умолчанию используется DROP (блокировать все соединения).
![](https://i.imgur.com/c5lfejH.png)

Для проверки создаются произвольные файлы.
![](https://i.imgur.com/7xjkg1F.png)

Открывается новое окно и вводится путь до сетевой папки. 
Windows не попадает под сеть 192.168.130.128/25, т.к. имеет адрес 192.168.130.1. Попытка открыть сетевой каталог неуспешная:
![](https://i.imgur.com/Pv3xGlW.png)

kali2 входит в сеть 192.168.130.128/25 (ее адрес .136), проверка доступности ресурсов успешная. Правила FW работают корректно:
![](https://i.imgur.com/TuAqcLD.png)


для сохранения правил и автоматического их добавления при перезагрузке используется утилита iptables-persistent. 
![](https://i.imgur.com/92pCp8Z.png)


команда smbstatus показывает расширенные данные - ip адрес клиента, УЗ и время ее авторизации и др.
![](https://i.imgur.com/cCmCqEt.png)



# 2.1 Fail2Ban-SSH и Brute-force attack
Сервер SSH работает на ВМ kali.

ПО Fail2Ban установлено. Проверяется работа службы - запущена:
![](https://i.imgur.com/8t45MjS.png)

Содержимое каталога fail2ban:
![](https://i.imgur.com/VOcv456.png)

в конфигурационном файле fail2ban по умолчанию указан сервис sshd:
![](https://i.imgur.com/t5bnO0b.png)

конфигурация рекомендует для пользовательских настроек создать файл jail.local Конфигурация предусматривает чтение лога auth, фильтрацию по sshd, максимум 3 неправильных попытки входа, блокировку на 1 час:
![](https://i.imgur.com/OMnaINX.png)

до выполнения атаки блокировки отсутствуют:
![](https://i.imgur.com/jJUa9z9.png)

Попытка несколько раз ввести неправильную УЗ - применяется блокировка fail2ban:
![](https://i.imgur.com/FYHOPDi.png)

в результате fail2ban заблокировал ip-адрес:
![](https://i.imgur.com/vHb5uMC.png)

Проведение атаки подбора пароля с помощью hydra при выключенной службе fail2ban:
![](https://i.imgur.com/AAGLHNk.png)


Проведение атаки подбора пароля с помощью hydra c включенной службой fail2ban, ip-адрес забанен, его соединение сбрасывается:
![](https://i.imgur.com/zSmKCWr.png)


# 3.1 Fail2Ban и Dos/DDoS attack
Скачивается и проверяется ключ для репозитория - значение контрольной суммы совпадает:
![](https://i.imgur.com/Ob0vZGO.png)

![](https://i.imgur.com/WG2ettt.png)

дбавляется файл с репозиторием nginx:
![](https://i.imgur.com/n6T1fiM.png)

![](https://i.imgur.com/6inRffH.png)

Проверка статуса службы nginx:
![](https://i.imgur.com/E4Z5S6D.png)

установлено 2 веб-сервера (nginx, apache2), открывается стартовая страница apache2. Для исправления переносится файл index:
![](https://i.imgur.com/6MgLfJY.png)

Проверка доступности nginx из браузера:
![](https://i.imgur.com/ldRrt3v.png)

устанавливается пакет ipset:
![](https://i.imgur.com/RljimSp.png)

в файл/etc/nginx/sites-enable/default добавляется параметр limit_req:
![](https://i.imgur.com/itUgisM.png)

в конфирационный файл /etc/nginx/nginx.conf  так же параметр limit_req_zone:
![](https://i.imgur.com/sVnLFcJ.png)
и применяются новые настройки сервиса.

со стороннего узла выполняется множественное открытие веб-страницы (ctrl + r). Видно, что при превышении заданного лимита выдается ошибка 503:
![](https://i.imgur.com/yp6E8Y5.png)

в логе ngimx видны события превышения лимита:
![](https://i.imgur.com/Fv53JKk.png)

выполняется настройка fail2ban для интеграции с ngix:
![](https://i.imgur.com/w28yXmF.png)

в настройках fail2ban для iptables задается действие - DROP:
![](https://i.imgur.com/itdOgco.png)

проверяются настройки fail2ban (для nginx выполняются проверки):
![](https://i.imgur.com/BvrG0vv.png)

статистика до начала атаки DDoS (нет заблокированных адресов):
![](https://i.imgur.com/k0y8c04.png)

Атака DDoS производится множественным открытием страницы nginx.
В результате через некоторое время страница nginx становится недоступной:
![](https://i.imgur.com/QiUfQbZ.png)

статистика fail2ban показывает блокировку одного ip:
![](https://i.imgur.com/KsJeu9H.png)

в iptables применилось правило блокировки данного ip-адреса:
![](https://i.imgur.com/E8YduqT.png)

Таким образом, была настроена защита от DDoS-атак на веб-сервер nginx.
