Замовляйте VPS-сервер зі скидкою 15%
Акція завершиться через
00Днів
:
00Годин
:
00Хвилин
:
00Секунд

Налаштування IPTables

Це підсистема для роботи з мережевими пакетами, яка пропускає через свій фільтр усі з’єднання на сервері. У цій статті ми детально розглянемо налаштування IPTables.

 

Загальна інформація

IPTables уже за замовчуванням вбудована в основне ядро Linux, але користувацькі інструменти для роботи з нею в багатьох дистрибутивах не встановлюються автоматично, тож скористаймося наведеною нижче командою, щоб інсталювати цю утиліту.

 
Debian / Ubuntu

[sudo] apt install iptables
 

sudo використовується в Ubuntu OS. У Debian команду виконують без нього.

 
CentOS [Fedora]

sudo yum install iptables
 

Налаштування

Після встановлення утиліти можемо перейти до її детального налаштування.

 

Аргументи

 

-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 — передати пакет користувацькій програмі.

 

Відкриття портів

Спочатку перевіримо список наших правил:

iptables -L

 

Тепер відкриємо один TCP-порт 80 для вхідних з’єднань:

iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT

 

Перевіряємо список ще раз…

Тепер відкриємо діапазон UDP-портів від 25565 до 25570 для вихідних з’єднань:

iptables -t filter -A OUTPUT -p udp --dport 25565:25570 -j ACCEPT

 

Перевіряємо результат.

Хочете закрити усі вхідні з’єднання для TCP 250? Без проблем.

iptables -t filter -A INPUT -p tcp --dport 250 -m state --state ESTABLISHED -j DROP
 

Видалення правил

Тепер видалимо правило, яке дозволяє вхідні з’єднання для TCP 80:

iptables -t filter -D INPUT -p tcp --dport 80 -j ACCEPT
 

Видалення всіх правил

Для цього скористайтеся такою командою:

iptables -F
 

Збереження створених правил

Типово всі створені правила діють лише до наступного перезавантаження й будуть видалені під час нього. Щоб цього уникнути, збережімо створені нами правила IPTables. Для цього використайте відповідну команду.

iptables-save

 

Готово. Правила збережено, і вони залишаться активними навіть після перезавантаження сервера!