Операционные системы - статьи


Изменение нескольких правил одной командой


Иногда одна команда может воздействовать сразу на несколько правил. Это может происходить по двум причинам.

Во-первых, если вы указываете символический адрес машины, а его разрешение через DNS дает несколько различных IP-адресов, то ipchains будет действовать так, как если бы вы ввели несколько команд со всеми возможными сочетаниями IP-адресов. Например, если www.foo.com разрешается в 3 адреса, а www.bar.com - в 2 адреса, и вы ввели команду ipchains -A input -j reject -S www.bar.com -d www.foo.com

то ко входной цепочке добавится 6 правил.

Во-вторых, ipchains может выполнить несколько действий, если вы указали флаг '-b' (bidirectional). При этом ipchains будет действовать так, как если бы вы ввели команду дважды, во втором случае поменяв местами параметры '-s' и '-d'. Например, чтобы запретить пересылку пакетов от и к 192.168.1.1, можно воспользоваться командой: ipchains -b -A forward -j REJECT -s 192.168.1.1

Флаг '-b' может применяться в командах '-A', '-C', '-I', '-D' (кроме удаления по номеру правила).

Еще один полезный флаг - '-v' (verbose), который позволяет точно узнать, что сделала ваша команда. Он особенно полезен, если ваша команда может воздействовать сразу на несколько правил. Например, можно проверить, как работает пересылка фрагментов сразу в обе стороны между 192.168.1.1 и 192.168.1.2: ipchains -v -b -C input -p tcp -f -s 192.168.1.1 -d 192.168.1.2 -i lo

Пример настройки маскарадинга

ipchains -P forward DENY ipchains -A forward -s 192.168.1.0/24 -j MASQ echo 1 > /proc/sys/net/ipv4/ip_forward

Сначала отключается вся пересылка пакетов, потом включается маскарадинг в предположении, что в локальной сети используются адреса из пула 192.168.1.x.

Можно усложнить правила маскарадинга, указав адреса конкретных машин, для которых надо его осуществлять: ipchains -P forward DENY ipchains -A forward -s 192.168.1.2 -j MASQ ipchains -A forward -s 192.168.1.8 -j MASQ echo 1 > /proc/sys/net/ipv4/ip_forward

Остальные машины, кроме 192.168.1.2 и 192.168.1.8 доступа в интернет не получат.




Начало  Назад  Вперед



Книжный магазин