====== IPtables ======
Подивитись список правил
iptables -L
Очистити список правил
iptables -F
===== Види пакетів =====
Усі пакети поділяються на три типи: вхідні, вихідні та ті, що проходять. Вхідні - це ті, які були відправлені на цей комп'ютер, вихідні - відправлені з цього комп'ютера в мережу. А ті, що проходять, - це пакети, які просто мають бути переслані далі, наприклад, якщо ваш комп'ютер виступає як маршрутизатор.
Відповідно у фільтрі iptables усі пакети діляться на три аналогічні ланцюжки:
* ''Input'' - обробляє вхідні пакети і підключення. Наприклад, якщо будь-який зовнішній користувач намагається під'єднатися до вашого комп'ютера через ssh або будь-який веб-сайт надішле вам свій контент за запитом браузера. Усі ці пакети потраплять у цей ланцюжок;
* ''forward'' - цей ланцюжок застосовується для з'єднань, що проходять. Сюди потрапляють пакети, які надіслані на ваш комп'ютер, але не призначені йому, вони просто пересилаються мережею до своєї мети. Як я вже говорив, таке спостерігається на маршрутизаторах або, наприклад, якщо ваш комп'ютер роздає wifi;
* ''output'' - цей ланцюжок використовується для вихідних пакетів і з'єднань. Сюди потрапляють пакети, які були створені під час спроби виконати ping losst.pro або коли ви запускаєте браузер і намагаєтеся відкрити будь-який сайт.
===== Правила та дії =====
Перед тим як перейти до створення списку правил iptables, потрібно розглянути як вони працюють і які бувають. Для кожного типу пакетів можна встановити набір правил, які по черзі перевірятимуться на відповідність із пакетом і якщо пакет відповідає, то застосовуватимуть до нього зазначену в правилі дію. Правила утворюють ланцюжок, тому input, output і forward називають ланцюжками, ланцюжками правил. Дій може бути кілька:
* **ACCEPT** - дозволити проходження пакета далі по ланцюжку правил;
* **DROP** - видалити пакет;
* **REJECT** - відхилити пакет, відправнику буде надіслано повідомлення, що пакет було відхилено;
* **LOG** - зробити запис про пакет у лог-файл;
* **QUEUE** - надіслати пакет користувацькому застосунку.
==== Приклад: ====
**Дозволити** підключення на 80 порт:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
**Видалити** правило iptables:
Перевірити номер правила:
iptables -L -n –line-numbers
Видалити потрібне правило:
iptables -D INPUT 2
**Зберегти**:
sudo iptables-save> /etc/iptables/rules.v4