Shorewall-–-A-High-Level-Firewall-for-Configuring-Linux-Servers

Shorewall — высокоуровневый брандмауэр для настройки серверов Linux

Рубрики:

Firewall, Security

Метки:

, ,

Настройка брандмауэра в Linux может быть очень сложной для новичка или для любого пользователя, кто не очень знаком с iptables. К счастью, существует очень простое в использовании решение — Shorewall.

Install-Shorewall-Firewall-in-Linux - Shorewall — высокоуровневый брандмауэр для настройки серверов Linux

 

 

В этой статье, состоящей из нескольких частей, я познакомлю вас с Shorewall и расскажу о некоторых более сложных темах с этой удивительной системой брандмауэра.

 

 

Что такое Shorewall?

Shorewall по сути является интерфейсом для iptables, но это интерфейс командной строки, который использует несколько текстовых файлов для своей конфигурации. Хотя это надежная система брандмауэра, которую можно масштабировать в очень больших сетях, обслуживающих многочисленные машины, мы начнем с базовой конфигурации с двумя интерфейсами и лишь потом углубимся в основы.

Конфигурация с двумя интерфейсами состоит из машины с двумя портами Ethernet, один входящий, а другой выходящий — в локальную сеть.

 

 

Установка Shorewall в Linux

Shorewall можно установить с помощью инструментов менеджера пакетов apt-get и yum.

 

В Debian / Ubuntu / Linux Mint

 

В RHEL / CentOS / Fedora

 

После установки нам нужно скопировать пример конфигурации из каталога /usr/share/doc/shorewall в каталог по умолчанию Shorewall в /etc/shorewall:

 

А затем перейдите в /etc/shorewall:

 

Если мы посмотрим в этот каталог, то увидим кучу файлов и файл shorewall.conf. Shorewall рассматривает сеть как группу различных зон, поэтому первый файл, который мы хотим посмотрим, это файл /etc/shorewall/zone:

Zones - Shorewall — высокоуровневый брандмауэр для настройки серверов Linux

 

Здесь мы видим, что по умолчанию определены три зоны: net, loc и all. Важно отметить, что Shorewall рассматривает сам компьютер брандмауэра как свою собственную зону и сохраняет его в переменной с именем $FW. Вы увидите эту переменную во всех остальных файлах конфигурации.

Файл /etc/shorewall/zone довольно понятен. У вас есть сетевая зона «net» (интерфейс с выходом в Интернет), локальная зона «loc» (интерфейс с выходом в сеть) и all — всё остальное:

Policy

 

Эта настройка влияет на следующее:

  • Разрешает все запросы на подключение из локальной зоны (LAN) в сетевую зону (Интернет).
  • Отбрасывает все запросы на подключение (игнорирует) из сетевой зоны к брандмауэру и локальной сети.
  • Отклоняет и регистрирует все остальные запросы.

 

Бит LOG LEVEL должен быть знаком любому, кто занимался администрированием с Apache, MySQL или любой другой программой FOSS. В этом случае мы указываем Shorewall использовать информационный уровень ведения журнала.

Если вы хотите, чтобы ваш брандмауэр был доступен для администрирования из вашей локальной сети, вы можете добавить следующие строки в файл «/etc/shorewall/policy»:

 

Теперь, когда наши зоны и политика установлены, мы должны настроить наши интерфейсы. Сделаем это, редактируя файл /etc/shorewall/interfaces:

Interfaces - Shorewall — высокоуровневый брандмауэр для настройки серверов Linux

 

Здесь мы установили наш интернет-интерфейс как eth0 для сетевой зоны. На стороне локальной сети мы установили другой интерфейс, eth1. Пожалуйста, настройте этот файл для корректной работы вашей конфигурации.

Различные варианты, которые вы можете разместить для любого из этих интерфейсов, обширны и подробно объяснены на странице руководства:

 

Ниже приведены некоторые из них:

  • nosmurfs — фильтровать пакеты с широковещательным адресом в качестве источника.
  • logmartians — регистрировать пакеты с невозможным адресом источника.
  • routefilter — фильтрация маршрутов ядра для защиты от спуфинга.

 

Конечно, теперь, когда наша система защищена брандмауэром, нам понадобятся разрешить некоторые соединения, чтобы можно было выполнить доступ к устройству. Вы определяете их в файле правил в /etc/shorewall/rules:

Rules

 

Этот файл на первый взгляд выглядит запутанным, главным образом потому, что столбцы перекрываются, но заголовки довольно понятны. Во-первых, у вас есть столбец ACTION, который описывает, что вы хотите выполнить.

Затем у вас есть заголовок SOURCE, в котором вы определяете зону, из которой отправляется пакет. Затем у вас есть DEST или пункт назначения, который является зоной или IP-адресом пункта назначения. Давайте используем предоставленный пример.

Предположим, вы хотите запустить SSH-сервер за брандмауэром на компьютере с IP-адресом 192.168.1.25. Вам нужно будет не только открыть порт в брандмауэре, но и указать брандмауэру, что любой трафик, поступающий через порт 22, должен направляться на компьютер по адресу 192.168.1.25.

Это известно как переадресация портов. Это общая функция на большинстве межсетевых экранов/маршрутизаторов. В /etc/shorewall/rules это можно сделать, добавив следующую строку:

 

SSH-Port-Forwarding - Shorewall — высокоуровневый брандмауэр для настройки серверов Linux

 

Выше мы определили, что любые предназначенные для SSH пакеты, поступающие из сетевой зоны на межсетевой экран, должны маршрутизироваться (DNAT) на порт 22 на компьютере с адресом 192.168.1.25.

Это называется преобразованием сетевых адресов или NAT. Буква «D» просто указывает Shorewall, что это NAT для адреса назначения (destenation). Чтобы это работало, в вашем ядре должна быть включена поддержка NAT.

 

 

Полезные ссылки

Домашняя страница Shorewall

 

В следующей статье мы пройдемся по некоторым более сложным темам, основой для них станут знания полученные вами из этой статьи. Как всегда, пожалуйста, взгляните на справочные страницы для более глубокого понимания.

 

 

Читайте также: Изучение конфигурации брандмауэра Shorewall и параметров командной строки

 

 

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Ciscoкурсы по кибербезопасности,  полный курс по кибербезопасностикурсы DevNet (программируемые сети) от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).

Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!

Спешите подать заявку! Группы стартуют 25 января, 26 февраля, 22 марта, 26 апреля, 24 мая, 21 июня, 26 июля, 23 августа, 20 сентября, 25 октября, 22 ноября, 20 декабря.
Что Вы получите?
  • Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
  • Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проведем вечерние онлайн-лекции на нашей платформе.
  • Согласуем с вами удобное время для практик.
  • Если хотите индивидуальный график — обсудим и реализуем.
  • Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
  • Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
А еще поможем Вам:
  • отредактировать или создать с нуля резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco, Linux LPI, кибербезопасность, DevOps / DevNet, Python, подайте заявку или получите бесплатную консультацию.

Рубрики:

Firewall, Security

Метки:

, ,

Больше похожих постов

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения


Поиск по сайту
Лучшее
Популярное
Рубрики
Меню