|
|
(не показаны 33 промежуточные версии этого же участника) |
Строка 1: |
Строка 1: |
| | Что надо знать? |
| | |
| = iptables = | | = iptables = |
|
| |
|
| Практически копипаст статьи: https://losst.ru/nastrojka-iptables-dlya-chajnikov
| | [[Iptables]] |
|
| |
|
| == цепочки == | | = ip = |
| | [[IP utility (Linux)]] |
|
| |
|
| Input, forward, output
| | = сети = |
|
| |
|
| | [[сети]] |
|
| |
|
| * prerouting - в эту цепочку пакет попадает перед обработкой iptables, система еще не знает куда он будет отправлен, в input, output или forward;
| | = tcpdump = |
| * postrouting - сюда попадают все проходящие пакеты, которые уже прошли цепочку forward
| |
|
| |
|
| == ПРАВИЛА И ДЕЙСТВИЯ ==
| | [[Tcpdump (Linux)]] |
|
| |
|
| * ACCEPT - разрешить прохождение пакета дальше по цепочке правил;
| | = strace = |
| * DROP - удалить пакет;
| |
| * REJECT - отклонить пакет, отправителю будет отправлено сообщение, что пакет был отклонен;
| |
| * LOG - сделать запись о пакете в лог файл;
| |
| * QUEUE - отправить пакет пользовательскому приложению.
| |
|
| |
|
| == ТАБЛИЦЫ IPATABLES ==
| | [[Strace (Linux)]] |
|
| |
|
| Над цепочками правил в iptables есть еще один уровень абстракции, и это таблицы. В системе есть несколько таблиц, и все они имеют стандартный набор цепочек input, forward и output. Таблицы предназначены для выполнения разных действий над пакетами, например для модификации или фильтрации. Сейчас это для вас не так важно и будет достаточно знать что фильтрация пакетов iptables осуществляется в таблице filter
| | = SQL = |
| | |
| * raw - предназначена для работы с сырыми пакетами, пока они еще не прошли обработку;
| |
| * mangle - предназначена для модификации пакетов;
| |
| * nat - обеспечивает работу nat, если вы хотите использовать компьютер в качестве маршрутизатора;
| |
| * filter - основная таблица для фильтрации пакетов, используется по умолчанию.
| |
| | |
| == syntax == | |
| | |
| Осталось рассмотреть основные действия, которые позволяет выполнить iptables:
| |
| <source>
| |
| -A - добавить правило в цепочку;
| |
| -С - проверить все правила;
| |
| -D - удалить правило;
| |
| -I - вставить правило с нужным номером;
| |
| -L - вывести все правила в текущей цепочке;
| |
| -S - вывести все правила;
| |
| -F - очистить все правила;
| |
| -N - создать цепочку;
| |
| -X - удалить цепочку;
| |
| -P - установить действие по умолчанию.
| |
| Дополнительные опции для правил:
| |
| | |
| -p - указать протокол, один из tcp, udp, udplite, icmp, icmpv6,esp, ah, sctp,
| |
| mh;
| |
| -s - указать ip адрес устройства-отправителя пакета;
| |
| -d - указать ip адрес получателя;
| |
| -i - входной сетевой интерфейс;
| |
| -o - исходящий сетевой интерфейс;
| |
| -j - выбрать действие, если правило подошло.
| |
| </source>
| |
| | |
| | |
| = strace =
| |
|
| |
|
| * <code>strace -e *syscall*</code> - вывести только вызовы определенного syscall
| | [[SQL]] |