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

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

FirewallSecurity

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

Install-Shorewall-Firewall-in-Linux

 

 

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

 

Shorewall предлагает широкий спектр команд, которые можно запускать в командной строке. Взглянув на man shorewall, вы сможете увидеть многое, но первое, что мы собираемся выполнить, — это проверка наших файлов конфигурации:

$ sudo shorewall check

 

Shorewall выведет проверку всех ваших файлов конфигурации и опций, содержащихся в них. Вывод будет выглядеть примерно так:

Determining Hosts in Zones...
Locating Actions Files...
Checking /usr/share/shorewall/action.Drop for chain Drop...
Checking /usr/share/shorewall/action.Broadcast for chain Broadcast...
Checking /usr/shrae/shorewall/action.Invalid for chain Invalid...
Checking /usr/share/shorewall/action.NotSyn for chain NotSyn..
Checking /usr/share/shorewall/action.Reject for chain Reject...
Checking /etc/shorewall/policy...
Adding Anti-smurf Rules
Adding rules for DHCP
Checking TCP Flags filtering...
Checking Kernel Route Filtering...
Checking Martian Logging...
Checking Accept Source Routing...
Checking MAC Filtration -- Phase 1...
Checking /etc/shorewall/rules...
Checking /usr/share/shorewall/action.Invalid for chain %Invalid...
Checking MAC Filtration -- Phase 2...
Applying Policies...
Checking /etc/shorewall/routestopped...
Shorewall configuration verified

 

Строка, которую мы ищем, — та, что внизу гласит: «Shorewall configuration verified». Если вы получаете какие-либо ошибки, они, скорее всего, связаны с отсутствием модулей в конфигурации вашего ядра.

Мы покажем вам, как устранить две наиболее распространенные ошибки, но вам следует перекомпилировать ваше ядро ​​со всеми необходимыми модулями, если вы планируете использовать свою машину в качестве брандмауэра.

Первая и самая распространенная ошибка — это ошибка с NAT.

Processing /etc/shorewall/shorewall.conf...
Loading Modules...
Checking /etc/shorewall/zones...
Checking /etc/shorewall/interfaces...
Determining Hosts in Zones...
Locating Actions Files...
Checking /usr/share/shorewall/action.Drop for chain Drop...
Checking /usr/share/shorewall/action.Broadcast for chain Broadcast...
Checking /usr/shrae/shorewall/action.Invalid for chain Invalid...
Checking /usr/share/shorewall/action.NotSyn for chain NotSyn..
Checking /usr/share/shorewall/action.Reject for chain Reject...
Checking /etc/shorewall/policy...
Adding Anti-smurf Rules
Adding rules for DHCP
Checking TCP Flags filtering...
Checking Kernel Route Filtering...
Checking Martian Logging...
Checking Accept Source Routing...
Checking /etc/shorewall/masq...
ERROR: a non-empty masq file requires NAT in your kernel and iptables /etc/shorewall/masq (line 15)

 

Если вы видите что-то похожее на это, скорее всего, ваше текущее ядро ​​не скомпилировано с поддержкой NAT. Это характерно для большинства готовых ядер. Пожалуйста, прочитайте мою статью «Как скомпилировать ядро ​​Linux на CentOS 7?», чтобы начать.

Другая распространенная ошибка, возникающая при проверке, — это ошибка iptables и ведения журнала.

[email protected]:/etc/shorewall# shorewall check
Checking...
Processing /etc/shorewall/params...
Processing /etc/shorewall/shorewall.conf
Loading Modules..
ERROR: Log level INFO requires LOG Target in your kernel and iptables

 

Эта ошибка также, связана с компиляцией ядра, но есть решение — использовать ULOG. ULOG — это механизм ведения журнала, отличный от syslog. Его довольно легко использовать.

Чтобы установить ULOG, вы должны изменить каждый экземпляр «info» на «ULOG» во всех ваших файлах конфигурации в /etc/shorewall. Следующая команда может сделать это за вас:

$ cd /etc/shorewall
$ sudo sed –i ‘s/info/ULOG/g’ *

 

После этого отредактируйте файл «/etc/shorewall/shorewall.conf» и поменяйте строку:

LOGFILE=

 

В ней укажите адрес куда бы вы хотели, чтобы сохранялся ваш журнал. Наш находится в /var/log/shorewall.log:

LOGFILE=/var/log/shorewall.log

 

Выполнение «sudo shorewall check» должно дать вам полную оценку текущего состояния shorewall.

Интерфейс командной строки Shorewall поставляется со многими удобными «однострочниками» для системных администраторов. Одна из часто используемых команд, особенно когда в брандмауэр вносятся многочисленные изменения, — это сохранение текущего состояния конфигурации, чтобы вы могли откатиться, если возникнут какие-либо сложности. Синтаксис для неё прост:

$ sudo shorewall save <filename>

 

Откатиться так же просто:

$ sudo shorewall restore <filename>

 

Shorewall также можно запустить и настроить для использования альтернативного каталога конфигурации. Вы можете указать, что это команда выполняется в режиме тестового запуска, а только потом применить её на постоянном основании:

$ sudo shorewall check <config-directory>

 

Если вы просто хотите опробовать конфигурацию, запустите её указав опцию try:

$ sudo shorewall try <config-directory> [ ]

 

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

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

 

 

Спасибо за уделенное время на прочтение статьи об изучении конфигурации брандмауэра Shorewall и параметров командной строки!

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

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

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

Курсы Cisco и Linux с трудоустройством!

Спешите подать заявку! Осталось пару мест. Группы стартуют 22 июля, а следующая 19 августа, 23 сентября, 21 октября, 25 ноября, 16 декабря, 20 января, 24 февраля.
Что Вы получите?
  • Поможем стать экспертом в сетевом администрировании и получить международные сертификаты Cisco CCNA Routing & Switching или Linux LPI.
  • Предлагаем проверенную программу и учебник экспертов из Cisco Networking Academy и Linux Professional Institute, сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и сделать карьеру. 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проводим вечерние онлайн-лекции на нашей платформе или обучайтесь очно на базе Киевского офиса.
  • Спросим у вас об удобном времени для практик и подстроимся: понимаем, что времени учиться мало.
  • Если хотите индивидуальный график — обсудим и осуществим.
  • Выставим четкие дедлайны для самоорганизации. Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
А еще поможем Вам:
  • отредактировать резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроим на работу в Cisco по программе Cisco Incubator, New Graduate и Experienced. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco CCNA Routing & Switching и Linux LPI, подайте заявку или получите бесплатную консультацию.
FirewallSecurity

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

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

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

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

Самое читаемое
Iptables: установка и настройка

Iptables: установка и настройка

1,458
0
Iptables — это приложение/программа, которая позволяет настраивать предоставленный ядром Linux межсетевой экран, в котором пользователь имеет возможность добавлять или удалять…
Меню