User Tools

Site Tools


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

Differences

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

Link to this comparison view

обеспечение_безопасности_linux_решений_2025 [2026/07/21 12:02]
val created
обеспечение_безопасности_linux_решений_2025 [2026/07/21 12:04] (current)
val
Line 1: Line 1:
 ====== Обеспечение безопасности Linux решений 2025 ====== ====== Обеспечение безопасности Linux решений 2025 ======
 +
 +===== Программа курса =====
 +
 +  * [[http://​www.specialist.ru/​course/​yunbez|Linux. Уровень 3. Обеспечение безопасности систем,​ сервисов и сетей]]
 +
 +===== Модуль 0. Подготовка стенда в классе =====
 +
 +  * Узнать свой номер стенда
 +  * Удалить виртуалки
 +  * Удалить профили putty
 +  * Включить адаптер VirtualBox Host-Only Ethernet Adapter
 +  * Записать логин пароль и IP WAN интерфейса (сообщить преподавателю) от рабочей станции
 +  * Проверить наличие дистрибутивов и образов
 +
 +===== Модуль 1. Развертывание сети и сервисов предприятия =====
 +
 +==== Теория ====
 +
 +  * [[http://​ru.wikipedia.org/​wiki/​Информационная_безопасность|Информационная безопасность]]
 +  * [[http://​en.wikipedia.org/​wiki/​STRIDE_(security)|STRIDE is a system developed by Microsoft for thinking about computer security threats]]
 +  * [[http://​ru.wikipedia.org/​wiki/​DMZ_(компьютерные_сети)|Demilitarized Zone — демилитаризованная зона, ДМЗ]]
 +
 +==== Лабораторные работы ====
 +
 +Сценарий:​ 172.16.1.0/​24 - WAN сеть, 192.168.X/​24 - "​белая"​ DMZ сеть, 192.168.100+X - "​серая"​ LAN сеть
 +
 +
 +==== 1.1 Настройка систем gate, lan и server ====
 +
 +<​code>​
 +Запустите с правами Administrator
 +
 +C:​\cmder\cmder.exe
 +
 +bash
 +
 +cd
 +
 +test -d conf && rm -r conf
 +
 +git clone http://​val.bmstu.ru/​unix/​conf.git
 +
 +cd conf/​virtualbox/​
 +
 +!!! 3 - это номер курса, вместо X укажите Ваш номер стенда,​ если не знаете его, спросите преподавателя !!!
 +
 +./setup.sh X 3
 +</​code>​
 +
 +**Клонируем server в lan**
 +
 +=== Настраиваем gate ===
 +
 +  * Адаптер 1 - Внутренняя сеть (eth0) - DMZ
 +  * Адаптер 2 - Сетевой мост (eth1) - WAN (уже подключен)
 +  * Адаптер 3 - Виртуальный адаптер хоста (eth2) - LAN
 +
 +<​code>​
 +gate# ifconfig eth2 inet 192.168.100+X.1/​24 ​
 +</​code>​
 +
 +  * Создаем в Putty профиль gate и подключаемся
 +
 +<​code>​
 +gate# sh net_gate.sh
 +
 +gate# cat /​etc/​network/​interfaces
 +</​code><​code>​
 +...
 +auto eth2
 +iface eth2 inet static
 +        address 192.168.100+X.1
 +        netmask 255.255.255.0
 +</​code><​code>​
 +gate# init 6
 +</​code><​code>​
 +gate# apt update
 +</​code>​
 +
 +=== Настраиваем lan ===
 +
 +  * Адаптер 1 - Виртуальный адаптер хоста (eth0) - LAN (уже подключен)
 +
 +<​code>​
 +lan# ifconfig eth0 inet 192.168.100+X.10/​24 ​
 +</​code>​
 +
 +  * Создаем в Putty профиль lan и подключаемся
 +
 +<​code>​
 +lan# sh net_server.sh
 +
 +lan# hostnamectl set-hostname lan.corpX.un
 +
 +lan# cat /​etc/​network/​interfaces
 +</​code><​code>​
 +auto lo
 +iface lo inet loopback
 +
 +auto eth0
 +iface eth0 inet static
 +        address 192.168.100+X.10
 +        netmask 255.255.255.0
 +        gateway 192.168.100+X.1
 +</​code><​code>​
 +lan# init 6
 +</​code>​
 +
 +=== Настраиваем server ===
 +
 +  * Адаптер 1 - Внутренняя сеть (eth0) - DMZ
 +
 +<​code>​
 +server# sh net_server.sh
 +
 +server# init 6
 +</​code>​
 +
 +  * Создаем в Putty профиль server и подключаемся
 +==== 1.2 Подключение сети предприятия к Internet ====
 +
 +  * Настраиваем на gate доступ в Internet из сети LAN с использованием Сервис NAT [[Сервис NAT#​nftables]]
 +  * Тестируем
 +<​code>​
 +lan# apt update
 +</​code>​
 +
 +==== 1.3 План размещения сервисов в сети предприятия ====
 +
 +=== Сервис DNS ===
 +
 +<​code>​
 +server# sh conf/dns.sh
 +
 +lan# cat /​etc/​resolv.conf
 +</​code><​code>​
 +search corpX.un
 +nameserver 192.168.X.10
 +</​code>​
 +  * Копируем ключи ssh с системы lan на gate и server ([[Сервис SSH#​Аутентификация с использованием ключей ssh]])
 +<​code>​
 +lan# ssh-copy-id server
 +lan# ssh-copy-id gate
 +
 +lan# 
 +scp /​etc/​resolv.conf server:/​etc/​
 +scp /​etc/​resolv.conf gate:/etc/
 +</​code>​
 +=== Сервис EMAIL ===
 +
 +Будет развернут на системе server
 +
 +=== Сервис DHCP ===
 +
 +Разворачиваем на системе gate в сети LAN
 +
 +  * Сервис DHCP [[Сервис DHCP#​isc-kea]]
 +  * Импорт и запуск системы linux client1 ([[Инсталяция системы в конфигурации Desktop]], демонстрирует преподаватель)
 +  * Импорт и запуск системы windows client2
 +
 +=== Сервис CIFS ===
 +
 +Будет развернут на системе lan
 +
 +=== Сервис HTTP ===
 +
 +Сценарий:​ внешний корпоративный сайт на server
 +
 +  * [[Средства программирования shell#Web сервер на shell]]
 +  * [[Сервис INETD]]
 +
 +==== Практикум ====
 +
 +  * [[https://​val.bmstu.ru/​~val/​pract/​lin3/​lin3_mod1_pract.mp4|Запись практикума]] (длительность:​ 33 минуты)
 +
 +===== Модуль 2. Анализ информационных систем предприятия с точки зрения безопасности =====
 +
 +==== Теория ====
 +
 +  * [[https://​ru.wikipedia.org/​wiki/​%D0%90%D1%83%D0%B4%D0%B8%D1%82_%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D0%BE%D0%B9_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D0%B8|Аудит информационной безопасности]]
 +  * [[https://​ru.wikipedia.org/​wiki/​%D0%A5%D0%BE%D1%81%D1%82%D0%BE%D0%B2%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D0%BE%D0%B1%D0%BD%D0%B0%D1%80%D1%83%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F_%D0%B2%D1%82%D0%BE%D1%80%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9|Хостовая система обнаружения вторжений]]
 +  * [[https://​ru.wikipedia.org/​wiki/​Nmap|Nmap]]
 +  * [[https://​www.kali.org/​|Kali Linux - Advanced Penetration Testing Linux Distribution]]
 +  * [[https://​ru.wikipedia.org/​wiki/​OpenVAS|OpenVAS]]
 + 
 +  * [[https://​youtu.be/​zjzdqqk7xmo|Видео урок: Аудит системных событий в Linux/​FreeBSD]]
 +
 +  * [[https://​www.specialist.ru/​course/​ceh|Этичный хакинг. Техники атак и инструменты противодействия]]
 +==== Лабораторные работы ====
 +
 +==== 2.1 Внешний аудит систем ====
 +
 +Сценарий (практикум):​ [[Утилита nmap#​Поиск web серверов в сети]] и [[Утилита nmap#​Определение версии системы]] server (с gate.isp.un по ip адресу)
 +
 +  * [[Утилита nmap]]
 +
 +Сценарий:​ автоматизированный поиск уязвимостей,​ находим "​directory traversal"​
 +
 +  * [[Сервис OpenVAS]]
 +  * По окончании эксперимента остановить лишние экземпляры **pkill webd** или перезапустить server
 +
 +Сценарий (практикум):​ эксплуатируем найденную уязвимость "​directory traversal"​
 +
 +  * [[Управление учетными записями в Linux#​Создание тестового набора учетных записей]] на server
 +
 +<​code>​
 +lan# curl --path-as-is http://​server/​../​../​../​etc/​passwd
 +
 +gate.isp.un$ fetch -o - http://​192.168.X.10/​../​../​../​etc/​passwd
 +
 +gate.isp.un$ telnet 192.168.X.10 80
 +</​code><​code>​
 +GET /​../​../​../​etc/​passwd HTTP/1.1
 +</​code>​
 +
 +
 +Сценарий (практикум):​ Brute force-атака по известным login
 +
 +  * [[Утилита hydra]] (можно с любой свободной системы)
 +==== 2.2 Внутренний аудит систем ====
 +
 +=== Проверка стойкости паролей ===
 +
 +Сценарий (практикум):​ загружаем через уязвимый сервис файл shadow и подбираем пароли
 +
 +<​code>​
 +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]] (можно на любой свободной системе)
 +
 +=== Проверка целостности системы ===
 +
 +Сценарий:​ находим модифицированное ПО (можно изменить код web сервера)
 +
 +  * [[Утилита tripwire]] ([[https://​youtu.be/​FR_5am9__Ug|Видео Урок: Tripware - мониторинг и предупреждения об изменениях файлов в системе]])
 +  * [[Утилита aide]]
 +
 +=== Проверка системы на наличие закладок ===
 +
 +  * [[https://​en.wikipedia.org/​wiki/​Xor_DDoS|XOR DDoS is a Linux Trojan malware]]
 +  * Загружаем на server
 +<​code>​
 +server# cd /
 +
 +server# wget http://​gate.isp.un/​unix/​xor_ddos_linux_trojan.tgz
 +
 +server# tar -xvzf xor_ddos_linux_trojan.tgz
 +</​code>​
 +
 +  * [[Утилита rkhunter]]
 +  * [[Утилита chkrootkit]]
 +
 +  * [[Сервис OSSEC]] ​
 +
 +=== Аудит системных событий ===
 +
 +Сценарий (практикум):​ фиксируем обращения к файлам базы данных учетных записей со стороны процессов с EUID=user1. Можно тестировать из shell или запустить www сервер на server с правами user1
 +
 +  * [[Система Linux Auditing]]
 +  * [[https://​youtu.be/​zjzdqqk7xmo|Видео урок: Аудит системных событий в Linux/​FreeBSD]]
 +
 +  * Можно добавить [[Регистрация событий в Linux#​Сервис rsyslog]] и [[Регистрация событий в Linux#​Регистрация сообщений,​ переданных по сети]]
 +
 +==== Практикум ====
 +
 +  * [[https://​val.bmstu.ru/​~val/​pract/​lin3/​lin3_mod2_pract.mp4|Запись практикума]] (длительность:​ 15 минут)
 +
 +===== Модуль 3. Защита систем предприятия =====
 +
 +==== Теория ====
 +
 +  * [[https://​habrahabr.ru/​company/​xakep/​blog/​305262/​|Гугл для хакера]]
 +  * [[https://​nvd.nist.gov/​vuln/​search|Computer Security Resource Center National Vulnerability Database]] Keyword Search: Apache 2.4.18
 +  * [[http://​ru.wikipedia.org/​wiki/​Chroot|Вызов Chroot]]
 +  * [[https://​ru.wikipedia.org/​wiki/​Песочница_(безопасность)|Песочница безопасность]]
 +  * [[http://​ru.wikipedia.org/​wiki/​Переполнение_буфера|Переполнение буфера]]
 +  * [[http://​www.unixwiz.net/​techtips/​mirror/​chroot-break.html|Выход из Chroot]]
 +  * [[http://​samag.ru/​archive/​article/​341|GRSecurity]]
 +  * [[https://​wiki.gentoo.org/​wiki/​Hardened_Gentoo/​ru|Hardened Gentoo]]
 +==== Лабораторные работы ====
 +
 +==== 3.1 Обновление систем ====
 +
 +  * [[Управление ПО в Linux]]
 +
 +
 +==== 3.2 Управление привилегиями ====
 +
 +=== Система безопасности UNIX ===
 +
 +Сценарий:​ Запуск www сервера с правами пользователя user1 не позволит получить через него доступ к /etc/shadow
 +
 +  * [[Система безопасности UNIX]]
 +  * [[Сервис INETD]]
 +
 +=== Списки контроля доступа ===
 +
 +Сценарий:​ с помощью POSIX ACL запрещаем пользователю user1 читать файл /etc/passwd
 +
 +  * [[POSIX ACL]]
 +
 +=== Расширенные атрибуты ===
 +
 +  * [[POSIX capabilities]]
 +
 +=== Переменные ядра ===
 +
 +  * [[Управление ядром и модулями в Linux#​Переменные ядра]]
 +
 +==== 3.3 Изоляция сервисов ====
 +
 +=== Модули Linux LSM ===
 +
 +Сценарий:​ ограничения,​ накладываемые политиками на www сервер на server не позволят получить через него доступ к любым файлам,​ кроме разрешенных даже в случае запуска его с правами **root**
 +
 +  * [[Модуль AppArmor]]
 +  * [[Модуль AppArmor#​Создание профиля "​вручную"​]]
 +  * [[https://​youtu.be/​AaB5mL3SAlQ|Видео Урок: FreeBSD MAC and Linux AppArmor]]
 +
 +
 +  * [[Модуль SELinux]]
 +
 +
 +=== Изоляция сервисов в файловой системе ===
 +
 +Сценарий:​ запуск www сервера на server в chroot позволит получить через него доступ только к файлам,​ которые мы скопировали в chroot окружение
 +
 +  * [[Команда chroot]]
 +
 +=== Изоляция сервисов в выделенном окружении ===
 +
 +Сценарий (практикум):​ переносим www хостинг в контейнер
 +
 +<​code>​
 +server# systemctl stop inetutils-inetd && systemctl disable inetutils-inetd
 +</​code>​
 +
 +  * [[Технология namespaces]] (обсудить)
 +  * [[Технология cgroup]] (обсудить)
 +
 +  * [[Технология LXC]]
 +  * [[Пакет RSYNC#​Инкрементное копирование (Incremental Backup)]] (обсудить)
 +  * [[Сервис HTTP#​Установка и запуск сервера Apache]] на www
 +<​code>​
 +server# cat /​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 (на lan)
 +
 +<​code>​
 +server# cat /​etc/​bind/​corpX.un
 +</​code><​code>​
 +...
 +lan       ​A ​      ​192.168.100+X.10
 +</​code><​code>​
 +server# service named restart
 +</​code>​
 +  * [[Пакет RSYNC]]
 +<​code>​
 +lan# rsync -avz server:/​var/​www/​ /var/www/
 +</​code>​
 +
 +  * [[Технология Docker#​Создание образа для приложения вручную]] (обсудить)
 +  * [[Технология Docker#​Создание образа для приложения с использованием Dockerfile]]
 +  * [[Технология Docker#​Запуск в режиме демона и подключение к контейнеру]]
 +  * [[Технология Docker#​Копирование образов]] (обсудить)
 +
 +
 +==== 3.4 Усиление системы с помощью специальных средств ====
 +
 +  * [[Linux Hardened]]
 +  * [[https://​youtu.be/​-6aM7q27NbM|Видео урок: Использование GRSecurity]]
 +
 +==== Практикум ====
 +
 +  * [[https://​val.bmstu.ru/​~val/​pract/​lin3/​lin3_mod3_pract.mp4|Запись практикума]] (длительность:​ 24 минуты)
 +
 +===== Модуль 4. Защита сервисов предприятия =====
 +
 +==== Теория ====
 +
 +  * [[https://​ru.wikipedia.org/​wiki/​%D0%A8%D0%B8%D1%84%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5|Шифрование]]
 +  * [[https://​ru.wikipedia.org/​wiki/​%D0%9A%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D1%81_%D0%BE%D1%82%D0%BA%D1%80%D1%8B%D1%82%D1%8B%D0%BC_%D0%BA%D0%BB%D1%8E%D1%87%D0%BE%D0%BC|Криптосистема с открытым ключом]]
 +  *[[https://​ru.wikipedia.org/​wiki/​%D0%A6%D0%B5%D0%BD%D1%82%D1%80_%D1%81%D0%B5%D1%80%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%B8|Центр сертификации]]
 +  * [[https://​ru.wikipedia.org/​wiki/​%D0%90%D1%83%D1%82%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D1%8F|Аутентификация]]
 +  * [[https://​en.wikipedia.org/​wiki/​Privacy-enhanced_Electronic_Mail|Privacy-enhanced Electronic Mail]]
 +
 +==== Лабораторные работы ====
 +
 +==== 4.1 Ограничения учетных записей пользователей сервисов ====
 +
 +Демонстрирует преподаватель
 +
 +Сценарий:​ разворачиваем на server, MTA для домена corpX.un, IMAP без SSL. Учетные записи почтовых пользователей не должны иметь shell, предоставляющий доступ к командной строке
 +
 +  * [[Сервис MTA#​Настройка MTA]]
 +  * [[UA mail]]
 +  * [[Сервер dovecot]]
 +<​code>​
 +server# apt install ansible
 +
 +server# ansible-playbook conf/​ansible/​roles/​mail.yml
 +</​code>​
 +
 +  * [[Управление учетными записями в Linux#​Изменение атрибутов учетной записи]] shell в Linux
 +
 +==== 4.2 Скрытие баннеров сервисов ====
 +
 +Сценарий:​ заменяем банеры сервисов SMTP, IMAP, FTP, HTTP, CIFS, SSH
 +
 +  * Сервис SMTP ([[Сервис MTA#​Сокрытие названия сервиса]])
 +  * Сервис IMAP ([[Сервер dovecot#​Сокрытие названия сервиса]])
 +  * Сервис HTTP ([[Сервис HTTP#​Сокрытие версии сервиса]])
 +<​code>​
 +gate# curl -I http://​www.corpX.un/​
 +</​code>​
 +
 +  * Сервис SSH ([[http://​www.cyberciti.biz/​faq/​howto-ssh-server-hide-version-number-sshd_config/​|OpenSSH Hide Version Number From Clients]])
 +
 +==== 4.3 Замена устаревших сервисов ====
 +
 +Сценарий:​ перехват учетных данных при подключении пользователей по протоколу ftp для загрузки информации в каталог public_html на server и замена его на sftp
 +
 +
 +  * Сервис HTTP [[Сервис HTTP#​Использование домашних каталогов]]
 +  * [[Сервис FTP#​Сервер ftp]] (/​usr/​sbin/​nologin в /​etc/​shells)
 +  * [[Утилита ettercap]] и [[Утилиты для тестирования сети#​tcpdump]]
 +  * [[Сервис SSH#SSH вместо FTP (SFTP)]]
 +
 +  * Технология Docker [[Технология Docker#​Микросервисы]]
 +==== 4.4 Шифрование трафика ====
 +
 +=== Подготовка стенда ===
 +
 +  * [[Локализация системы#​Локализация временной зоны]]
 +
 +=== Использование самоподписанных цифровых сертификатов ===
 +
 +Демонстрирует преподаватель
 +
 +Сценарий:​ замена сервиса HTTP на HTTPS на www
 +
 +  * [[Пакет OpenSSL#​Использование алгоритмов с открытым ключем]] (на примере обмена данными по ftp между student@lan и student@server)
 +  * [[Пакет OpenSSL#​Создание самоподписанного сертификата]] для системы www
 +  * [[Сервис HTTP#​Поддержка протокола HTTPS]] для системы www
 +
 +=== Использование PKI ===
 +
 +**Сценарий (практикум):​**
 +
 +  - развертывание корпоративного CA (на lan)
 +  - замена HTTP на HTTPS (на www)
 +  - в client-ах добавляем сертификат CA в корневые центры сертификации
 +
 +  * [[Сервис HTTP#​Установка и запуск сервера Apache]] на lan 
 +<​code>​
 +lan# rm /​var/​www/​html/​index.html
 +</​code>​
 +  * [[Пакет OpenSSL#​Создание центра сертификации]] на lan
 +  * [[Пакет OpenSSL#​Создание сертификата сервиса,​ подписанного CA]] для www
 +  * [[Сервис HTTP#​Поддержка протокола HTTPS]] для www
 +
 +  * [[Материалы по Windows#​Импорт сертификата]] центра сертификации в windows client (через http://​lan.corpX.un/​)
 +  * [[Пакет OpenSSL#​Импорт сертификата центра сертификации]] в linux client
 +
 +**Дополнительные задания:​**
 +
 +  - HTTPS доступ к приложению webd (можно использовать конфигурацию nginx для gowebd) через gate (см. доп. задание)
 +  - замена IMAP на IMAPS (на server)
 +
 +<​code>​
 +server# cat /​etc/​bind/​corpX.un
 +</​code><​code>​
 +...
 +gowebd ​      ​A ​      ​192.168.X.1
 +</​code><​code>​
 +server# service named restart
 +</​code>​
 +
 +  * [[Пакет OpenSSL#​Создание сертификата сервиса,​ подписанного CA]] (можно wildcard)
 +<​code>​
 +lan# scp wild.key gate:​gowebd.key;​ scp wild.crt gate:​gowebd.crt
 +</​code>​
 +  * Установка [[Сервис HTTP#​NGINX]] на gate
 +  * [[Сервис HTTP#HTTPS Прокси (пример 4)]] для HTTP приложения (webd или gowebd)
 +
 +<​code>​
 +lan# scp wild.key server:​server.key;​ scp wild.crt server:​server.crt
 +</​code>​
 +  * [[Сервер dovecot#​Использование сертификатов для шифрования трафика]] dovecot IMAPS на server
 +  * [[Пакет OpenSSL#​Интерактивное подключение по ssl]]
 +  * [[Протокол IMAP]]
 +
 +**Дополнительные задания:​**
 +
 +  * [[Letsencrypt Certbot]]
 +
 +==== 4.5 Аутентификация и Авторизация доступа к сервису ====
 +
 +  * Курс про аутентификацию и авторизацию:​ [[Linux. Интеграция с корпоративными решениями Microsoft]]
 +  * [[https://​youtu.be/​-fcJ8MkoLts|Видео урок: Использование одноразовых паролей OPIE]] или статья [[https://​habr.com/​ru/​articles/​713582/​|Безопасное подключение с чужого компьютера]]
 +  * [[https://​youtu.be/​kXi1KXYy-NE|Видео урок: SSH SSO]]
 +
 +Задание:​ Настройка почтового сервера на отправку почты пользователям других почтовых доменов из почтовых клиентов на основании аутентификации
 +
 +  * [[Сервис MTA#​Протокол SMTP]]
 +  * [[Сервис MTA#​Настройка MTA на релеинг почты на основе аутентификации]] postfix smtp ssl
 +  * Установка [[Thunderbird]] и [[Thunderbird#​Авто конфигурация клиента]] ​
 +
 +**Задание (практикум):​** использование пользовательских сертификатов
 +
 +  * [[Пакет OpenSSL#​Создание пользовательского сертификата,​ подписанного CA]]
 +  * [[Пакет OpenSSL#​Оформление сертификата и ключа в формате PKS#12 с парольной защитой]]
 +
 +  * Рассылка сертификатов,​ ключей и файлов PKCS#12 владельцам по почте через [[UA mutt]]
 +  * Публикация пользовательских сертификатов
 +
 +<​code>​
 +lan.corpX.un:​~#​ cp -v user*crt /​var/​www/​html/​
 +</​code>​
 +
 +  * Вариант для курса (практикум) - используем файловый сервер: ​
 +  * [[Файловый сервер SAMBA#​Установка SAMBA]] на системе lan
 +  * [[Файловый сервер SAMBA#​Публичный каталог доступный на запись]]
 +<​code>​
 +lan# cp -v user* /​disk2/​samba/​
 +
 +lan# cp /​var/​www/​html/​ca* /​disk2/​samba/​
 +
 +lan# chown -v games /​disk2/​samba/​*
 +</​code>​
 +
 +**Сценарий:​** использование пользовательских сертификатов для PEM :)
 +
 +  * [[Thunderbird#​Настройка на использование S/MIME]] Thunderbird (демонстрирует преподаватель)
 +
 +**Сценарий:​** использование пользовательских сертификатов для аутентификации и авторизации доступа к сайту www
 +
 +  * [[Сервис HTTP#​Управление доступом к HTTP серверу на основе сертификатов]]
 +  * [[Сервис HTTP#​Использование директивы Redirect]] ​
 +  * [[Сервис HTTP#CGI интерфейс сервера]]
 +<​code>​
 +lan# curl --cert user1.crt --key user1.key --cacert /​var/​www/​html/​ca.crt https://​www.corpX.un/​cgi-bin/​test-cgi
 +</​code>​
 +
 +
 +==== 4.6 Ограничение доступа к сетевым сервисам ====
 +
 +=== Статичное,​ с использованием специальных средств ===
 +
 +Сценарий:​ разрешаем SSH подключение к www только из LAN
 +
 +  * [[Сервис Tcpwrap]]
 +
 +=== Статичное,​ с использованием средств встроенных в сервис ===
 +
 +  * [[Файловый сервер SAMBA#​Публичный каталог доступный на запись]]
 +  * [[Сервис DNS#​Ограничение доступа к DNS серверу]] (обсудить)
 +  * [[Сервис MTA#​Настройка MTA на релеинг почты из LAN]] (обсудить)
 +  * [[Сервис HTTP#​Управление доступом к HTTP серверу на основе сетевых адресов]] (обсудить)
 +  * [[Установка,​ настройка и запуск пакета SQUID]] (обсудить)
 +
 +=== Адаптивное,​ с использование специальных средств ===
 +
 +  * [[Защита почты от вирусов и SPAMа]] (обсудить)
 +  * Использование [[Сервис Clamav]] и [[Сервис Clamav#API ядра FANOTIFY]] для защиты файлового сервера на lan (что бы не отключать антивирус на windows, проверить через [[Подключение к файловым серверам CIFS из UNIX#linux проводник thunar]])
 +
 +==== 4.7 Шифрование контента ====
 +
 +Сценарий:​ размещаем данные на шифрованном разделе для lan сервиса SAMBA (сетевой диск с двойным дном:)
 +
 +  * Добавляем диск к lan
 +  * [[Управление файловыми системами в Linux#​Использование шифрованных разделов в Linux]]
 +  * Создать каталог и настроить права доступа для [[Файловый сервер SAMBA#​Публичный каталог доступный на запись]]
 +
 +
 +==== 4.8 Специальные решения ====
 +
 +Сценарий:​ защита LAN от посторонних сервисов DHCP
 +
 +  * [[Оборудование уровня 2 Cisco Catalyst#​DHCP snooping]] ​
 +  * [[Сервис DHCP#​Поиск посторонних DHCP серверов]] ​
 +
 +==== Практикум ====
 +
 +  * [[https://​val.bmstu.ru/​~val/​pract/​lin3/​lin3_mod4_pract.mp4|Запись практикума]] (длительность:​ 24 минуты)
 +
 +===== Модуль 5. Защита сети предприятия =====
 +
 +==== Теория ====
 +
 +  * [[https://​ru.wikipedia.org/​wiki/​%D0%9C%D0%B5%D0%B6%D1%81%D0%B5%D1%82%D0%B5%D0%B2%D0%BE%D0%B9_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD|Межсетевой экран]]
 +  * [[http://​www.linux.org.ru/​forum/​security/​1320671|еще один споcоб блокировать ssh bruteforce роботов]]
 +  * [[https://​ru.wikipedia.org/​wiki/​%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D0%BE%D0%B1%D0%BD%D0%B0%D1%80%D1%83%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F_%D0%B2%D1%82%D0%BE%D1%80%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9|Система обнаружения вторжений]]
 +  * [[https://​ru.wikipedia.org/​wiki/​%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D0%BF%D1%80%D0%B5%D0%B4%D0%BE%D1%82%D0%B2%D1%80%D0%B0%D1%89%D0%B5%D0%BD%D0%B8%D1%8F_%D0%B2%D1%82%D0%BE%D1%80%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9|Система предотвращения вторжений]]
 +
 +==== Лабораторные работы ====
 +
 +==== 5.1 Пакетные фильтры ====
 +
 +Сценарий:​ защита http сервиса на server от DDOS
 +
 +  * [[Сервис HTTP#​Нагрузочное тестирование]]
 +  * [[Сервис Firewall#​Конфигурация для защиты от bruteforce]]
 +
 +==== 5.2 Системы IDS и IPS ====
 +
 +Сценарий:​ Honeypot на gate
 +
 +  * [[Сервис Portsentry]]
 +  * [[https://​youtu.be/​6I0B3F179oE|Видео урок: Honeypot из tcpwrap и portsentry]]
 +
 +Сценарий:​ блокируем атаки на SSH сервис на на server
 +
 +  * [[Сервис Fail2ban]]
 +  * [[https://​habr.com/​ru/​articles/​813799/​|DPI из подручных материалов]] (доп. задание для практикума)
 +
 +==== Практикум ====
 +
 +  * [[https://​val.bmstu.ru/​~val/​pract/​lin3/​lin3_mod5_pract.mp4|Запись практикума]] (длительность:​ 10 минут)
 +
 +===== Модуль 6. Использование VPN для соединения сетей филиалов предприятия и удаленных пользователей =====
 +
 +==== Теория ====
 +
 +  * [[http://​ru.wikipedia.org/​wiki/​VPN|Virtual Private Network — виртуальная частная сеть]]
 +  * [[https://​ngrok.com/​product|What is ngrok?]]
 +
 +==== Лабораторные работы ====
 +
 +==== 6.1 Использование сервиса SSH ====
 +
 +=== SSH вместо VPN (привязка к порту клиента) ===
 +
 +Сценарий:​ подключаемся с "​домашнего"​ компьютера по RDP к компьютеру в LAN сети предприятия через "​рабочую"​ linux систему,​ у которой есть доступ в LAN
 +
 +Реализация:​ Отключаем на host системе VirtualBox Host-Only Network адаптер и, используя доступность сети LAN с server, осуществляем доступ по RDP к системе client1 через учетную запись user1 системы server
 +
 +  * [[Сервис SSH#SSH вместо VPN (привязка к порту клиента)]]
 +
 +=== SSH вместо VPN (привязка к порту сервера) ===
 +
 +Сценарий:​ подключаемся с "​домашнего"​ компьютера по RDP или SSH к компьютеру в LAN сети предприятия,​ через "​внешнюю"​ linux систему,​ к которой "​заранее"​ установлено SSH соединение из LAN
 + 
 +Реализация:​ отключаем доступность сети LAN "​отовсюду",​ считаем server - "​внешним"​ ресурсом (например VPS), осуществляем доступ по RDP к client1 или SSH к lan через туннель в SSH соединении к server, установленном с client1 или lan
 +
 +  * Настройка Firewall ([[Сервис Firewall#​Конфигурация для шлюза WAN - LAN - DMZ]])
 +
 +  * [[Сервис SSH#SSH вместо VPN (привязка к порту сервера)]]
 +  * [[https://​habr.com/​ru/​post/​709218/​|TeamViewer из подручных материалов]]
 +  * [[https://​habr.com/​ru/​articles/​732736/​|GPO для Linux из подручных материалов]] (help.desktop)
 +
 +==== 6.2 Пакет OpenVPN ====
 +
 +Сценарий:​ требуется предоставить авторизованный доступ пользователей,​ работающих на __ноутбуках__ и ездящих в командировки,​ к любым сервисам в сети LAN компании,​ например - CIFS
 +
 +  * [[Пакет OpenSSL#​Инициализация списка отозванных сертификатов]]
 +
 +<​code>​
 +lan# ###scp /​etc/​ssl/​openssl.cnf gate:/​etc/​ssl/​
 +
 +lan# scp /​var/​www/​html/​ca.* gate:
 +</​code>​
 +
 +  * [[Пакет OpenSSL#​Создание сертификата сервиса,​ подписанного CA]] для gate
 +  * [[Пакет OpenVPN]]
 +  * [[Пакет OpenVPN#​Настройка client/​server конфигурации]]
 +  * [[Пакет OpenSSL#​Отзыв сертификатов]]
 +
 +  * [[Управление учетными записями в Linux#​Перемещение учетных записей]] ​
 +  * [[Пакет OpenVPN#​Использование PAM аутентификации]] (см. доп. задания)
 +
 +Сценарий:​ требуется объединить сети филиалов (обсудить)
 +
 +  * [[Пакет OpenVPN]]
 +  * [[Пакет OpenVPN#​Настройка peer2peer конфигурации]]
 +
 +==== Практикум ====
 +
 +  * [[https://​val.bmstu.ru/​~val/​pract/​lin3/​lin3_mod6_pract.mp4|Запись практикума]] (длительность:​ 15 минут)
 +
 +===== Дополнительные материалы =====
 +
 +  * Вебинар:​ [[2FA на предприятии]] (смотреть с 24-й минуты)
 +  * Вебинар:​ [[PAM и Telegram]] (смотреть с 10-й минуты)
 +  * Статья:​ [[https://​habr.com/​ru/​articles/​813799/​|DPI из подручных материалов]]
 +  * Вебинар:​ [[Протокол ACME|Все,​ что нужно знать про Let's Encrypt, от localhost до Kubernetes]] ​
 +  * Вебинар:​ [[Использовать чужой IP адрес в сети|Могут ли использовать чужой IP адрес в сети, как это обнаружить и предотвратить]]
 +
 +
  
обеспечение_безопасности_linux_решений_2025.txt · Last modified: 2026/07/21 12:04 by val