HOWTO основи на iptables - LINUX за потребители

iptables

Днес накратко ще се върна към произхода на моя проект. В крайна сметка, първоначално, когато това беше не толкова блог, колкото стационарен сайт „чисто в HTML“, основната му цел беше да събира статии, книги, HOWTO и дори страници. С течение на времето, от чисто архивен, пакетът премина към повече новини. Но не съм забравил за необходимостта от натрупване на информация.

Следователно не можах да мина покрай отличното HOWTO, написано от уважавания Ite - „Основи на работата с iptables“. Мисля, че това ръководство ще бъде много полезно както за системните администратори, така и просто за напреднали потребители, които не се страхуват от командния ред. Съгласете се, че купуването на апартамент без посредници винаги е по-изгодно, както и наемането на жилище. Същото важи и за самостоятелното изпълнение на основните системни задачи. И това изисква определени знания. Ето защо предлагам да прочетете ръководството, скрито под среза. Щракнете върху Напред ...

Основи на Iptables.

Мисля, че много администратори на Linux поне веднъж са се натъквали на такава помощна програма като iptables, без значение каква е била: външно ограничение на достъпа, препращане на портове или маскарад. Но когато намерих ръководство за конкретна задача, бях разочарован, примерите просто не работиха. В тази статия ще се опитам да ви разкажа същността на тази помощна програма и основите за нейното успешно използване.

Маси и вериги.
В iptables има 3 таблици:

филтър - Използва се за филтриране на входящ, транзитен и изходящ трафик, има 3 вериги
INPUT - всички входящи пакети отиват тук
НАПРЕД - пакетите, предназначени за друга машина в мрежата, отиват тук
ИЗХОД - всички изходящи пакети
Можете да направите следното с пакетите, преминаващи във филтърната таблица:
DROP - блокиране на пакет
ACCEPT - позволете (пропуснете допълнително) пакета.
Това е веригата по подразбиране.

mangle - Таблица за смяна на заглавките на пакети. Има вериги: ПРЕДВАРИТЕЛНО, ПРЕДНО, ИЗХОДНО, ПОСТРОЙНО. Всички вериги имат една роля - да правят промени в заглавката на пакета на различни етапи от движението на този пакет през iptables веригите. Действия TOS, TTL, MARK могат да се извършват върху тези пакети.

От гледна точка на iptables, има 3 вида трафик:
Входящи
Транзит
Изходящи
Движението на пакета се случва в следното следствие:

След преминаване на nat (PREROUTING), въз основа на записите в mangle (PREROUTING) и nat (PREROUTING), ядрото решава дали трафикът ще бъде входящ или транзитен. Ако трафикът се окаже транзитен, отидете до веригата на маншетите (НАПРЕД),
ако влезе, тогава в mangle (INPUT).
1. Входящ трафик - данни, получени от приложението, работещо на компютъра
2. Изходящ трафик - трафик, който приложението предава по мрежата
3. Транзитен трафик - трафик, който преминава през нашия компютър към други (в случай че компютърът ни работи като рутер)

Работа с iptables.
Сега, след като имаме представа как трафикът преминава през нас, можем да направим нещо с него.

Основни iptables ключове:
-t (-table) - правилото посочва таблицата, в която ще бъдат направени промени, без да се посочва този ключ, използва се филтърната таблица
-A (-append) - добавете нов запис в края на веригата
-D (-delete) - изтриване на правило
-I (-insert) - вмъква правило над веригата с посочения номер
-R (-replace) - заменя определени критерии на стъпалото с число
-L (-list) - списък на правилата на веригата
-F (-flush) - премахнете всички правила от веригата
-P (-policy) - задайте действието по подразбиране, действието ще се извърши върху всички пакети, които не отговарят на други правила по никакви параметри.

iptables -A -p tcp -s 192.168.1.7/32 —dport 80 -j DROP

iptables -A -p tcp -s 192.168.1.7/32 -dport! 80 -j DROP

Изграждане на собствени правила за iptables.