Безопасность : Многофункциональные устройства защиты Cisco ASA серии 5500

PIX/ASA 7.x: пример включения служб FTP/TFTP

7 апреля 2008 - Перевод, выполненный профессиональным переводчиком
Другие версии: PDF-версия:pdf | Машинный перевод (28 июля 2013) | Английский (3 августа 2011) | Отзыв

Содержание

Введение
Предварительные условия
     Требования
     Используемые компоненты
     Сетевой график
     Сопутствующие продукты
     Условные обозначения
Общие сведения
     Обработка сложных протоколов
Конфигурация базовой проверки приложений FTP
     Пример конфигурации
Конфигурация базовой проверки приложений TFTP
     Пример конфигурации
Проверка
Проблема: неправильный синтаксис в конфигурации и получена ошибка типа class-map inspection
     Решение
Связанные обсуждения сообщества поддержки Cisco
Дополнительные сведения

Введение

В данном документе описываются действия, которые необходимо выполнить пользователям, не подключенным к вашей сети, для получения доступа к FTP и TFTP-службам DMZ-сети.

Протокол передачи файлов (FTP).

Существует два режима работы FTP:

  • Активный режим

  • Пассивный режим

pix-asa-enable-ftp-2.gif

В активном режиме работы FTP клиент подключается с использованием случайного неспециализированного порта (N>1023) к командному порту (21) FTP-сервера. Затем клиент начинает прослушивать порт N+1 и отправляет FTP-команду порту N+1 FTP-сервера. Затем сервер повторно подключается к указанным портам данных клиента от локального порта данных, а именно порта 20.

В пассивном режиме работы FTP клиент инициирует оба подключения к серверу, что устраняет проблему брандмауэра, фильтрующего входящие подключения по порту данных к клиенту от сервера. При открытии FTP-соединения, клиент локально открывает два случайных неспециализированных порта (N>1023 и N+1). Первый порт соединяется с сервером с использованием порта 21. Но затем, вместо отправки port и обеспечения серверу возможности подключения к порту данных, клиент отправляет команду PASV . В результате сервер открывает случайный неспециализированный порт (P>1023) и отправляет команду port P обратно на сервер. После этого клиент инициирует подключение от порта N+1 к порту P на сервере для передачи данных. Без настройки команды inspection на Security Appliance, протокол FTP для внутренних пользователей при подключении к клиенту работает только в пассивном режиме.. Кроме того, доступ к FTP-серверу не получат внешние пользователи, пытающиеся подключиться к нему извне.

Trivial File Transfer Protocol (TFTP)

TFTP, как описывается в RFC 1350, — это простой протокол, используемый для чтения и записи файлов между сервером и клиентом TFTP. TFTP использует UDP-порт 69.

Предварительные условия

Требования

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

  • Существует базовое взаимодействие между необходимыми интерфейсами.

  • Имеется сконфигурированный FTP-сервер, расположенный в сети DMZ.

Используемые компоненты

Сведения, содержащиеся в данном документе, касаются следующих версий программного и аппаратного обеспечения:

  • Adaptive Security Appliance серия ASA 5500, на котором запускается образ программного обеспечения 7.2(2)

  • Windows 2003 Server, на котором запускаются FTP-службы

  • Windows 2003 Server, на котором запускаются TFTP-службы

  • Компьютер пользователя расположен вне сети

Сведения в этом документе были получены от приборов в специфической лабораторной среде. Все устройства, используемые в этом документе, были запущены с чистой (заданной по умолчанию) конфигурацией . Если ваша сеть работает в реальных условиях, убедитесь, что вы понимаете потенциальное воздействие каждой команды.

Сетевой график

В данном документе используется следующая настройка сети:

pix-asa-enable-ftp-1.gif

Примечание:  Схемы IP-адресации, используемые в этой конфигурации, недопустимы для маршрутизации в реальной сети Интернет. Это адреса RFC 1918, которые использовались в лабораторной среде.

Сопутствующие продукты

Эта конфигурация также может быть использована для PIX Security Appliance 7.x.

Условные обозначения

Более подробную информацию о применяемых в документе обозначениях см. в Cisco Technical Tips Conventions (Условные обозначения, используемые в технической документации Cisco).

Общие сведения

Security Appliance поддерживает проверку приложений с помощью алгоритма адаптивной защиты (ASA). С помощью проверки с отслеживанием состояния соединений, используемой алгоритмом адаптивной защиты (ASA), Security Appliance отслеживает все подключения, использующие брандмауэр и подтверждает их достоверность. Брандмауэр с использованием проверки с отслеживанием состояния соединений также отслеживает состояние подключений для сбора сведений, которые сохраняются в таблице состояний. При использовании таблицы состояний и правил, определенных администратором, решения о фильтрации основываются на контексте, создаваемом пакетами, которые были переданы ранее через брандмауэр. Реализация проверок приложений состоит из следующих этапов:

  • Определение трафика.

  • Применение проверки для трафика.

  • Включение проверки для интерфейса.

Обработка сложных протоколов

FTP

Для некоторых приложений необходима специальная обработка с использованием функции проверки приложений Cisco Security Appliance. Эти типы приложений обычно встраивают данные, связанные с IP-адресацией в пакет данных пользователя или в открытые дополнительные каналы на динамически назначенных портах. Функция проверки приложений с использованием преобразования сетевых адресов (NAT) используется для идентификации местоположения встроенных данных адресации.

Помимо идентификации встроенных данных адресации, функция проверки приложений отслеживает сеансы связи для определения номеров портов для дополнительных каналов. Многие протоколы открывают дополнительные TCP или UDP-порты для повышения производительности. Исходный сеанс связи на стандартном порту используется для согласования номеров динамически назначенных портов. Функция проверки приложения отслеживает эти сеансы связи, определяет динамические назначения портов и разрешает для этих портов передачу данных на протяжении этих сеансов. Мультимедийные приложения и FTP-приложения поддерживают этот режим работы.

Для протокола FTP необходима специальная обработка из-за использования двух портов при каждом сеансе связи по протоколу FTP. При включении протокол FTP использует два порта для передачи данных: контрольный канал и канал данных, использующие соответственно порты 2 и 20. Пользователь, инициирующий сеанс FTP по контрольному каналу, отправляет все запросы данных по этому каналу. После этого FTP-сервер инициирует запрос на открытие порта от порта сервера 20 к компьютеру пользователя. Протокол FTP всегда использует порт 20 для передачи данных по каналу данных. Если проверка FTP не была включена для Security Appliance, этот запрос отвергается и при сеансах связи по протоколу FTP не выполняется передача запрошенных данных. Если проверка FTP включена для Security Appliance, то Security Appliance отслеживает контрольный канал и пытается распознать запрос на открытие канала данных. Протокол FTP встраивает спецификации порта канала данных в трафик контрольного канала, после чего Security Appliance выполняет проверку контрольного канала на наличие изменений порта данных. Если Security Appliance распознает запрос, он создает временную область для трафика канала данных, которая существует, пока выполняется сеанс связи. При этом режиме работы функция проверки FTP выполняет мониторинг контрольного канала, определяет назначения портов данных и обеспечивает возможность передачи данных для порта данных на протяжении сеанса связи.

Security Appliance по умолчанию проверяет подключения с использованием порта 21 для трафика FTP с помощью команды global-inspection class-map. Security Appliance также распознает различие между активными и пассивными сеансами связи по протоколу FTP. Если сеансы связи по протоколу FTP поддерживают пассивный режим передачи данных, Security Appliance с помощью команды inspect ftp распознает запрос порта данных от пользователя и открывает новый порт данных, значение которого больше 1023.

Функция проверки приложений FTP проверяет сеансы связи по протоколу FTP и выполняет четыре задачи:

  • Подготавливает динамическое подключение по второму каналу

  • Отслеживает последовательность команд и откликов FTP

  • Генерирует след аудита

  • Преобразовывает встроенные IP-адреса с помощью NAT

Проверка приложений FTP подготавливает дополнительные каналы для передачи данных по протоколу FTP. Каналы выделяются как отклик на загрузку и выгрузку файлов, или событие отображения списка каталогов; при этом каналы должны быть заранее согласованы. Порт согласовывается с помощью команды PORT или PASV маршрутизатора 227

TFTP

Проверка TFTP по умолчанию включена.

Security Appliance проверяет трафик TFTP и при необходимости динамически создает подключения и преобразования для поддержки передачи данных между клиентом и сервером TFTP. В частности модуль проверки проверяет запросы на чтение TFTP (RRQ), запросы на запись (WRQ) и уведомления об ошибках (ERROR).

При необходимости выделяются динамический дополнительный канал и преобразование PAT при получении действительного запроса RRQ или WRQ. Этот дополнительный канал затем используется TFTP для передачи файлов или уведомлений об ошибках.

Только TFTP-сервер может инициировать передачу трафика по дополнительному каналу и в большинстве случаев между клиентом и сервером TFTP может существовать только один неполный канал. Уведомление об ошибке от сервера закрывает дополнительный канал.

Если статический PAT используется для перенаправления трафика TFTP, необходимо включить проверку TFTP.

Конфигурация базовой проверки приложений FTP

По умолчанию в конфигурацию включается политика, соотносящая весь трафик проверок приложений, заданных по умолчанию, и применяющая проверку для трафика на всех интерфейсах (глобальная политика). Трафик проверок приложений по умолчанию включает трафик к портам, заданным по умолчанию для каждого протокола. Можно использовать только одну глобальную политику, и, таким образом, если необходимо изменить глобальную политику, например, для применения проверок нестандартных портов или для добавления проверок, не заданных по умолчанию, нужно либо изменить политику по умолчанию или отключить ее и применить новую политику. Полный список всех портов по умолчанию см. в разделе Политика проверок по умолчанию.

  1. Введите policy-map global_policy .

    ASAwAIP-CLI(config)#policy-map global_policy
    
  2. Введите class inspection_default .

    ASAwAIP-CLI(config-pmap)#class inspection_default
    
  3. Введите inspect FTP .

    ASAwAIP-CLI(config-pmap-c)#inspect FTP
    

    Поддерживается возможность использования команды inspect FTP strict . Эта команда увеличивает безопасность защищенных сетей за счет предотвращения отправки веб-обозревателем встроенных команд по FTP-запросам.

    После включения для интерфейса параметра strict , проверка FTP принудительно активирует следующую реакцию на событие:

    • Необходимо подтверждение FTP-команды до того как Security Appliance разрешит использование новой команды.

    • Security Appliance сбрасывает подключение, отправляющее встроенные команды.

    • Команды 227 и PORT проверяются, чтобы гарантировать их отсутствие в строке ошибки.

    warning Предупреждение: Использование параметра strict может привести к сбою в работе FTP-клиентов, которые не полностью соответствуют RFC для FTP. См. Использование параметра strict для получения дополнительных сведений об использовании параметра strict .

Пример конфигурации

Имя устройства 1

ASA-AIP-CLI(config)#show running-config 

 ASA Version 7.2(2) 
!
hostname ASA-AIP-CLI
domain-name corp.com
enable password WwXYvtKrnjXqGbu1 encrypted
names
!
interface Ethernet0/0
 nameif Outside
 security-level 0
 ip address 192.168.1.2 255.255.255.0 
!
interface Ethernet0/1
 nameif Inside
 security-level 100
ip address 10.1.1.1 255.255.255.0
!
interface Ethernet0/2
 nameif DMZ
  security-level 50
  ip address 172.16.1.12 255.255.255.0 
!
interface Ethernet0/3
 no nameif
 no security-level
 no ip address
!
interface Management0/0
  no nameif
 no security-level
 no ip address
!
!--- Output is suppressed.

!--- Permit inbound FTP control traffic. 

access-list 100 extended permit tcp any host 192.168.1.5 eq ftp
!--- Permit inbound FTP data traffic.

access-list 100 extended permit tcp any host 192.168.1.5 eq ftp-data
!
!--- Command to redirect the FTP traffic received on IP 192.168.1.5 
!--- to IP 172.16.1.5.

static (DMZ,outside) 192.168.1.5 172.16.1.5 netmask 255.255.255.255
access-group 100 in interface outside
class-map inspection_default
 match default-inspection-traffic
!
!
policy-map type inspect dns preset_dns_map
 parameters
  message-length maximum 512

policy-map global_policy
 class inspection_default
  inspect dns preset_dns_map 
  inspect ftp 
  inspect h323 h225 
  inspect h323 ras 
  inspect netbios 
  inspect rsh 
  inspect rtsp 
  inspect skinny 
  inspect esmtp 
  inspect sqlnet 
  inspect sunrpc 
  inspect tftp 
  inspect sip 
  inspect xdmcp 
!
!--- This command tells the device to 
!--- use the "global_policy" policy-map on all interfaces.

service-policy global_policy global
prompt hostname context 
Cryptochecksum:4b2f54134e685d11b274ee159e5ed009
: end
ASA-AIP-CLI(config)#  

Конфигурация базовой проверки приложений TFTP

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

  1. Введите policy-map global_policy .

    ASAwAIP-CLI(config)#policy-map global_policy
    
  2. Введите class inspection_default .

    ASAwAIP-CLI(config-pmap)#class inspection_default
    
  3. Введите inspect TFTP .

    ASAwAIP-CLI(config-pmap-c)#inspect TFTP
    

Пример конфигурации

Имя устройства 1

ASA-AIP-CLI(config)#show running-config 

 ASA Version 7.2(2) 
!
hostname ASA-AIP-CLI
domain-name corp.com
enable password WwXYvtKrnjXqGbu1 encrypted
names
!
interface Ethernet0/0
 nameif Outside
 security-level 0
 ip address 192.168.1.2 255.255.255.0 
!
interface Ethernet0/1
 nameif Inside
 security-level 100
ip address 10.1.1.1 255.255.255.0
!
interface Ethernet0/2
 nameif DMZ
  security-level 50
  ip address 172.16.1.12 255.255.255.0 
!
interface Ethernet0/3
 no nameif
 no security-level
 no ip address
!
interface Management0/0
  no nameif
 no security-level
 no ip address
!
!--- Output is suppressed.

!--- Permit inbound TFTP traffic. 

access-list 100 extended permit udp any host 192.168.1.5 eq tftp
!
!--- Command to redirect the TFTP traffic received on IP 192.168.1.5 
!--- to IP 172.16.1.5.

static (DMZ,outside) 192.168.1.5 172.16.1.5 netmask 255.255.255.255
access-group 100 in interface outside
class-map inspection_default
 match default-inspection-traffic
!
!
policy-map type inspect dns preset_dns_map
 parameters
  message-length maximum 512

policy-map global_policy
 class inspection_default
  inspect dns preset_dns_map 
  inspect ftp
  inspect h323 h225 
  inspect h323 ras 
  inspect netbios 
  inspect rsh 
  inspect rtsp 
  inspect skinny 
  inspect esmtp 
  inspect sqlnet 
  inspect sunrpc 
  inspect tftp 
  inspect sip 
  inspect xdmcp 
!
!--- This command tells the device to 
!--- use the "global_policy" policy-map on all interfaces.

service-policy global_policy global
prompt hostname context 
Cryptochecksum:4b2f54134e685d11b274ee159e5ed009
: end
ASA-AIP-CLI(config)#  

Проверка

Чтобы убедиться в успешном завершении конфигурации, воспользуйтесь командой show service-policy и ограничьте использование выходных данных только для проверки FTP с помощью команды show service-policy inspect ftp .

pix-asa-enable-ftp-3.gif

Проблема: неправильный синтаксис в конфигурации и получена ошибка типа class-map inspection

В конфигурации представлен неправильный синтаксис и была получена такая ошибка, как эта:

ERROR: % class-map inspection_default not configured

Решение

Конфигурация зависит от проверок, заданных по умолчанию в конфигурации . Если они отсутствуют в конфигурации, воссоздайте их с помощью следующих команд:

  1. class-map inspection_default

    match default-inspection-traffic

  2. policy-map type inspect dns preset_dns_map parameters

    message-length maximum 512

  3. policy-map global_policy

    • class inspection_default

      • inspect dns preset_dns_map

        inspect ftp inspect h323 h225

        inspect h323 ras

        inspect rsh

        inspect rtsp

        inspect esmtp

        inspect sqlnet

        inspect skinny

        inspect sunrpc

        inspect xdmcp

        inspect sip

        inspect netbios

        inspect tftp

  4. service-policy global_policy global

warning Предупреждение: Если проверки, заданные по умолчанию, были отключены для разрешения другой проблемы, эта проблема может снова возникнуть при повторном включении проверок по умолчанию. Вам или администраторам должно быть известно, если проверки по умолчанию были отключены ранее при устранении неполадок.

Связанные обсуждения сообщества поддержки Cisco

В рамках сообщества поддержки Cisco можно задавать и отвечать на вопросы, обмениваться рекомендациями и совместно работать со своими коллегами.


Дополнительные сведения


Document ID: 82018