Основы динамической трансляции адресов и работы межсетевого экрана 1. Общая структура сети ЛОКОС 2. Принципы работы межсетевого экрана (PIX Firewall). 3. Трансляция сетевых адресов (NAT). 4. Выводы (заключение). © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-1 Иерархическая модель сети © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-2 Функциональные области Информационная сеть ЛОКОС © 2004, Cisco Systems, Inc. All rights reserved. Модуль взаимодействия сети ЛОКОС с сетью интернет-сервис провайдера Интернетпровайдер сети ЛОКОС CSPFA 3.2—6-3 Общая структура сети ЛОКОС © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-4 Firewalls © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-5 Что такое Firewall? Firewall – это система или группа систем, которые управляют доступом между двумя сетями. © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-6 Технологии Firewall Операции брандмауэра (firewall) основываются на одной из двух технологий: • Packet filtering • Stateful packet filtering © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-7 Packet Filtering Ограничивает проход информации в сеть на основании адреса приемника и источника. © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-8 Stateful Packet Filtering Ограничивает проход информации в сеть не только на основании адреса приемника и источника, но еще и на основании содержимого пакета данных . © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-9 © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-10 Транспортные протоколы © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-11 В IP сетях сессия - это транзакция между двумя оконечными системами. Сессия между двумя оконечными системами осуществляется с помощью двух протоколов транспортного уровня: • TCP • UDP © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-12 TCP Инициализация —Inside to Outside Частная сеть Адрес источника 10.0.0.11 Адрес приемника 172.30.0.50 Порт источника 1026 Порт приемника Начальный номер последовательности Подтверждение 23 #1 10.0.0.11 Флаг 49091 192.168.0.20 172.30.0.50 1026 23 49769 PIX Firewall Syn 172.30.0.50 Start the embryonic connection counter No data 172.30.0.50 172.30.0.50 10.0.0.11 192.168.0.20 23 1026 IP заголовок 92513 TCP заголовок 49092 Syn-Ack © 2004, Cisco Systems, Inc. All rights reserved. Публичная сеть #2 Syn #4 The PIX Firewall checks for a translation slot. If one is not found, it creates one after verifying NAT, global, access control, and authentication or authorization, if any. If OK, a connection is created. The PIX Firewall follows the Adaptive Security Algorithm: • (source IP, source port, destination IP, destination port) check • Sequence number check • Translation check #3 23 1026 92513 49770 Syn-Ack CSPFA 3.2—6-13 TCP Инициализация—Inside to Outside (Продолжение). Частная сеть Адрес источника 10.0.0.11 Адрес приемника 172.30.0.50 Порт источника Порт приемника Начальный номер последовательности Подтверждение #5 Флаг 1026 23 Публичная сеть Reset the embryonic counter for this client.. It then increases the connection counter for this host. 192.168.0.20 172.30.0.50 1026 23 49092 49770 92514 92514 Ack PIX Firewall Ack #6 172.30.0.50 10.0.0.11 Поток данных Использует Adaptive Security Algorithm IP заголовок TCP заголовок © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-14 UDP Инициализация—Inside to Outside. Частная сеть Адрес источника 10.0.0.11 Адрес приемника 172.30.0.50 Порт источника 1028 Порт приемника 45000 The PIX Firewall checks for a translation slot. If one is not found, it creates one after verifying NAT, global, access control, and authentication or authorization, if any. If OK, a connection is created. Публичная сеть 192.168.0.20 172.30.0.50 1028 45000 PIX Firewall #1 10.0.0.11 #2 172.30.0.50 All UDP responses arrive from outside and within UDP user-configurable timeout (default=2 minutes). #4 172.30.0.50 10.0.0.11 45000 1028 The PIX Firewall follows the Adaptive Security Algorithm: • (source IP, source port, destination IP, destination Port ) check • Translation check #3 172.30.0.50 192.168.0.20 45000 1028 IP заголовок UDP заголовок © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-15 Философия PIX Firewall NAT Outside Inside 10.0.0.11 Интернет 192.168.10.11 10.0.0.11 192.168.0.20 NAT 10.0.0.4 • При использовании PIX Firewall правила трансляции всегда настраиваются между парой интерфейсов. • Пакет не может пройти через PIX Firewall, если он не имеет соответствия в translation slot в таблице xlate. • Если нет соответствия в translation slot PIX Firewall будет стараться создавать translation slot из созданных правил трансляции (translation rules). • Если не удается создать translation slot из созданных правил трансляции (translation rules), то пакет не пропускается. © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-16 Summary • PIX Firewall управляет TCP и UDP протоколами, используя таблицу трансляции (translation table) (для NAT сессий) и таблицу соединений (connection table) (для TCP и UDP сессий). • Команда static создает постоянную трансляцию. • Отображение между локальным и глобальным адресными пулами (local and global address pools) делается динамически с использованием команды nat. • Команды nat и global работают вместе, чтобы спрятать внутренние IP адреса. • PIX Firewall поддерживает PAT. © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-17 Network Address Translations (Трансляция сетевых адресов) © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-18 Сценарий адресации NAT 192.168.6.1 Интернет 10.0.0.11 10.0.0.11 10.0.0.4 • NAT был создан для того, чтобы избежать проблем адресации, которые связаны с расширением сети Интернет: – Помогает избежать истощения IP- адресов, зарегистрированных в сети Интернет. – Использует RFC 1918 (приватная адресация) – Сохраняет внутреннюю адресацию вашей сети • Дополнительно, NAT увеличивает безопасность внутренней сети, скрывая внутреннюю топологию корпоративной сети. © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-19 Доступ через PIX Firewall Более безопасное Менее безопасное nat и global (или static) Интернет e0 outside security level 0 Менее безопасное e1 inside security level 100 Более безопасное static и access list (или static и conduit) © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-20 Внутренняя трансляция адресов NAT 192.168.6.1 10.0.0.4 Интернет 10.0.0.4 Динамическая трансляция Outside global IP address pool 192.168.6.20-254 Outside global IP address Статическая 192.168.6.10 трансляция 10.0.0.4 Inside IP address 10.0.0.11 WWW сервер 10.0.0.11 Inside NAT— транслирует адреса хостов с интерфейса с более высоким уровнем безопасности (higher security level) на интерфейс с меньшим уровнем безопасности (less security level): • Динамическая трансляция. • Статическая трансляция. © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-21 Динамическая трансляция (Dynamic Inside NAT) NAT Интернет 192.168.0.20 10.0.0.11 10.0.0.11 10.0.0.4 • Динамические трансляции: pixfirewall(config)# nat(inside) 1 10.0.0.0 0.0.0.0 pixfirewall(config)# global(outside) 1 192.168.0.20-192.168.0.254 netmask 255.255.255.0 © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-22 Два интерфейса, использующие NAT 10.2.0.0 /24 Global pool 192.168.0.17-30 Интернет 192.168.0.0 Global pool 192.168.0.3-14 10.0.0.0/24 • Все хосты во внутренней сети могут выполнять соединения с внешними сетями. • Отдельный пул внешних адресов (global pool) может быть использован для каждой подсети. pixfirewall(config)# nat(inside) 1 10.0.0.0 255.255.255.0 pixfirewall(config)# nat(inside) 2 10.2.0.0 255.255.255.0 pixfirewall(config)# global(outside) 1 192.168.0.3192.168.0.14 netmask 255.255.255.0 pixfirewall(config)# global(outside) 2 192.168.0.17192.168.0.30 netmask 255.255.255.0 © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-23 Port Address Translation (Порт – адрес трансляция) © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-24 Port Address Translation • PAT – является комбинацией IP- адреса источника и номером порта источника. • Много различных соединений (сессий) могут быть мультиплексированы через один внешний IP адрес. • Различие сессий проходит через различные PAT номера портов. 192.168.0.20 10.0.0.11 Port 2000 Интернет 192.168.0.20 10.0.0.4 10.0.0.11 Port 2001 10.0.0.4 © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-25 Пример реализации PAT .1 Global address 192.168.0.9 192.168.0.0 pixfirewall(config)# ip address inside 10.0.0.1 255.255.255.0 pixfirewall(config)# ip address outside 192.168.0.2 255.255.255.0 pixfirewall(config)# route (outside) 0.0.0.0 0.0.0.0 192.168.0.1 pixfirewall(config)# nat (inside) 1 10.0.0.0 255.255.0.0 pixfirewall(config)# global (outside) 1 192.168.0.9 netmask 255.255.255.255 .2 .1 • Внешние IP адреса зарегистрированы в организации InterNIC. 10.0.0.0 10.0.2.0 10.0.1.0 Engineering © 2004, Cisco Systems, Inc. All rights reserved. Sales • Адреса хостов источника в сети 10.0.0.0 транслируются в один IP адрес 192.168.0.9 для соединения с внешними сетями. • Применяем один IP адрес (192.168.0.9) к внешнему пулу. • Порт источника трафика уникально идентифицируется числом большим чем 1023. CSPFA 3.2—6-26 Реализация PAT с использованием адреса на внешнем интерфейсе. pixfirewall(config)# 255.255.255.0 pixfirewall(config)# 255.255.255.0 pixfirewall(config)# 255.255.255.0 pixfirewall(config)# ip address inside 10.0.0.1 ip address outside 192.168.0.2 nat (inside) 1 10.0.0.0 global (outside) 1 interface .1 Global address 192.168.0.2 192.168.0.0 .2 .1 • Опция команды global осуществляет использование IP адреса внешнего интерфейса в качестве PAT адреса. 10.0.0.0 10.0.2.0 10.0.1.0 Engineering © 2004, Cisco Systems, Inc. All rights reserved. Sales • Адреса хостов в сети 10.0.0.0 транслируются в один адрес 192.168.0.2 для доступа к внешним сетям. • Порт источника трафика уникально идентифицируется числом большим чем 1023. CSPFA 3.2—6-27 Трансляция адресов хостов из внутренних подсетей в PAT адреса pixfirewall(config)# nat (inside) 1 10.0.1.0 255.255.255.0 pixfirewall(config)# nat (inside) 2 10.0.2.0 255.255.255.0 pixfirewall(config)# global (outside) 1 192.168.0.8 netmask 255.255.255.0 192 .168.0.9 pixfirewall(config)# global (outside) 2 192.168.0.9 netmask 255.255.255.0 .1 192 .168.0.8 192.168.0.0 .2 .1 10.0.0.0 10.0.1.0 Engineering © 2004, Cisco Systems, Inc. All rights reserved. 10.0.2.0 Sales • Каждая внутренняя подсеть отображается в различный PAT адрес. • Адреса хостов из сети 10.0.1.0 транслируются в PAT адрес 192.168.0.8 для доступа к внешним сервисам. • Адреса хостов из сети 10.0.2.0 транслируются в PAT адрес 192.168.0.9 для доступа к внешним сервисам. • Порт источника трафика уникально идентифицируется числом большим чем 1023. CSPFA 3.2—6-28 Резервирование PAT адресов (использование нескольких адресов PAT). pixfirewall(config)# nat (inside) 1 10.0.0.0 255.255.0.0 pixfirewall(config)# global (outside) 1 192.168.0.8 netmask 255.255.255.0 pixfirewall(config)# global (outside) 1 192.168.0.9 netmask 255.255.255.0 192 .168.0.9 .1 192 .168.0.8 192.168.0.0 .2 .1 • Адреса хостов из сети 10.0.1.0 транслируются в PAT адрес 192.168.0.8 для доступа к внешним сервисам. 10.0.0.0 10.0.2.0 10.0.1.0 Engineering © 2004, Cisco Systems, Inc. All rights reserved. • Адрес 192.168.0.9 будет использован только тогда, когда пул портов из 192.168.0.8 достигнет максимума. Sales CSPFA 3.2—6-29 Совместное использование NAT и PAT pixfirewall(config)# nat (inside) 1 10.0.0.0 255.255.0.0 pixfirewall(config)# global (outside) 1 192.168.0.20-192.168.0.253 netmask 255.255.255.0 pixfirewall(config)# global (outside) 1 192.168.0.254 netmask 255.255.255.0 NAT 192 .168.0.20 .1 PAT 192 .168.0.254 192.168.0.0 .2 .1 • Кода хосты из внутренней сети 10.0.0.0 выходят наружу через брандмауэр (firewall) им назначаются публичные адреса из диапазона 192.168.0.20–192.168.0.253. 10.0.0.0 10.0.2.0 10.0.1.0 Engineering © 2004, Cisco Systems, Inc. All rights reserved. • Когда адреса из пубичного пула истощаются, начинает работать PAT с IP адресом 192.168.0.254. Sales CSPFA 3.2—6-30 Static NAT (Статическая трансляция адресов) © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-31 Команда static Статическая трансляция Inside 192.168.0.10 10.0.0.11 DNS сервер 10.0.0.11 Интернет Outside • Используется для того, чтобы создать постоянную трансляцию между адресом во внутренней сети и адресом из публичного пула IP адресов. • Рекомендовано для сервисов, запущенных на серверах во внутренней сети. © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-32 Команда static (Продолжение). Static mapping Outside Интернет 192.168.0.10 10.0.0.11 Inside 10.0.0.11 DNS сервер pixfirewall(config)# static [(prenat_interface, postnat_interface)] {mapped_address | interface} real_address [netmask mask] • Пакеты, исходящие от хоста с IP адресом 10.0.0.11 транслируются в 192.168.0.10 и наоборот. • Постоянное отображение одного IP адреса • Рекомендовано для сервисов, запущенных на серверах во внутренней сети. pixfirewall(config)# static (inside,outside) 192.168.0.10 10.0.0.11 netmask 255.255.255.255 © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-33 Пример динамической и статической трансляции адресов в сети ЛОКОС © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-34 Policy NAT (Трансляция сетевых адресов с применением различных политик) © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-35 Policy NAT Telnet сервер 192.168.0.9 192.168.10.11 Web сервер Интернет 10.0.0.15 192.168.0.21 192.168.10.4 • Однозначно идентифицируем локальный траффик, предназначенный для трансляции посредством определения адресов источника и приемника в списке доступа (access-lists). • Применяем созданный список доступа (access-list) к NAT или static командам. © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-36 Policy NAT— команды NAT плюс команды списков доступа. Telnet Server 192.168.0.9 192.168.10.11 Internet Web Server 10.0.0.15 192.168.0.21 192.168.10.4 pix1(config)# access-list NET1 permit tcp 10.0.0.0 255.255.255.0 host 192.168.10.11 eq 23 pix1(config)# nat (inside) 10 access-list net1 pix1(config)# global (outside) 10 192.168.0.9 255.255.255.255 pix1(config)# access-list NET2 permit tcp 10.0.0.0 255.255.255.0 host 192.168.10.4 eq 80 pix1(config)# nat (inside) 11 access-list net2 pix1(config)# global (outside) 11 192.168.0.21 255.255.255.255 © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-37 Policy NAT— команды NAT плюс команды списков доступа. Telnet Server 192.168.10.11 Web Server 192.168.0.9 Internet 10.0.0.15 192.168.0.21 192.168.10.4 pix1(config)# access-list NET1 permit tcp 10.0.0.0 255.255.255.0 host 192.168.10.11 eq 23 pix1(config)# static (inside,outside) 192.168.0.9 access-list net1 pix1(config)# access-list NET2 permit tcp 10.0.0.0 255.255.255.0 host 192.168.10.4 eq 80 pix1(config)# static (inside,outside) 192.168.0.21 access-list net2 © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-38 Заключение © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-39 Общая структура сети ЛОКОС © 2004, Cisco Systems, Inc. All rights reserved. CSPFA 3.2—6-40