обеспечение_безопасности_linux_решений_2024

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
обеспечение_безопасности_linux_решений_2024 [2024/05/07 14:23]
val [5.2 Системы IDS и IPS]
обеспечение_безопасности_linux_решений_2024 [2024/05/20 15:38] (current)
val [4.5 Аутентификация и Авторизация доступа к сервису]
Line 49: Line 49:
 </​code>​ </​code>​
  
-Клонировать ​server в lan+**Клонируем ​server в lan**
  
-=== gate ===+=== Настраиваем ​gate ===
  
   * Адаптер 1 - Внутренняя сеть (eth0) - DMZ   * Адаптер 1 - Внутренняя сеть (eth0) - DMZ
Line 61: Line 61:
 </​code>​ </​code>​
  
-  * Создать в Putty профиль gate и подключиться+  * Создаем в Putty профиль gate и подключаемся
  
 <​code>​ <​code>​
Line 79: Line 79:
 </​code>​ </​code>​
  
-=== lan ===+=== Настраиваем ​lan ===
  
   * Адаптер 1 - Виртуальный адаптер хоста (eth0) - LAN (уже подключен)   * Адаптер 1 - Виртуальный адаптер хоста (eth0) - LAN (уже подключен)
Line 87: Line 87:
 </​code>​ </​code>​
  
-  * Создать в Putty профиль lan и подключиться+  * Создаем в Putty профиль lan и подключаемся
  
 <​code>​ <​code>​
Line 108: Line 108:
 </​code>​ </​code>​
  
-=== server ===+=== Настраиваем ​server ===
  
   * Адаптер 1 - Внутренняя сеть (eth0) - DMZ   * Адаптер 1 - Внутренняя сеть (eth0) - DMZ
Line 118: Line 118:
 </​code>​ </​code>​
  
 +  * Создаем в Putty профиль server и подключаемся
 ==== 1.2 Подключение сети предприятия к Internet ==== ==== 1.2 Подключение сети предприятия к Internet ====
  
Line 180: Line 180:
   * [[https://​www.kali.org/​|Kali Linux - Advanced Penetration Testing Linux Distribution]]   * [[https://​www.kali.org/​|Kali Linux - Advanced Penetration Testing Linux Distribution]]
   * [[https://​ru.wikipedia.org/​wiki/​OpenVAS|OpenVAS]]   * [[https://​ru.wikipedia.org/​wiki/​OpenVAS|OpenVAS]]
 + 
   * [[https://​youtu.be/​zjzdqqk7xmo|Видео урок: Аудит системных событий в Linux/​FreeBSD]]   * [[https://​youtu.be/​zjzdqqk7xmo|Видео урок: Аудит системных событий в Linux/​FreeBSD]]
 +
 +  * [[https://​www.specialist.ru/​course/​ceh|Этичный хакинг. Техники атак и инструменты противодействия]]
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
 ==== 2.1 Внешний аудит систем ==== ==== 2.1 Внешний аудит систем ====
  
-Сценарий:​ сканирование портов сервисов системы server, находим web сервер+Сценарий:​ сканирование портов сервисов системы server ​(с lan или gate.isp.un по ip адресу), находим web сервер
  
   * [[Утилита nmap]]   * [[Утилита nmap]]
  
-Сценарий:​ определяем "вручную" ​нет ли уязвимости directory traversal+Сценарий: ​автоматизированный поиск уязвимостей, находим "directory traversal"​ 
 + 
 +  * [[Сервис OpenVAS]] 
 +  * По окончании эксперимента остановить лишние экземпляры **pkill webd** или перезапустить server 
 + 
 +Сценарий:​ эксплуатируем найденную ​уязвимость "directory traversal"
  
   * [[Управление учетными записями в Linux#​Создание тестового набора учетных записей]] на server   * [[Управление учетными записями в Linux#​Создание тестового набора учетных записей]] на server
Line 201: Line 209:
 </​code><​code>​ </​code><​code>​
 GET /​../​../​../​etc/​passwd HTTP/1.1 GET /​../​../​../​etc/​passwd HTTP/1.1
- 
-GET /​../​../​../​etc/​shadow HTTP/1.1 
- 
-GET /​../​../​../​etc/​master.passwd HTTP/1.1 
 </​code>​ </​code>​
  
-Сценарий:​ автоматизированный поиск уязвимостей 
- 
-  * [[Сервис OpenVAS]] 
-  * По окончании эксперимента остановить лишние экземпляры **pkill webd** или перезапустить server 
  
 Сценарий:​ Brute force-атака по известным login Сценарий:​ Brute force-атака по известным login
Line 219: Line 219:
 === Проверка стойкости паролей === === Проверка стойкости паролей ===
  
-  * [[http://www.openwall.com/john/|John the Ripper password cracker]]+<​code>​ 
 +lan# curl --path-as-is ​http://192.168.X.10/../../​../​etc/​shadow ​tee shadow 
 +</​code>​
  
 +  * [[http://​www.openwall.com/​john/​|John the Ripper password cracker]]
   * [[Утилита john]]   * [[Утилита john]]
  
Line 248: Line 251:
   * [[Утилита chkrootkit]]   * [[Утилита chkrootkit]]
  
-  * [[Сервис OSSEC]] ​(обсудить)+  * [[Сервис OSSEC]] ​
  
 === Аудит системных событий === === Аудит системных событий ===
Line 279: Line 282:
 === Система безопасности UNIX === === Система безопасности UNIX ===
  
-Сценарий:​ Запуск www сервера с правами пользователя user1/​student не позволит получить через него доступ к /​etc/​shadow ​(linux) или /​etc/​master.passwd (freebsd)+Сценарий:​ Запуск www сервера с правами пользователя user1/​student не позволит получить через него доступ к /etc/shadow
  
   * [[Система безопасности UNIX]]   * [[Система безопасности UNIX]]
Line 331: Line 334:
   * [[Пакет RSYNC#​Инкрементное копирование (Incremental Backup)]]   * [[Пакет RSYNC#​Инкрементное копирование (Incremental Backup)]]
   * [[Сервис HTTP#​Установка и запуск сервера Apache]] на www   * [[Сервис HTTP#​Установка и запуск сервера Apache]] на www
-  * Linux ([[Управление учетными записями в Linux#Перемещение учетных записей]])+<​code>​ 
 +servercat /​etc/​bind/​corpX.un 
 +</​code><​code>​ 
 +... 
 +@ ... 
 +... 
 +          A       ​192.168.X.20 
 +          MX 1    server 
 +... 
 +www       ​A ​      ​192.168.X.20 
 +</​code><​code>​ 
 +server# service named restart 
 +</​code>​ 
  
   * [[Технология Docker]] (До Микросервисы)   * [[Технология Docker]] (До Микросервисы)
 +  * [[Технология Docker#​Установка]]
 +  * [[Технология Docker#​Создание контейнера для приложения вручную]]
 +  * [[Технология Docker#​Запуск в режиме демона и подключение к контейнеру]]
 +  * [[Технология Docker#​Создание контейнера для приложения с использованием Dockerfile]]
  
   * [[https://​github.com/​docker/​for-linux/​issues/​103|Docker blocking network of existing LXC containers]]   * [[https://​github.com/​docker/​for-linux/​issues/​103|Docker blocking network of existing LXC containers]]
Line 390: Line 410:
 ==== 4.3 Замена устаревших сервисов ==== ==== 4.3 Замена устаревших сервисов ====
  
-Сценарий:​ перехват учетных данных при обновлении пользователем user1 веб ​информации на server ​по протоколу ftp+Сценарий:​ перехват учетных данных при ​подключении пользователей по протоколу ftp для загрузки ​информации ​в каталог public_html ​на server ​и замена его на sftp
  
 +
 +  * Сервис HTTP [[Сервис HTTP#​Использование домашних каталогов]]
   * [[Сервис FTP#​Сервер ftp]] (/​usr/​sbin/​nologin в /​etc/​shells)   * [[Сервис FTP#​Сервер ftp]] (/​usr/​sbin/​nologin в /​etc/​shells)
-  ​* Сервис FTP ([[Сервис FTP#​Сокрытие названия/​версии сервиса]]) +  * [[Утилита ettercap]] ​и [[Утилиты для тестирования сети#​tcpdump]]
-  ​* [[Утилита ettercap]] +
-  * [[Утилиты для тестирования сети#​tcpdump]] +
- +
-Сценарий:​ для хостинга на www используем SFTP вместо FTP  +
   * [[Сервис SSH#SSH вместо FTP (SFTP)]]   * [[Сервис SSH#SSH вместо FTP (SFTP)]]
-  * [[Сервис HTTP#​Использование домашних каталогов]] 
  
   * Технология Docker [[Технология Docker#​Микросервисы]]   * Технология Docker [[Технология Docker#​Микросервисы]]
Line 427: Line 443:
   - в client-ах добавляем сертификат CA в корневые центры сертификации   - в client-ах добавляем сертификат CA в корневые центры сертификации
  
-  * [[Сервис HTTP#​Установка и запуск сервера Apache]] на lan (удалить ​index.html)+  * [[Сервис HTTP#​Установка и запуск сервера Apache]] на lan  
 +<​code>​ 
 +lan# rm /​var/​www/​html/​index.html 
 + 
 +server# cat /​etc/​bind/​corpX.un 
 +</​code><​code>​ 
 +... 
 +lan       ​A ​      ​192.168.100+X.10 
 +</​code><​code>​ 
 +server# service named restart 
 +</​code>​
   * [[Пакет OpenSSL#​Создание центра сертификации]] на lan   * [[Пакет OpenSSL#​Создание центра сертификации]] на lan
   * [[Пакет OpenSSL#​Создание сертификата сервиса,​ подписанного CA]] для www   * [[Пакет OpenSSL#​Создание сертификата сервиса,​ подписанного CA]] для www
   * [[Сервис HTTP#​Поддержка протокола HTTPS]] для www   * [[Сервис HTTP#​Поддержка протокола HTTPS]] для www
  
-  * Импорт сертификата центра сертификации в windows +  * [[Материалы по Windows#Импорт сертификата]] центра сертификации в windows ​client (через http://​lan.corpX.un/​) 
-  * [[Пакет OpenSSL#​Импорт сертификата центра сертификации]] в linux+  * [[Пакет OpenSSL#​Импорт сертификата центра сертификации]] в linux client
  
 **Дополнительные задания:​** **Дополнительные задания:​**
Line 450: Line 476:
  
   * [[Пакет OpenSSL#​Создание сертификата сервиса,​ подписанного CA]] (можно wildcard)   * [[Пакет OpenSSL#​Создание сертификата сервиса,​ подписанного CA]] (можно wildcard)
 +<​code>​
 +lan# scp wild.key gate:​gowebd.key;​ scp wild.crt gate:​gowebd.crt
 +</​code>​
   * Установка [[Сервис HTTP#​NGINX]] на gate   * Установка [[Сервис HTTP#​NGINX]] на gate
   * [[Сервис HTTP#HTTPS Прокси (пример 4)]] для HTTP приложения (webd или gowebd)   * [[Сервис HTTP#HTTPS Прокси (пример 4)]] для HTTP приложения (webd или gowebd)
  
-  ​* [[Сервер dovecot#​Использование сертификатов для шифрования трафика]] ​(можно wildcard) ​dovecot IMAPS на server ​+<​code>​ 
 +lan# scp wild.key server:​server.key;​ scp wild.crt server:​server.crt 
 +</​code>​ 
 +  ​* [[Сервер dovecot#​Использование сертификатов для шифрования трафика]] dovecot IMAPS на server 
 +  * [[Пакет OpenSSL#​Интерактивное подключение по ssl]] 
 +  * [[Протокол IMAP]]
  
 **Дополнительные задания:​** **Дополнительные задания:​**
Line 461: Line 495:
 ==== 4.5 Аутентификация и Авторизация доступа к сервису ==== ==== 4.5 Аутентификация и Авторизация доступа к сервису ====
  
-  * [[Linux. Интеграция с корпоративными решениями Microsoft]] +  * Курс про аутентификацию и авторизацию: ​[[Linux. Интеграция с корпоративными решениями Microsoft]] 
-  * [[https://​youtu.be/​-fcJ8MkoLts|Видео урок: Использование одноразовых паролей OPIE]] или [[https://​habr.com/​ru/​articles/​713582/​|Безопасное подключение с чужого компьютера]]+  * [[https://​youtu.be/​-fcJ8MkoLts|Видео урок: Использование одноразовых паролей OPIE]] или ​статья ​[[https://​habr.com/​ru/​articles/​713582/​|Безопасное подключение с чужого компьютера]]
   * [[https://​youtu.be/​kXi1KXYy-NE|Видео урок: SSH SSO]]   * [[https://​youtu.be/​kXi1KXYy-NE|Видео урок: SSH SSO]]
  
-  ​* [[Сервис MTA#​Настройка MTA на релеинг почты на основе аутентификации]] postfix smtp ssl (демонстрирует преподаватель)+Задание:​ Настройка почтового сервера на отправку почты пользователям других постовых доменов из почтовых клиентов на основании аутентификации 
 + 
 +  * [[Сервис MTA#​Протокол SMTP]] 
 +  ​* [[Сервис MTA#​Настройка MTA на релеинг почты на основе аутентификации]] postfix smtp ssl 
 +  * Установка [[Thunderbird]] и [[Thunderbird#​Авто конфигурация клиента]] ​
  
 **Задание:​** использование пользовательских сертификатов **Задание:​** использование пользовательских сертификатов
Line 539: Line 577:
 Сценарий:​ размещаем данные на шифрованном разделе для lan сервиса SAMBA (сетевой диск с двойным дном:) Сценарий:​ размещаем данные на шифрованном разделе для lan сервиса SAMBA (сетевой диск с двойным дном:)
  
-  * Создаем раздел, ​без файловой системы ([[Управление файловыми системами в Linux#​Добавление ​дисков в Linux]])+  * Добавляем диск ​к lan
   * [[Управление файловыми системами в Linux#​Использование шифрованных разделов в Linux]]   * [[Управление файловыми системами в Linux#​Использование шифрованных разделов в Linux]]
-  * Настроить права доступа ​к [[Файловый сервер SAMBA#​Публичный каталог доступный на запись]]+  * Создать каталог и настроить права доступа ​для ​[[Файловый сервер SAMBA#​Публичный каталог доступный на запись]]
  
  
Line 607: Line 645:
  
   * Настройка Firewall ([[Сервис Firewall#​Конфигурация для шлюза WAN - LAN - DMZ]])   * Настройка Firewall ([[Сервис Firewall#​Конфигурация для шлюза WAN - LAN - DMZ]])
-  ​* [[Сервис SSH#SSH вместо VPN (привязка к порту сервера)]]использовать Bitvise SSH Client ​(Tunnelier)+ 
 +  ​* [[Сервис SSH#SSH вместо VPN (привязка к порту сервера)]] 
 +  * [[https://​habr.com/​ru/​post/​709218/​|TeamViewer ​из подручных материалов]] 
 +  * [[https://​habr.com/​ru/​articles/​732736/​|GPO для Linux из подручных материалов]] ​(help.desktop)
  
 ==== 6.2 Пакет OpenVPN ==== ==== 6.2 Пакет OpenVPN ====
Line 628: Line 669:
   * [[Пакет OpenSSL#​Отзыв сертификатов]]   * [[Пакет OpenSSL#​Отзыв сертификатов]]
  
-Сценарий:​ требуется объединить сети филиалов+  * [[Управление учетными записями в Linux#​Перемещение учетных записей]] 
 +  * [[Пакет OpenVPN#​Использование PAM аутентификации]] 
 + 
 +Сценарий:​ требуется объединить сети филиалов ​(обсудить)
  
   * [[Пакет OpenVPN]]   * [[Пакет OpenVPN]]
   * [[Пакет OpenVPN#​Настройка peer2peer конфигурации]]   * [[Пакет OpenVPN#​Настройка peer2peer конфигурации]]
 +
 +===== Вопросы =====
  
 ===== Дополнительные материалы ===== ===== Дополнительные материалы =====
Line 641: Line 687:
   * [[http://​www.vesti.ru/​doc.html?​id=2006216|Shellshock оставил беззащитным Интернет]]   * [[http://​www.vesti.ru/​doc.html?​id=2006216|Shellshock оставил беззащитным Интернет]]
  
-==== План на 14.11.2022 ==== 
- 
-=== Подготовка стенда === 
- 
-  * Схема стенда 
-  * Развернуть все VM 
-  * ext ip на extgate (10.5.N.100+X) 
-  * named.conf forwarders на extgate 
-  * resolv.conf на extgate 
- 
-=== OPIE для подключения к "​работе"​ === 
- 
-  * Ставим Chrome и MobaXterm (что бы настроить opie "на работе"​) 
-  * [[Управление учетными записями в FreeBSD]] - создаем userX/​passwordX 
-  * Включаем и тестируем [[Аутентификация с использованием OPIE]] 
-  * Включаем RDP (все, кто хочет:​),​ пригодится в следующей лабораторной) 
-  * Преподаватель переносит Win7 в DMZ (ip: 10.100.100.31) 
-  * Преподаватель демонстрирует туннель -L (понадобилось остановить pf :) 
- 
-=== Подключение к своему оборудованию в чужой сети или к "​работе"​ без разрешения:​) ​ === 
- 
-  * Преподаватель включает pf 
- 
-  * Изучаем туннель -R с параметрами 2000+X:​localhost:​22 подключаясь как userX к gate.isp.un 
-  * [[Управление сервисами в Linux#​Управление юнитами Systemd]] 
- 
-  * Преподаватель возвращает Win7 в LAN 
-  * Изучаем туннель -R с параметрами 3000+X:​localhost:​3389 подключаясь как userX к gate.isp.un 
- 
-=== Корпоративный TeamViewer === 
  
-  * Используются стенд преподавателя и одного из слушателей 
-  * Устанавливаем на Win7 [[Сервис VNC]] на обоих стендах 
-  * Разрешаем на extgate прохождение tcp трафика по всем портам на стенде слушателя 
-  * Разрешаем на intgate прохождение исходящего tcp трафика по всем портам на стенде слушателя 
-  * Преподаватель запускает VNCViewer в Listen mode 
-  * Преподаватель устанавливает -R туннель 0:​localhost:​5500 
-  * Слушатель выполняет Attach Listener Viewer на gate.isp.un:​NNNNN 
-  * Возвращаем исходные настройки пакетных фильтров на extgate и intgate слушателя 
обеспечение_безопасности_linux_решений_2024.1715081035.txt.gz · Last modified: 2024/05/07 14:23 by val