Настройка NAT на устройствах Cisco PIX/ASA Терминология global_IP - адрес в который будет осуществляться трансляция real_ip - оригинальный адрес, подлежащий переписыванию real_ifc - интерфейс на который приходят оригинальные пакеты подлежащие трансляции global_ifc - интерфейс который будет использован для дальшейшей маршрутизации транслированного пакета Static Неудивительно и вполне ожидаемо, что для конфигурирования статических трансляций используется команда static имеющая следующий синтаксис: PIX(config)# static (real_ifc,global_ifc) {global_ip |interface} {real_ip [netmask mask]} Static NAT Классический НАТ один к одному используется в тех случаях когда необходима реальная трансляция, маппинг, адреса. PIX(config)# static (inside,outside) global_IP real_IP netmask 255.255.255.255 Т.е. если у нас реальный адрес на интерфейсе хоста во внутренней сети 10.10.10.10, а провайдер нам выделил пул из адресов 192.168.100.0/24 мы можем обеспечить доступность хоста снаружи введя команду PIX(config)# static (inside,outside) 192.168.100.10 10.10.10.10 netmask 255.255.255.255 Всё что приходит на адрес 192.168.100.10 будет передаваться на хост с адресом 10.10.10.10. Static PAT Сюда же относиться и просто проброс порта, называемый обычно PAT, да и показываемый в по sh xlate тоже РАТ. Используеться в тех случаях когда необходимо обеспечить доступность снаружи только по некоторым портам. Допустим для почтового сервера. PIX(config)# static (inside,outside) tcp 192.168.100.10 smtp 10.10.10.10 smtp netmask 255.255.255.255 Также может быть полезно в случае, если сервисов больше чем реальных адресов. Ничего не мешает пробросить порт и на веб-сервер. PIX(config)# static (inside,outside) tcp 192.168.100.10 www 10.10.10.11 www netmask 255.255.255.255 Dynamic Dynamic NAT Определяется пул адресов для которых будет проводиться трансляция и пул в которые она будет проводиться. Трансляция просиходит один к одному, т.е. каждый хост inside хост имеет монопольное право на один адрес из global_IP диапазона. Соответственно если global_IP <> Определяем, что будем транслировать (real_IP): PIX(config)# nat (real_ifc) nat_id real_ip [mask] PIX(config)# nat (inside) 1 10.10.10.0 255.255.255.0 Во что будем транслировать (global_IP): PIX(config)# global (global_ifc) nat_id global_ip[-global_ip] [netmask global_mask] PIX(config)# global (outside) 1 192.168.100.20-192.168.100.121 Вот такая нехитрая конфигураци позволяет получить доступ в внешнюю сеть первым 100 хостам из сети 10.10.10.0/24 :) Зачастую этот тип трансляции используется в том случае если протокол более высокого уровня не поддерживает работу через PAT. Dynamic PAT То что в Linux называется маскарадинг. Ситуация когда несколько внутренних хостов используют один, либо несколько, глобальных адресов для выхода в внешнюю сеть.. Определяем, что будем транслировать (real_IP): PIX(config)# nat (real_ifc) nat_id real_ip [mask] В данном случае мы будем выпускать "в мир" всё ту же многострадальную сеть - 10.10.10.0/24. Это наши настоящие (real_IP) адреса на интерфейсах внутренних хостов. PIX(config)# nat (inside) 1 10.10.10.0 255.255.255.0 Транслироваться всё это будет в один адрес global_IP: PIX(config)# global (outside) 1 192.168.100.130 Однако, зачастую интерфейсов на нашем firewall чем два, возможно остальным тоже необходимо получать доступ? Добавляем правило трансляции для еще одного интерфейса, необходимо использовать такой же nat-id. PIX(config)# nat (inside2) 1 10.10.11.0 255.255.255.0 Теперь хосты из двух подсетей 10.10.10.0/24 и 10.10.11.0/24 видны как один адрес 192.168.100.130. Теперь вполне возможна ситуация, когда лимитов на соединение (около 64 тысяч) будет уже не хватать. Есть возможность выделить еще несколько адресов для РАТ. PIX(config)# global (outside) 1 192.168.100.12 PIX(config)# global (outside) 1 192.168.100.13 Есть возможность ипользовать адрес интерфейса, для РАТ трансляции. PIX(config)# global (outside) 1 interface Также для определения адресов подлежащих трансляции можно пользоваться acl. В примере ниже разрешена трансляция адресов сети 10.10.10.0/24 в адрес outside интерфейса с помощью acl в том случае если адрес назначения сеть 10.10.100.0/24 PIX(config)# access-list someflow permit ip 10.10.10.0 255.255.255.0 10.10.100.0 255.255.255.0 PIX(config)# nat (inside) 1 access-list someflow PIX(config)# global (outside) 1 interface Это не так очевидно, посему особо отмечу: конфигурация NAT от PAT отличается только способом указания global_IP.В первом случае указывается диапазон, во втором отдельные адреса. nat-id варьируеться от 1 до 2,147,483,647 т.е. можно использовать разные правила трансляции для различных интерфейсов, PIX/ASA различает их по nat-id. Policy NAT Используется в случае необходимости нелинейно транслировать адреса, например в зависимости от адреса назначения. Например адреса внутренней сети 10.10.10.0/24 могут быть транслированы в 192.168.100.12 при обращении к сети 10.11.10.0 и в 192.168.100.13 при обращении к 10.12.10.0 PIX(config)# access-list someflowA permit ip 10.10.10.0 255.255.255.0 10.11.10.0 255.255.255.0 PIX(config)# access-list someflowB permit ip 10.10.10.0 255.255.255.0 10.12.10.0 255.255.255.0 PIX(config)# nat (inside) 1 access-list someflowA PIX(config)# nat (inside) 2 access-list someflowB PIX(config)# global (outside) 1 192.168.100.12 PIX(config)# global (outside) 2 192.168.100.13 не-NAT Псевдонат используется в тех случаях если включен nat-control, который требует, чтобы для пакета проходящего с более защищенного интерфейса на менее защищенный (inside -> outside) существовала трансляция. В противном случае обработка пакета прекращается. Identity NAT Команда выглядит следующим образом PIX(config)# nat (real_ifc) 0 real_ip real_mask Допустим, что в внутренней сети, например в dmz находиться сервер с реальным адресом на интерфейсе 100.100.100.100. В данном случае команда будет выглядеть так: PIX(config)# nat (dmz) 0 100.100.100.100 255.255.255.255 Необходимо обратить внимание на nat-id равный нулю и на отсутствие команды global. Отмечу также, что в данном случае firewall разрешит только соединения в внешнюю сеть (outbound), inbound соединения будут сброшены. NAT Exemption Почти то же самое, что и Identity NAT но соединения разрешены в обе стороны. Настраивается почти так же, единственное отличие - используется acl. PIX(config)# access-list nonat_from_dmz permit ip 100.100.100.100 255.255.255.255 any PIX(config)# nat (dmz) 0 access-list nonat_from_dmz Плюшки Это не все параметры имеющиеся в арсенале команд nat и static. Полный синтаксис выглядит так: ... [norandomseq] [[tcp] max_conns [emb_limit]] [udp udp_max_conns] norandomseq Включено по-умолчанию. При каждом новом соединении firewall генерирует случайный initial sequence number (ISN). Связано это с тем, что tcp/ip стек некоторых ОС использует предсказуемые ISN, что дает возможность злоумышленнику вклиниться в чужую сессию. Атака носит название TCP hijacking. PIX/ASA использует оригинальный ISN для поддержания сессис с сгенерировавшим его хостом и переписывает на сгенерированый собственноручно, для общения с хостом назначения. Протоколы используемые проверку целостности пакетов не смогут работать в таких жестоких условиях. :) Для отключения используется данный параметр. tcp max_conns и udp udp_max_conns В принипе из названия всё понятно. Лимиты на количество соединений. Значения по умолчанию равны нулю - отсутствие лимитов. emb_limit Удивительно полезная и нужная опция. Позволяет защитить внутренние хосты от syn-flood. До тех пор пока лимит не достигнут, все новые пакеты (первый syn) перенаправляються оригинальному хосту получателю. Как только лимит в достигнут firewall перехватывает новые пакеты, с первым syn, и отвечает иницатору соединения с syn-ack. В случае благополучного завершения тройного рукопожатия,получения ack от инициатора, firewall создает новое соединение с оригинальным хостом назначения.
-
Включение статической маршрутизации на Cisco 2960s
У Cisco были и есть замечательные коммутаторы 2/3 уровня — Cisco Catalist WS-C2960, … -
Cisco IOS. Версии, лицензии
У начинающих cisco-водов много вопросов вызывают различные варианты линеек IOS их отличия … -
Миллиарды Яндекса. В процессе поиска
Как поисковая система Yandex стала бизнесом ценой в миллиарды долларов Валерий Игуменов | …
Еще в разделе Cisco
Комментарии закрыты
Смотрите ещё
Метеорит? Кокшетау Онлайн.
Метеорит? Когда-то, много лет назад, увидел эти нестандартные камни и даже сфотографирова…