Меню

Pix настройка nat один к одному



Pix настройка nat один к одному

Терминология
global_IP — адрес в который будет осуществляться трансляция
real_ip — оригинальный адрес, подлежащий переписыванию
real_ifc — интерфейс на который приходят оригинальные пакеты подлежащие трансляции
global_ifc — интерфейс который будет использован для дальшейшей маршрутизации транслированного пакета

Static
Неудивительно и вполне ожидаемо, что для конфигурирования статических трансляций используется команда static имеющая следующий синтаксис:

PIX(config)# static (real_ifc,global_ifc)

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

Определяется пул адресов для которых будет проводиться трансляция и пул в которые она будет проводиться.
Трансляция просиходит один к одному, т.е. каждый хост 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.

То что в 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-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 соединения будут сброшены.

Почти то же самое, что и 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 создает новое соединение с оригинальным хостом назначения.

Источник

Инструкции NAT и PAT для PIX ASA 7.x

Данная статья содержит примеры основных конфигураций преобразования сетевых адресов (NAT) и преобразования адресов портов (PAT) в брандмауэрах Cisco PIX серии 500. В документе приведены упрощенные схемы сетей. Для работы с этиой статьей необходимо иметь представление о Security Appliances Cisco PIX серии 500 начиная с версии 7.0.

Команда nat-control в PIX указывает на то, что у всего трафика, идущего через брандмауэр, должна быть определенная запись преобразования (инструкция nat с инструкцией проверки соответствия global или static); в таком случае он сможет пройти через брандмауэр. Команда nat-control обеспечивает такой же способ преобразования, как и в в брандмауэрах PIX с версиями ПО, предшествующими 7.0. По умолчанию в конфигурации PIX 7.0 используется команда no nat-control. В брандмауэре PIX версии 7.0 можно изменить данное поведение посредством ввода команды nat-control.

При отключении nat-control PIX пересылает пакеты с более защищенного интерфейса на менее защищенный интерфейс без наличия специальной записи преобразования в конфигурации. Для того, чтобы трафик проходил с менее защищенного интерфейса на более защищенный, необходимо использовать списки доступа. В результате PIX будет пересылать трафик. В данном документе акцентируется внимание на поведении брандмауэра PIX при включении nat-control.

Несколько инструкций NAT с NAT 0

Схема сети

В этом примере провайдер ISP обеспечил диспетчера сети диапазоном адресов от 199.199.199.1 до 199.199.199.63. Диспетчер сети решил присвоить 199.199.199.1 внутреннему интерфейсу маршрутизатора Интернета и 199.199.199.2 внешнему интерфейсу PIX.

Администратор сети уже назначил сети адрес класса C, 200.200.200.0/24, а некоторые рабочие станции используют эти адреса для доступа к Интернету. Этим рабочим станциям не требуется преобразование адреса, поскольку им уже присвоены действительные адреса. Однако новым рабочим станциям назначаются адреса сети 10.0.0.0/8, которые требуют преобразования (поскольку 10.x.x.x является одним из немаршрутизируемых адресных пространств согласно RFC 1918).

Для согласования с этой структурой сети администратор сети должен использовать в конфигурации PIX две инструкции NAT и один глобальный пул, как показано в следующих выходных данных:

global (outside) 1 199.199.199.3-199.199.199.62 netmask 255.255.255.192

nat (inside) 0 200.200.200.0 255.255.255.0 0 0

nat (inside) 1 10.0.0.0 255.0.0.0 0 0

Эта конфигурация не преобразует адрес источника трафика, исходящего из сети 200.200.200.0/24. Она преобразует адрес источника из сети 10.0.0.0/8 в адрес из диапазона от 199.199.199.3 до 199.199.199.62.

Ниже приведено подробное разъяснение применения этой конфигурации с использованием Adaptive Security Device Manager (ASDM).

Примечание. Выполните все изменения конфигурации с использованием либо интерфейса командной строки, либо ASDM. Использование для изменения конфигурации и интерфейса командной строки, и ASDM может привести к неустойчивой работе с параметрами, измененными при помощи ASDM. Это не является ошибкой, но происходит вследствие особенностей работы ASDM.

Читайте также:  В настройках включить функцию gpu

Примечание. При открытии приложения ASDM оно импортирует текущую конфигурацию из PIX и пользуется этой конфигурацией при внесении и применении изменений. Если в PIX внесены изменения при открытой сессии ASDM, приложение ASDM больше не работает с тем, что оно «считает» текущей конфигурацией PIX. При внесении изменений в конфигурацию при помощи интерфейса командной строки следует убеждаться в закрытии всех сеансов ASDM. При необходимости работы с использованием графического интерфейса ASDM следует открыть снова.

  1. Запустите ASDM, перейдите на вкладку Configuration и щелкните NAT.
  2. Для создания нового правила щелкните Add.

3. Откроется новое окно, которое позволит пользователю изменять параметры NAT для данной записи NAT. В данном примере используйте NAT для пакетов, поступающих на внутренний интерфейс, источником которых является сеть 10.0.0.0/24.

PIX преобразует эти пакеты в динамический пул IP-адресов внешнего интерфейса. После ввода информации, описывающей трафик, подвергающийся NAT, следует определить пул IP-адресов для преобразуемого трафика. Для добавления нового пула IP-адресов щелкните Manage Pools.

4. Выберите outside и щелкните Add.

5. Укажите диапазон IP-адресов для пула и присвойте пулу уникальный целочисленный идентификатор.

6. После ввода соответствующих значений щелкните OK, после чего увидите новый пул, заданный для внешнего интерфейса.

7. После определения пула щелкните OK, чтобы вернуться к окну настройки правил NAT.

Убедитесь в том, что в выпадающем меню Address Pool выбран только что созданный пул.

8. Сейчас было создано преобразование NAT для пакетов, идущих через брандмауэр. Однако необходимо создать запись NAT, которая определяет трафик, не подвергающийся NAT. Щелкните переключатель Translation Exemption Rules, расположенный в верхней части окна. Затем для создания нового правила щелкните Add.

9. В качестве источника выберите интерфейс inside и укажите подсеть 200.200.200.0/24. Оставьте установленные по умолчанию значения поля «When connecting».

10. На данном этапе определены правила NAT. Для применения изменений к текущей рабочей конфигурации брандмауэра щелкните Apply.

Приведенные выходные данные показывают фактические добавления в конфигурацию PIX. Их вид немного отличается от результатов команд, введенных вручную, однако сами данные одинаковы.

access-list inside_nat0_outbound extended permit
ip 200.200.200.0 255.255.255.0 any

global (outside) 1 199.199.199.3-199.199.199.62 netmask 255.255.255.192

nat (inside) 0 access-list inside_nat0_outbound

nat (inside) 1 10.0.0.0 255.255.255.0

Несколько глобальных пулов

Схема сети

В этом примере диспетчер сети имеет два диапазона IP-адресов, зарегистрированных для Интернета. Диспетчер сети должен преобразовывать все внутренние адреса из диапазона 10.0.0.0/8 в зарегистрированные адреса. Диапазон IP адресов, которые должен использовать диспетчер сети: от 199.199.199.1 до 199.199.199.62 и от 150.150.150.1 до 150.150.150.254. Диспетчер сети может сделать это следующим образом:

global (outside) 1 199.199.199.3-199.199.199.62 netmask 255.255.255.192

global (outside) 1 150.150.150.1-150.150.150.254 netmask 255.255.255.0

nat (inside) 1 0.0.0.0 0.0.0.0 0 0

Примечание. В инструкции NAT используется схема адресации с символом подстановки. Эта инструкция указывает PIX на необходимость преобразовывать адрес любого внутреннего источника при его подключении к Интернету. При необходимости в этой команде можно указывать более конкретный адрес.

Смешанное использование глобальных инструкций NAT и PAT

Схема сети

В этом примере ISP обеспечил диспетчера сети диапазоном адресов от 199.199.199.1 до 199.199.199.63 для использования компанией. Диспетчер сети решил использовать 199.199.199.1 для внутреннего интерфейса Интернет-маршрутизатора, а 199.199.199.2 — для внешнего интерфейса PIX. Для использования пула NAT остается диапазон адресов от 199.199.199.3 до 199.199.199.62. Однако диспетчеру сети известно, что в любой момент времени за пределы PIX могут попытаться выйти более 60 пользователей. Поэтому диспетчер сети решил использовать 199.199.199.62 и сделать его адресом РАТ, чтобы несколько пользователей могли одновременно использовать один адрес.

global (outside) 1 199.199.199.3-199.199.199.61 netmask 255.255.255.192

global (outside) 1 199.199.199.62 netmask 255.255.255.192

nat (inside) 1 0.0.0.0 0.0.0.0 0 0

Эти команды указывают PIX на необходимость преобразовывать адреса источников в адреса от 199.199.199.3 до 199.199.199.61 для первых 59 внутренних пользователей, выходящих за пределы PIX. После того, как эти адреса будут заняты, PIX преобразует все последующие адреса источников в 199.199.199.62, пока не освободится один из адресов в пуле NAT.

Примечание. В инструкции NAT используется схема адресации с символом подстановки. Эта инструкция указывает PIX на необходимость преобразовывать адрес любого внутреннего источника при его подключении к Интернету. При необходимости в этой команде можно указывать более конкретный адрес.

Несколько инструкций NAT с NAT 0 Access-List

Схема сети

В этом примере ISP обеспечил диспетчера сети диапазоном адресов от 199.199.199.1 до 199.199.199.63. Диспетчер сети решил присвоить 199.199.199.1 внутреннему интерфейсу маршрутизатора Интернета и 199.199.199.2 внешнему интерфейсу PIX.

Читайте также:  Настройка apache в линуксе

Однако в этом случае другой сегмент частной локальной сети размещен за Интернет-маршрутизатором. Диспетчер сети предпочитает не использовать адреса из глобального пула, если узлы в этих двух сетях обмениваются данными между собой. Диспетчеру сети по-прежнему необходимо преобразовывать адреса источников для всех внутренних пользователей (10.0.0.0/8) при их подключении к Интернету.

access-list 101 permit ip 10.0.0.0 255.0.0.0 192.168.1.0 255.255.255.0

global (outside) 1 199.199.199.3-199.199.199.62 netmask 255.255.255.192

nat (inside) 0 access-list 101

nat (inside) 1 10.0.0.0 255.0.0.0 0 0

Эта конфигурация не преобразует адреса, где адрес источника 10.0.0.0/8, а адрес назначения 192.168.1.0/24. Она преобразует адрес источника любого трафика, исходящего из сети 10.0.0.0/8 и предназначенного любому адресату, не принадлежащему сети 192.168.1.0/24, в адрес из диапазона от 199.199.199.3 до 199.199.199.62.

Использование политики NAT

Схема сети

При использовании списка доступа с командой nat для любого идентификатора NAT, отличного от 0, включается политика NAT.

Политика NAT позволяет распознавать локальный трафик, предназначенный для преобразования адресов при указании адресов (или портов) источника и места назначения в списке доступа. В обычном режиме NAT использует только исходные адреса/порты, тогда как политика NAT использует адреса/порты как источника, так и места назначения.

Примечание. Политику NAT поддерживают все типы NAT кроме исключений NAT (nat 0 access-list). Для определения локальных адресов исключение NAT использует список контроля доступа, но оно отличается от политики NAT тем, что не использует порты.

Используя политику NAT можно создавать несколько инструкций NAT или статических инструкций, которые указывают на один и тот же локальный адрес, пока комбинация источник/порт и назначение/порт остается уникальной для каждой инструкции. Затем каждой паре источник/порт и назначение/порт можно сопоставить разные глобальные адреса.

В данном примере диспетчер сети предоставляет доступ для IP-адреса назначения 209.165.201.11 для порта 80 (web) и порта 23 (Telnet), но в качестве адреса источника он должен использовать два разных IP-адреса. IP-адрес 199.199.199.3 используется в качестве адреса источника для web. IP-адрес 199.199.199.4 используется для Telnet и необходимо преобразовывать все внутренние адреса из диапазона 10.0.0.0/8. Диспетчер сети может сделать это следующим образом:

access-list WEB permit tcp 10.0.0.0 255.0.0.0 209.165.201.11
255.255.255.255 eq 80

access-list TELNET permit tcp 10.0.0.0 255.0.0.0 209.165.201.11
255.255.255.255 eq 23

nat (inside) 1 access-list WEB

nat (inside) 2 access-list TELNET

global (outside) 1 199.199.199.3 255.255.255.192

global (outside) 2 199.199.199.4 255.255.255.192

Статическое преобразование сетевых адресов (Static NAT)

Схема сети

Конфигурация статического NAT создает сопоставление «один к одному» и преобразует определенный адрес в другой адрес. Данный тип конфигурации создает в таблице NAT постоянную запись, существующую до тех пор, пока существует конфигурация, и разрешает инициировать соединения как внутренним, так и внешним хостам. Обычно это используется для хостов, на которых запущены службы, например, электронная почта, веб-сервер, FTP и другие. В данном примере статические инструкции NAT настроены так, чтобы позволять внутренним и внешним пользователям получать доступ к веб-серверу в демилитаризованной зоне.

Приведенные выходные данные демонстрируют построение статической инструкции. Следует помнить о порядке сопоставленных и реальных IP-адресов.

static (real_interface,mapped_interface) mapped_ip real_ip netmask mask

Ниже приведен пример статического преобразования, созданного для того, чтобы пользователи с внутреннего интерфейса могли получить доступ к серверу в демилитаризованной зоне. Здесь создается сопоставление между внутренним адресом и адресом сервера в демилитаризованной зоне. При этом внутренние пользователи могут получать доступ к серверу в демилитаризованной зоне с использованием внутреннего адреса.

static (DMZ,inside)10.0.0.10 192.168.100.10 netmask 255.255.255.255

Ниже приведен пример статического преобразования, созданного для того, чтобы пользователи с внешнего интерфейса могли получить доступ к серверу в демилитаризованной зоне. Здесь создается сопоставление между внешним адресом и адресом сервера в демилитаризованной зоне. При этом внешние пользователи могут получать доступ к серверу в демилитаризованной зоне с использованием внешнего адреса.

static (DMZ,outside) 172.16.1.5 192.168.100.10 netmask 255.255.255.255

Примечание. Поскольку уровень защиты внешнего интерфейса ниже уровня защиты демилитаризованной зоны, необходимо также создать список доступа, позволяющий внешним пользователям подключаться к серверу в демилитаризованной зоне. Список доступа должен предоставлять пользователям доступ к сопоставленному адресу в статическом преобразовании. Рекомендуется делать этот список доступа как можно более конкретным. В данном случае любой хост может получить доступ только к портам 80 (www/http) и 443 (https) веб-сервера.

access-list OUTSIDE extended permit tcp any host 172.16.1.5 eq www

access-list OUTSIDE extended permit tcp any host 172.16.1.5 eq https

Список доступа также необходимо применить к внешнему интерфейсу.

access-group OUTSIDE in interface outside

Есть вопросы?
Обращайтесь в «Аквилон-А», чтобы узнать подробности и получить именно то, что вам требуется.

Источник

Adblock
detector