
Перед вами краткий обзор книги "Linux для сетевых инженеров". Это пособие ориентировано на специалистов, администрирующих сетевые инфраструктуры любого типа, и ставит перед собой сразу несколько насущных задач. Начиная с самых азов в виде истории Linux, выбора дистрибутива и настройки сети, заканчивая знакомством с различными инструментами и всесторонней защитой налаженной системы, она стремится сформировать у читателя целостный каркас знаний.
Книга позволит вам уверенно разобраться в организации многочисленных служб сети и научит правильно их конфигурировать. В ней вы узнаете, как снизить стоимость обслуживания серверов и решать поставленные задачи, используя некоммерческие открытые продукты. Значительная часть книги посвящена вопросу защиты сети от возможных атак, который будет рассмотрен с позиции распространенных тактик злоумышленников и эффективных способов противодействия им.
Целевой аудиторией книги являются как простые энтузиасты и начинающие администраторы, так и опытные специалисты, стремящиеся расширить свои знания и набор имеющихся навыков.
Далее я более подробно раскрою содержание книги по частям и приведу фрагменты текста, чтобы вы могли наглядно оценить охват ее материала и пользу.
Об авторе
Роб Ванденбринк занимает должность консультанта в компании Coherent Security, а также сотрудничает с сайтом Internet Storm Center, который ежедневно публикует сводки новостей и записи из блогов на тему информационной безопасности. Кроме того, Роб в качестве волонтера помогает составлять бенчмарки, выпускаемые Центром интернет-безопасности (CIS).
В его специализацию входят всевозможные аспекты ИБ, сетевой инфраструктуры, проектирования сетей, центров обработки данных, автоматизации, виртуализации и координации в сфере IT. Роб разработал несколько инструментов, обеспечивающих соблюдение установленных политик пользователями VPN, создал ряд сетевых компонентов Cisco IOS, а также программы аудита и оценки безопасности для брандмауэра Palo Alto Networks и платформы VMware vSphere.
Он окончил Технологический институт SANS со степенью магистра в сфере систем ИБ, а также получил ряд профессиональных сертификатов SANS/GIAC, VMware и Cisco.
В его специализацию входят всевозможные аспекты ИБ, сетевой инфраструктуры, проектирования сетей, центров обработки данных, автоматизации, виртуализации и координации в сфере IT. Роб разработал несколько инструментов, обеспечивающих соблюдение установленных политик пользователями VPN, создал ряд сетевых компонентов Cisco IOS, а также программы аудита и оценки безопасности для брандмауэра Palo Alto Networks и платформы VMware vSphere.
Он окончил Технологический институт SANS со степенью магистра в сфере систем ИБ, а также получил ряд профессиональных сертификатов SANS/GIAC, VMware и Cisco.
Что в книге
Несмотря на то, что оригинал книги вышел в 2021 году, она по-прежнему содержит много актуальной информации, которая пригодится как инженерам, работающим с легаси-системами, так и любым специалистам, желающим получить или расширить знания сетевой инфраструктуры и её компонентов в среде Linux. Поверхностно рассматривая самые азы, она постепенно углубляется в тему использования Linux для организации сетевой инфраструктуры, включая конфигурирование надежной защиты.
В книге рассматривается широкий спектр служб, охватывающих все основные аспекты управления системами. Среди них вы встретите Netcat, Kismet, iptables, SELinux, ISC DHCP, OpenSSL, HAProxy и другие. Также в ней разбираются различные, возможно незнакомые вам инструменты, познакомившись с которыми вы сможете упростить себе жизнь, повысить качество обслуживания инфраструктуры и лучше ее защитить. Это и NetworkMiner, позволяющий просеивать большие объемы перехваченных пакетов, и система управления сетью LibreNMS, и системы предотвращения вторжений вроде Suricata, и различные виды приманок вроде ThinkstCanary и WebLabyrinth, а также многие другие полезные инструменты.
Подробнее по частям
Часть 1
Первая часть является вводной и самой короткой. Здесь в общих чертах будут описаны преимущества этой ОС и ее ценность для сетевых инженеров. Она познакомит вас с историей появления и основами Linux, включая рекомендации по выбору подходящего дистрибутива для вашей организации. Отдельная глава этой части будет посвящена базовой настройке сети в Linux, а также управлению локальными интерфейсами и другим вводным деталям.
Фрагмент 1
Чтобы понять происхождение Linux, сперва нужно обсудить историю Unix. Система Unix была разработана в конце 1960-х — начале 1970-х годов в Bell Labs, ее главные создатели — Деннис Ритчи и Кен Томпсон. Название Unix на самом деле было шуточным антонимом Multics — так называлась более ранняя операционная система, которая во многом вдохновила создателей Unix.
В 1983 году Ричард Столлман и Фонд свободного программного обеспечения (Free Software Foundation, FSF) запустили проект GNU (рекурсивная аббревиатура — GNU's Not Unix), целью которого было создать Unix-подобную ОС, доступную для всех бесплатно. Результатом этих усилий стало ядро GNU Hurd, которое принято считать предшественником сегодняшних версий Linux. (SFS предпочел бы, чтобы мы называли их все GNU/Linux.)
История Linux
Чтобы понять происхождение Linux, сперва нужно обсудить историю Unix. Система Unix была разработана в конце 1960-х — начале 1970-х годов в Bell Labs, ее главные создатели — Деннис Ритчи и Кен Томпсон. Название Unix на самом деле было шуточным антонимом Multics — так называлась более ранняя операционная система, которая во многом вдохновила создателей Unix.
В 1983 году Ричард Столлман и Фонд свободного программного обеспечения (Free Software Foundation, FSF) запустили проект GNU (рекурсивная аббревиатура — GNU's Not Unix), целью которого было создать Unix-подобную ОС, доступную для всех бесплатно. Результатом этих усилий стало ядро GNU Hurd, которое принято считать предшественником сегодняшних версий Linux. (SFS предпочел бы, чтобы мы называли их все GNU/Linux.)
Фрагмент 2
В современных сетевых командах сведения о маршрутизации выводятся с помощью той же команды
Из этого вывода видно, что существует маршрут по умолчанию, который указывает на
Вывод сведений о маршрутизации
В современных сетевых командах сведения о маршрутизации выводятся с помощью той же команды
ip
. Как вы наверняка догадались, полностью команда выглядит как ip route
, и ее можно сократить до ip r
:robv@ubuntu:~$ ip route
default via 192.168.122.1 dev ens33 proto dhcp metric 100
169.254.0.0/16 dev ens33 scope link metric 1000
192.168.122.0/24 dev ens33 proto kernel scope link src
192.168.122.156 metric 100
robv@ubuntu:~$ ip r
default via 192.168.122.1 dev ens33 proto dhcp metric 100
169.254.0.0/16 dev ens33 scope link metric 1000
192.168.122.0/24 dev ens33 proto kernel scope link src
192.168.122.156 metric 100
Из этого вывода видно, что существует маршрут по умолчанию, который указывает на
192.168.122.1
. Этот маршрут работает так: если пакет отправляется в пункт назначения, которого нет в таблице маршрутизации, узел передает этот пакет на свой шлюз по умолчанию. Таблица маршрутизации всегда будет отдавать предпочтение наиболее специфичному маршруту, то есть тому, который точнее всего соответствует IP-адресу назначения. Если совпадений нет, то наиболее специфичный маршрут ведет к шлюзу по умолчанию, который указывает на 0.0.0.0 0.0.0.0
(другими словами, маршрут по принципу «если больше ничего не подходит»). Узел предполагает, что IP-адрес шлюза по умолчанию принадлежит маршрутизатору, который, предположительно, знает, куда отправить пакет дальше.Часть 2
Более развернуто в книге представлена тема использования Linux как сетевого узла и платформы для устранения неполадок. В этой части рассматриваются всевозможные аспекты диагностики и защиты сетей, начиная с основ функционирования сети, сканирования портов и особенностей работы брандмауэра, заканчивая стандартами безопасности с приведением реальных примеров, объясняющих их ценность. Здесь вы узнаете о том, как работают порты TCP и UDP, расширите свои знания по диагностике беспроводных сетей, научитесь настраивать
iptables
и nftables
, а также познакомитесь с распространенными принципами и техниками защиты систем.
Фрагмент 1
На следующей диаграмме (рис. 3.2) проиллюстрирован чрезвычайно важный принцип модели OSI. При получении данных они перемещаются вверх по стеку — от самых примитивных форм до все более абстрактных и высокоуровневых конструкций (например, от битов до кадров, пакетов, API и приложений). Наоборот, при отправке данных они перемещаются с прикладного уровня в сторону двоичного представления в физической среде передачи (то есть от верхних уровней к нижним).
Уровни 1–3 часто называют уровнями среды (

Уровни 1–3 часто называют уровнями среды (
media
или network
), а уровни 4–7 — уровнями узла (host
или application
):
Фрагмент 2
Диагностика в беспроводных сетях обычно связана с обнаружением помех и областей с низким уровнем сигнала — факторов, которые создают проблемы для пользователей.
Есть несколько отличных инструментов беспроводной диагностики на основе Linux, из которых мы обсудим Kismet, Wavemon и LinSSID. Все три инструмента бесплатны, и их можно установить с помощью стандартной команды
Kismet — один из старейших беспроводных инструментов, доступных для Linux. Я впервые столкнулся с ним как со средством информационной безопасности, выяснив, что «скрытые» беспроводные SSID на самом деле вовсе не были скрыты!
Чтобы запустить Kismet, используйте такую команду:
Диагностика беспроводных сетей
Диагностика в беспроводных сетях обычно связана с обнаружением помех и областей с низким уровнем сигнала — факторов, которые создают проблемы для пользователей.
Есть несколько отличных инструментов беспроводной диагностики на основе Linux, из которых мы обсудим Kismet, Wavemon и LinSSID. Все три инструмента бесплатны, и их можно установить с помощью стандартной команды
apt-get install <имя пакета>
. Если расширить поиск, включив в него программы, имитирующие атаку, или коммерческие продукты, этот список, очевидно, станет намного больше.Kismet — один из старейших беспроводных инструментов, доступных для Linux. Я впервые столкнулся с ним как со средством информационной безопасности, выяснив, что «скрытые» беспроводные SSID на самом деле вовсе не были скрыты!
Чтобы запустить Kismet, используйте такую команду:
$ sudo kismet -c <имя беспроводного интерфейса>
Часть 3
Самой же обширной станет третья часть, посвященная сетевым службам Linux. В этом разделе подробно разбирается очень много тем, начиная с базовых служб DNS и DHCP и особенностей балансировки нагрузки, заканчивая широким спектром техник обеспечения безопасности, которым посвящены целые отдельные главы. К примеру, глава 8 раскрывает тему работы со службами сертификатов, включая создание частного центра сертификации, автоматизацию выдачи сертификатов и защиту сопутствующей инфраструктуры. Помимо сертификации, в этой части будут рассмотрены вопросы, связанные с внедрением RADIUS, перехватом пакетов, сетевым мониторингом и реализацией систем предотвращения вторжений (IPS) на примере классических механизмов Snort и Surikata.
Фрагмент 1
Что происходит, когда клиент делает DNS-запрос? Если этот запрос относится к одному из внутренних узлов организации и обращен к внутреннему DNS-серверу, то ответ DNS приходит немедленно, потому что он поступает с этого внутреннего сервера.
Если запрос относится к внешнему узлу, то процедура устроена немного сложнее. Давайте, например, запросим

Если запрос относится к внешнему узлу, то процедура устроена немного сложнее. Давайте, например, запросим
www.example.com
. Прежде чем мы начнем, обратите внимание, что на следующем рисунке показан наихудший случай. На самом деле почти на каждом этапе происходит процесс кэширования, который обычно по- зволяет пропустить один или несколько шагов:
Фрагмент 2
В этой главе мы рассмотрим службу RADIUS (Remote Authentication Dial-In User Service, служба удаленной аутентификации пользователей с телефонным подключением) — один из основных методов аутентификации служб в сети. Мы внедрим FreeRADIUS на наш сервер, свяжем его с каталогом облегченного протокола прикладного уровня для доступа к каталогам Lightweight Directory Access Protocol (LDAP)/Secure LDAP (LDAPS) и будем использовать его для аутентификации доступа к различным службам в сети.
В частности, мы рассмотрим следующие темы:
(MFA) с RADIUS
В частности, мы рассмотрим следующие темы:
- Основные понятия RADIUS: что такое RADIUS и как он работает
- Внедрение RADIUS с локальной аутентификацией Linux
- RADIUS с внутренней аутентификацией LDAP/LDAPS
- Unlang — язык конфигурационных файлов FreeRADIUS
- Сценарии использования RADIUS
- Использование Google Authenticator для многофакторной аутентификации
(MFA) с RADIUS
Завершается основное содержание книги главой, посвященной использованию в Linux приманок (honeypot). Здесь вы узнаете, что это за службы, зачем они нужны, где такие приманки расставлять и какие с этим сопряжены риски.
Фрагмент 3
В этом разделе мы обсудим, как создавать и развертывать различные приманки. Мы расскажем, как их настроить, где их можно разместить и почему. Вот на каких решениях мы сосредоточимся:
Примеры приманок
В этом разделе мы обсудим, как создавать и развертывать различные приманки. Мы расскажем, как их настроить, где их можно разместить и почему. Вот на каких решениях мы сосредоточимся:
- Простые приманки типа «порт TCP», которые оповещают о сканировании портов и попытках подключения к различным службам. Мы обсудим как механизмы оповещений без открытых портов (чтобы злоумышленник не знал, что он поднял тревогу), так и фактические службы с открытыми портами, которые замедляют действия злоумышленника.
- Готовые приложения-приманки — как с открытым исходным кодом, так и коммерческие.
- Приманка DShield Honeypot от Internet Storm Center — распределенное решение, которое работает в интернете.
Все главы книги сопровождаются контрольными вопросами, помогающими проверить качество усвоения материала, а также набором полезных ссылок для более углубленного погружения в тему.
Приобрести книгу можно на сайте издательства, а также на платформах OZON и Wildberries.