5 уровней сетевых межсетевых экранов
Cloud Explainers
0:00 / 0:00
5 уровней сетевых межсетевых экранов
62 просмотра · 3 дн. назад
Cloud Explainers
594 подписчика
62 просмотра · 3 дн. назад
Пять уровней межсетевых экранов, каждый из которых был создан в реальных условиях в небольшой лабораторной сети: пакетный фильтр (правила адресов и портов с отбрасыванием по умолчанию), межсетевой экран с отслеживанием состояния (отслеживание соединений, чтобы ответы работали без сбоев), сетевой межсетевой экран на маршрутизаторе, который одновременно защищает каждый сервер, облачные межсетевые экраны (группы безопасности AWS и сетевые ACL) и межсетевой экран приложений, который считывает сам веб-запрос. Мы прослеживаем путь онлайн-магазина Аны от базы данных, открытой для всех, до сети, где каждый уровень скрывает то, что недоступно предыдущему.
Полная письменная версия со всеми командами и диаграммами: https://cloudexplainers.com/the-5-lev...
Если это помогло, подписка бесплатна и помогает небольшому каналу охватить больше начинающих: https://www.youtube.com/@cloudexplain...
Серия: Сети для начинающих, эпизод 7. Все эпизоды: • Networking for Beginners · Предыдущий: • HTTP vs HTTPS: What Actually Changes on Yo... · Следующий: • Never Expose a Database to the Internet
Главы
0:00 Открытая база данных Аны
1:22 Уровень 1: Фильтр пакетов
3:14 Уровень 2: Межсетевой экран с сохранением состояния
4:33 Уровень 3: Сетевой межсетевой экран
6:30 Уровень 4: Облачные межсетевые экраны
8:02 Уровень 5: Приложения брандмауэр
10:40 Краткий обзор
Что мы запускали (реальный вывод из лаборатории, Ubuntu 24.04.5 LTS, nftables v1.0.9, nginx/1.24.0 (Ubuntu)):
До: nmap с компьютера постороннего пользователя обнаружил, что SSH и веб-сайт открыты на веб-сервере, а PostgreSQL (порт 5432) открыт на сервере базы данных
Уровень 1: короткий набор правил nftables на сервере базы данных (политика drop, loopback, SSH, 5432 только с веб-сервера): у постороннего пользователя истекло время ожидания, nmap сообщил о фильтрации порта 5432, веб-сервер по-прежнему был подключен; но собственные загрузки сервера завершились с ошибкой по таймауту
Уровень 2: одно правило, состояние ct установлено, связанное принятие: загрузки снова заработали, conntrack показал соединение, незнакомец остался заблокированным
Уровень 3: цепочка пересылки маршрутизатора: веб-сайт загрузился, SSH завершился с ошибкой по таймауту на обоих серверах, кроме домашнего адреса Аны, 6 пакетов были учтены как отброшенные
Уровень 4: группы безопасности AWS и сетевые ACL, объяснение из документации AWS (без демонстрации)
Уровень 5: обратный прокси nginx: /admin ответил 403, прямой доступ к веб-серверу завершился с ошибкой по таймауту, и 20 быстрых запросов получили 6 страниц и 14 ответов 429 (5 запросов в секунду, пиковая нагрузка 5)
Источники (официальная документация)
Вики nftables, краткий справочник: https://wiki.nftables.org/wiki-nftabl...
Вики nftables, хуки netfilter: https://wiki.nftables.org/wiki-nftabl...
Вики nftables, отслеживание состояния сопоставления соединений: https://wiki.nftables.org/wiki-nftabl...
conntrack(8): https://manpages.ubuntu.com/manpages/...
Состояния портов Nmap: https://nmap.org/book/man-port-scanni...
AWS, группы безопасности: https://docs.aws.amazon.com/vpc/lates...
AWS, сетевые ACL: https://docs.aws.amazon.com/vpc/lates...
AWS, Сравнение групп безопасности и ACL сети: https://docs.aws.amazon.com/vpc/lates...
Модуль limit_req nginx: https://nginx.org/en/docs/http/ngx_ht...
Модуль access nginx: https://nginx.org/en/docs/http/ngx_ht...
NIST SP 800-41 Rev. 1, Руководство по брандмауэрам и политике брандмауэров: https://csrc.nist.gov/pubs/sp/800/41/...
Основной набор правил OWASP ModSecurity: https://coreruleset.org/
Демонстрации: реальный вывод из небольшой лабораторной сети, построенной с использованием контейнеров Docker на одной машине, с использованием только зарезервированных тестовых адресов (203.0.113.x и 198.51.100.x). У лаборатории нет доступа к реальному интернету, и каждое сканирование и попытка подключения нацелены только на собственные машины лаборатории.
#Сети #Брандмауэр #ДляНачинающих #Linux