Налаштовуємо службу firewalld

Починаючи з Fedora 17, у всіх клонах Red Hat Linux (наприклад в Red Hat Enterprise Linux і CentOS 7) з'явилася нова служба FirewallD для динамічного управління фаєрволом з підтримкою довірчих зон мережевих з'єднань або інтерфейсів. З огляду на те, що FirewallD запускається як служба, нові правила можна додавати без перезапуску, як це було з iptables, тобто без скидання встановленого фаєрвола і встановлення з'єднань заново. Зміни в конфігурації можуть бути зроблені в будь-який час, причому застосовуються миттєво: зберігати або застосовувати зміни не потрібно. Служба FirewallD використовує інструментарій iptables (iptables tool) для взаємодії з фільтром пакетів ядра.

Розглянемо основні відмінності FirewallD і iptables:

  • Служба iptables зберігає конфігурацію в / etc / sysconfig / iptables в той час як FirewallD зберігає її в різних XML-файлах в / usr / lib / firewalld / і / etc / firewalld /. Цікаво зауважити, що файл / etc / sysconfig / iptables не існуватиме, якщо сучасну систему Linux (наприклад, Red Hat Enterprise Linux) встановити з FirewallD за замовчуванням.
  • Для iptables service кожну зміну означало скидання скидання старих правил і читання всіх нових з / etc / sysconfig / iptables, однак для FirewallD не існує поняття «відтворення» правил; при конфігурації тільки відмінності в правилах враховуються і застосовуються. Таким чином, FirewallD може змінювати налаштування під час виконання без втрати старих з'єднань.

Основна схожість: обидва iptables і FirewallD використовують однаковий інструментарій iptables (iptables tool).

Позбавляємося від FirewallD

Якщо, будучи прихильником старої школи, ми вирішили позбутися від FirewallD і повернутися, до iptables, то це цілком можливо навіть на CentOS 7:

Якщо ж ми переходимо на FirewallD, то розбираємося далі.

Перевіряємо, чи встановлені потрібні пакети, ставимо якщо потрібно

Концепція зон FirewallD

FirewallD використовує мережеві зони для визначення рівня довіри мережевого з'єднання, з'єднання може бути частиною тільки однієї зони, але одна зона може визначати кілька мережевих підключень.

Для використання в загальних випадках створено кілька зумовлених зон:

  • drop - входять мережеві пакети скидаються, без відповіді, допускаються тільки вихідні з'єднання
  • block - входять мережеві з'єднання відхиляються з повідомленням icmp-host-prohibited, допускаються тільки мережеві з'єднання ініційовані всередині нашої системи.
  • public - при недовіру до комп'ютерів, дозволяється встановлювати тільки конкретні вхідні з'єднання.
  • external - для використання в зовнішніх мережах з дозволеним маськарадінг, особливо для роутерів, дозволяється встановлювати тільки конкретні вхідні з'єднання
  • dmz - для комп'ютерів власної demilitarized zone які публічно доступні з обмеженим доступом до нашої внутрішньої мережі, дозволяється встановлювати тільки конкретні вхідні з'єднання.
  • work / home / internal - максимальна довіра до комп'ютерів, впевненість в тому, що вони не заподіяна шкода нашому комп'ютера, дозволяється встановлювати тільки конкретні вхідні з'єднання
  • trusted - всі мережеві з'єднання дозволені.

конфігурація

FirewallD може бути налаштований через інструмент конфігурації firewall-config з графічним інтерфейсом, через командний рядок firewall-cmd або інтерфейс D-BUS.

Доступ до інструмент конфігурації firewall-config з графічним інтерфейсом здійснюється командою firewall-config або ж запуском через меню.

Після запуску буде видно список зон, про які говорилося вище, можна вибрати будь-яку з них і виконати настройки відповідно до варіантів:

  • Services - trusted services that can be accessed from all hosts.
  • Ports - trusted ports that will be open in this zone
  • Masquerading - allows you to setup a host or router that connects your local network to the internet
  • Port Forwarding - add entries to allow port forward either from one port to another or one host to another.
  • ICMP Filters - trusted icmp services
  • Rich rules - use rich language to add complex rules
  • Interfaces - bind interfaces to the zone
  • Sources - bind source address or ares to the zone

На мій погляд, найбільш зручним інструментом налаштування залишається командний рядок і, відповідно, команда firewall-cmd. Розглянемо найбільш вживані команди:

Схожі статті