WebMoney: WMZ Z294115950220 WMR R409981405661 WME E134003968233 |
Visa 4274 3200 2453 6495 |
Если Вы уже прочитали главы о firewall и accounting, у Вас уже не вызовет
удивления, что для настройки правил IP masquerade используются знакомые
команды ipfwadm, ipchains и
iptables. Правила masquerade представляют собой специальный класс правил фильтрации.
Вы можете обеспечить masquerade только пакетов, которые получены на одном
интерфейсе и будут направлены другому интерфейсу. Чтобы настроить masquerade
надо создать правило, очень похожее на правило пересылки firewall, но со
специальными параметрами, которые сообщают ядру, что надо использовать
masquerade пакетов. Команда ipfwadm использует опцию
-m, ipchains использует
-j MASQ, а в iptables есть
опция -j MASQUERADE, чтобы указать, что пакеты,
соответствующие спецификации правила, должны быть masqueraded. Давайте рассмотрим пример. Допустим, у студента университета Groucho Marx
дома есть несколько машин, объединенных в маленькую сеточку Ethernet. Она
использует один из зарезервированных частных сетевых адресов. Сеть доступна и
другим студентам, которые имеют интерес в использовании Internet. Для доступа
в Internet используется простое соединение dial-up PPP. Студенты настраивают Linux-машину для поддержки связи dial-up и работы в
качестве маршрутизатора сети. Ее IP-адрес при модемном соединении не важен.
Linux-маршрутизатор конфигурируется с поддержкой IP masquerade и использует
один из частных сетевых адресов для локальной сети:
192.168.1.0. При этом гарантируется, что каждый из компьютеров в этой
сети имеет заданный по умолчанию маршрут, указывающий на Linux-маршрутизатор.
Чтобы запустить эту конфигурацию с помощью ipfwadm,
надо только скомандовать:
Чтобы посмотреть созданные правила masquerade, используйте параметр
-l команды ipfwadm. Чтобы отобразить только что созданные правила, введите:
Посмотреть правила командой ipchains можно с опцией
-L. Аналогично предыдущему примеру с
ipchains:
Все правила с адресатом MASQ являются правилами
masquerade. Наконец, то же самое можно сделать командой iptables
:
Когда новое подключение установлено, программное обеспечение IP masquerade
создает ассоциацию в памяти между компьютерами, связанными с подключением. Вы
можете рассматривать эти ассоциации в любое время в файле
/proc/net/ip_masquerade Эти ассоциации имеют время
ожидания бездеятельности. После окончания этого времени связь удаляется. Вы можете устанавливать время ожидания, используя
ipfwadm. Синтаксис в общем виде такой:
Для ipchains:
Реализация iptables использует намного более
длинные значения по умолчанию для таймеров и не позволяет Вам устанавливать
их. Каждое из этих значений представляет таймер, используемый программным
обеспечением IP masquerade. Следующая таблица описывает таймеры и их
назначение: Время ожидания сеанса TCP. Задает
как долго TCP-подключение может оставаться неактивным до того, как ассоциация
для него удалится. Время ожидания TCP после FIN.
Как долго ассоциация останется после того, как TCP-подключение было
разъединено. Время ожидания сеанса UDP. Как
долго UDP-подключение может оставаться неактивным перед тем, как ассоциация
для него удалится.
Linux Network Administrators Guide
Назад
Глава 11. IP Masquerade и
Network Address Translation
Вперед
Настройка IP Masquerade
или с ipchains:
# ipfwadm -F -p deny
# ipfwadm -F -a accept -m -S 192.168.1.0/24 -D 0/0
или с iptables:
# ipchains -P forward -j deny
# ipchains -A forward -s 192.168.1.0/24 -d 0/0 -j MASQ
Теперь всякий раз, когда любой из компьютеров сети пробует соединяться с
сервисом на удаленном компьютере, их пакеты будет автоматически masqueraded
Linux-маршрутизатором. Первое правило в каждом примере запрещает
маршрутизацию любого другого пакета и добавляет некоторую защиту.
# iptables -t nat -P POSTROUTING DROP
# iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
вывод будет напоминать следующее:
# ipfwadm -F -l -e
Здесь /m указывает, что это правило masquerade.
# ipfwadm -F -l -e
IP firewall forward rules, default policy: accept
pkts bytes type prot opt tosa tosx ifname ifaddress
0 0 acc/m all ---- 0xFF 0x00 any any
# ipchains -L
Chain input (policy ACCEPT):
Chain forward (policy ACCEPT):
target prot opt source destination ports
MASQ all ------ 192.168.1.0/24 anywhere n/a
Chain output (policy ACCEPT):
Правила masquerade появляются с адресатом MASQUERADE
.
# iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy DROP)
target prot opt source destination
MASQUERADE all -- anywhere anywhere MASQUERADE
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Установка параметров синхронизации для IP Masquerade
ipfwadm -M -s <tcp> <tcpfin> <udp>
ipchains -M -S <tcp> <tcpfin> <udp>
Имя
Описание tcp
tcpfin
udp
Назад
Глобальное
оглавление
Вперед
Configuring the Kernel for IP
Masquerade
Локальное
оглавление
Handling Name Server Lookups
Найди своих коллег! |