---
title: OS Linux basic-Криворученко_Савелий-Практика_4
tags: OS Linux basic Linux
description: Use `{%hackmd theme-dark %}` syntax to include this theme.
---
<style>
html, body, .ui-content {
background-color: #333;
color: #ddd;
}
.markdown-body h1,
.markdown-body h2,
.markdown-body h3,
.markdown-body h4,
.markdown-body h5,
.markdown-body h6 {
color: #ddd;
}
.markdown-body h1,
.markdown-body h2 {
border-bottom-color: #ffffff69;
}
.markdown-body h1 .octicon-link,
.markdown-body h2 .octicon-link,
.markdown-body h3 .octicon-link,
.markdown-body h4 .octicon-link,
.markdown-body h5 .octicon-link,
.markdown-body h6 .octicon-link {
color: #fff;
}
.markdown-body img {
background-color: transparent;
}
.ui-toc-dropdown .nav>.active:focus>a, .ui-toc-dropdown .nav>.active:hover>a, .ui-toc-dropdown .nav>.active>a {
color: white;
border-left: 2px solid white;
}
.expand-toggle:hover,
.expand-toggle:focus,
.back-to-top:hover,
.back-to-top:focus,
.go-to-bottom:hover,
.go-to-bottom:focus {
color: white;
}
.ui-toc-dropdown {
background-color: #333;
}
.ui-toc-label.btn {
background-color: #191919;
color: white;
}
.ui-toc-dropdown .nav>li>a:focus,
.ui-toc-dropdown .nav>li>a:hover {
color: white;
border-left: 1px solid white;
}
.markdown-body blockquote {
color: #bcbcbc;
}
.markdown-body table tr {
background-color: #5f5f5f;
}
.markdown-body table tr:nth-child(2n) {
background-color: #4f4f4f;
}
.markdown-body code,
.markdown-body tt {
color: #eee;
background-color: rgba(230, 230, 230, 0.36);
}
a,
.open-files-container li.selected a {
color: #5EB7E0;
}
</style>
# OS Linux basic-Криворученко_Савелий-Практика_4
<a name="headers"><h2>Безопасность Linux серверов </h2></a>
### Задача:
- Linux Firewall.
- Iptables
- Рядовые атаки (flood, bruteforce)
- File2ban
---
## Практическая работа 4.1 “Настройка файлового сервера в корпоративной инфраструктуре”
### Задача:
- Получить доступ к папкам и файлам находящимся на файловом сервере Linux, клиентом Linux
- Получить доступ к папкам и файлам находящимся на файловом сервере Linux, клиентом Windows
- Добавить сервис Samba в автозагрузку OS Linux
- Настрить Samba ресурс с названием share и дать права на чтение группе пользователей users, но предоставить возможность записи для группы с именем admins, а также пользователю PT, для этого можете отредактировать файл `/etc/samba/smb.conf`.
- Настройка корзины для общего ресурса (для тех кому показалось легко🙂)
-- пояснить команду `smbstatus` (*продемонстрировать, пояснить результат*)
-- записать вывод в файл .txt
| Развертывание системы происходило на VMWARE, У всех был NAT и memory = 2048|
|---|
||
| Настройка сервера |
| -------- |
| Обновим, скачаем samba, сделаем резервную коп.|
|  |
||
|Создайте или выберете директорию, к которой все пользователи будут иметь общий доступ:
|
|
|Создайте или выберете каталог, к которому иметь доступ будут ограниченное число пользователей:
|
|Создадим группу, пользователя, внесем его в группу, поставим пароль|
|
|Откройте файл конфигурации и заменим содержание|
|
|restart
|
|Зайдем с винды
||
|
| смб статус показывает по какому протоколу зашли на сервер, а также с какого пользователя и IP|
|
|настроить firewall iptables, открыв порты, которые использует SAMBA. И настроить автозагрузку|
|
|
|
||
|
|Создадим папку share и добавить две группы: Users и admins|
|
|
|внесем пользователей в группы|
|
|
|smb.conf|
|
|
|
---
## Практическая работа 4.2 "Fail2Ban-SSH и Brute-force attack".“Настройка файлового сервера в корпоративной инфраструктуре”
### Задача:
- Настроить сервер SSH
- Установить и настроить Fail2Ban
- Научиться пользоваться Hydra
- Провести с помощью Hydra brute-force attack
- Провести атаку с помощью Hydra при выключенном Fail2Ban и исключенном ip-адресе из ban листа.
|установим Fail2Ban и запустим|
|---|
||
|
| Файлы в директории |
|
|nano jail.conf - файл конф. and jail.local|
|
||
|Попытки входа на сервер|
||
|Дополнительно внес ip white для неогр. попыток входа
|
|
|Рестартним по добру и здоровью|
||
|Подключимся по ssh c правильным паролем|
|
|Подключимся по ssh c неправильным паролем|
|
|c другой машины, которая в WL|
|
|С имитируем пароль|
|
|посмотреть журналы банов в fail2ban|
|
```
Я входил с двух ip 192.168.121.100 и 192.168.121.1. И только 1 IP попал в бан
```
|Сбросим бан|
|---|
||
|Все равно через n кол-во попыток hydra прилетает бан(убрал WL)|
||
||
|отключить fail2ban и запустить hydra|
|
|Можем на сервере найти неудачные попытки входа|
||
|
```
fail2ban - ограничивает число попыток входа по ssh, что
дает невозможность войти в систему с помощью брутфорса
```
---
## Практическая работа 4.3 Практическая работа "Fail2Ban и Dos/DDoS attack" на примере nginx.
### Задача:
- Организовать простую-тестовую атаку DoS.
- Защитить сервер от DoS/DDoS атак через встроенные возможности nginx.
- Защитить сервер от DoS/DDoS атак с помощью fail2ban при помощи iptables в автоматическом режиме.
- Защитить сервер от DoS/DDoS атак с помощью fail2ban при помощи ipset в автоматическом режиме.
|1. Разворачивание сервера nginx на базе дистрибутивов Debian.|
|---|
|sudo apt install curl gnupg2 ca-certificates lsb-release debian-archive-keyring|
| импортируем официальный ключ|
|
|Проверим, верный ли ключ был загружен|
|
|apt-репозитория для стабильной версии nginx
|
|Закрепляем|
|
|Скачаем|
|
|Запустим|
||
---
|2. переходим к настройке nginx от DDoS атак на наш сервер.|
|---|
|Устанавливаем fail2ban и ipset:|
|
|
|nano /etc/nginx/sites-enable/default
|
|nano /etc/nginx/nginx.conf
|
|вбиваем ip-адрес сервера в браузере, переходим в режим разработчика и далее делаем многочисленные запросы: в Chrome это - ctrl+r|
||
|
||
```
данные log файл даст нам нужную информация для
настройки фильтрации fail2ban.
```
---
## 2. Настройке fail2ban от DDoS атак на наш сервер.
|параметр бан в jail.conf|
|---|
|
|touch iptables-blocktype.local|
|
|рестартним и проверим отработку|
||
|настройки в fail2ban применились|
|
|fail2ban-client status nginx-limit-req|
|
|Сделав многочисленные запросы, ip заблокировали|
||
|iptables -L -v|
|
|
|Разблокируем IP|
||