Налаштування IPTables: правила та приклади
Налаштування IPTables
Це підсистема для роботи з мережевими пакетами, яка пропускає через свій фільтр усі з’єднання на сервері. У цій статті ми детально розглянемо налаштування IPTables.
Загальна інформація
IPTables уже за замовчуванням вбудована в основне ядро Linux, але користувацькі інструменти для роботи з нею в багатьох дистрибутивах не встановлюються автоматично, тож скористаймося наведеною нижче командою, щоб інсталювати цю утиліту.
sudo використовується в Ubuntu OS. У Debian команду виконують без нього.
Налаштування
Після встановлення утиліти можемо перейти до її детального налаштування.
Аргументи
-A — додати правило до ланцюга.
-C — перевірити правила.
-D — видалити правило.
-I — вставити правило на потрібну позицію.
-L — вивести всі правила у поточному ланцюзі.
-S — вивести всі правила.
-F — очистити всі правила.
-N — створити ланцюг.
-X — видалити ланцюг.
-P — встановити політику за замовчуванням.
-p — вказати протокол.
-s — вказати адресу відправника.
-d — вказати адресу одержувача.
-i — вхідний мережевий інтерфейс.
-o — вихідний мережевий інтерфейс.
-j — дія, яку потрібно виконати, якщо правило спрацьовує.
INPUT — відповідає за обробку вхідних пакетів і з’єднань.
FORWARD — застосовується до транзитних з’єднань. Сюди потрапляють пакети, які надсилаються на ваш сервер, але він не є кінцевим пунктом доставки.
OUTPUT — протилежний до INPUT. Використовується для вихідних пакетів і з’єднань.
ACCEPT — дозволити пакет.
DROP — відкинути пакет.
REJECT — відхилити пакет.
LOG — записати в журнал відповідний пакет.
QUEUE — передати пакет користувацькій програмі.
Відкриття портів
Спочатку перевіримо список наших правил:
Тепер відкриємо один TCP-порт 80 для вхідних з’єднань:
Перевіряємо список ще раз…
Тепер відкриємо діапазон UDP-портів від 25565 до 25570 для вихідних з’єднань:
Перевіряємо результат.
Хочете закрити усі вхідні з’єднання для TCP 250? Без проблем.
Видалення правил
Тепер видалимо правило, яке дозволяє вхідні з’єднання для TCP 80:
Видалення всіх правил
Для цього скористайтеся такою командою:
Збереження створених правил
Типово всі створені правила діють лише до наступного перезавантаження й будуть видалені під час нього. Щоб цього уникнути, збережімо створені нами правила IPTables. Для цього використайте відповідну команду.
Готово. Правила збережено, і вони залишаться активними навіть після перезавантаження сервера!