Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

Дано: классическая схема подключения с FTP-сервером за NAT.
Требуется: Настроить маршрутизатор ESR так, чтобы была возможность подключаться к FTP-серверу клиентам в активном либо пассивном режиме из сети Интернет.

Решение:
FTP использует клиент-серверную архитектуру, что означает, что передача данных происходит между двумя программами: клиентской и серверной. Кратко рассмотрим особенности особенности режимов подключения. Протокол FTP работает поверх протокола TCP. Использует одновременно два TCP - соединения: одно из них отвечает за управление передачей данных, а второй за передачу данных. Управляющее соединение всегда происходит со стороны клиента на порт сервера 21 и остается на протяжении всего сеанса работы открытым. Соединение данных открывается и закрывается по мере необходимости в приеме или получении данных.

Клиент инициирует TCP - соединение с динамического порта (1024-65535) к порту номер 21 на FTP - сервере. Дальнейшие действия зависят от того, какой режим FTP (Активный или Пассивный) выбран.

В активном режиме, когда клиент подключается, он также сообщает серверу номер порта (из динамического диапазона 1024-65535) для того, чтобы сервер мог подключиться к клиенту для установки соединения для передачи данных. FTP-сервер подключается к заданному номеру порта клиента, используя со своей стороны номер TCP-порта 20 для передачи данных.

В пассивном режиме, сервер сообщает клиенту при его подключении номер TCP-порта (из динамического диапазона 1024-65535), к которому можно подключиться для установки соединения передачи данных.

Главное отличие между активным режимом FTP и пассивным режимом FTP – это сторона, которая открывает соединение для передачи данных. В активном режиме клиент должен принять соединение от FTP-сервера. В пассивном режиме клиент всегда инициирует соединение.


Исходя из этих данных, для активного режима понадобиться сконфигурировать DNAT-трансляцию на 21 TCP порт FTP сервера. 
Для пассивного режима дополнительно потребуется добавить пул портов для передачи данных, которые может использовать клиент.
Для уменьшения количества открытых портов при настройке ESR, вместо настройки пула, включим ip firewall sessions tracking ftp (функция отслеживания сессий уровня приложений для протокола ftp).
Для корректной работы ftp-сервера за NAT для  пассивного режима ftp используем nat alg ftp (функция трансляции IP-адресов в заголовках уровня приложений).

Пример настройки для активного режима
hostname R0

object-group service FTP
  port-range 21
exit

object-group network LAN
  ip prefix 192.0.2.0/24
exit
object-group network WAN
  ip address-range 203.0.113.1
exit

interface gigabitethernet 1/0/1
  description "LAN"
  ip firewall disable
  ip address 192.0.2.1/24
exit
interface gigabitethernet 1/0/2
  description "WAN"
  ip firewall disable
  ip address 203.0.113.1/30
exit

ip firewall sessions counters

nat destination
  pool FTP
    ip address 192.0.2.2
    ip port 21
  exit
  ruleset DNAT
    from interface gigabitethernet 1/0/2
    rule 10
      match protocol tcp
      match destination-address object-group WAN
      match destination-port object-group FTP
      action destination-nat pool FTP
      enable
    exit
  exit
exit

nat source
  ruleset TEST
    to interface gigabitethernet 1/0/2
    rule 10
      match source-address object-group LAN
      action source-nat interface
      enable
    exit
  exit
exit

ip route 0.0.0.0/0 203.0.113.2

Пример диагностики
R0# show ip firewall sessions 
 Codes: E - expected, U - unreplied,
        A - assured, C - confirmed

Prot    Aging        Inside source           Inside destination      Outside source          Outside destination     Pkts         Bytes        Status   
-----   ----------   ---------------------   ---------------------   ---------------------   ---------------------   ----------   ----------   ------   
tcp     112          192.0.2.2:20            198.51.100.2:49900       203.0.113.1:20          198.51.100.2:49900       5            1421         AC       
tcp     112          192.0.2.2:20            198.51.100.2:49901       203.0.113.1:20          198.51.100.2:49901       117          6092         AC       
tcp     112          192.0.2.2:20            198.51.100.2:49902       203.0.113.1:20          198.51.100.2:49902       5            1484         AC       
tcp     102          192.0.2.2:20            198.51.100.2:49895       203.0.113.1:20          198.51.100.2:49895       5            1421         AC       
tcp     112          198.51.100.2:49893      192.0.3.2:21             198.51.100.2:49893      203.0.113.1:21           29           1443         AC 


Прмер настройки для пассивного режима FTP
hostname R1

object-group service FTP
  port-range 21
exit

object-group network LAN
  ip prefix 192.0.2.0/24
exit
object-group network WAN
  ip address-range 203.0.113.1
exit

interface gigabitethernet 1/0/1
  description "LAN"
  ip firewall disable
  ip address 192.0.2.1/24
exit
interface gigabitethernet 1/0/2
  description "WAN"
  ip firewall disable
  ip address 203.0.113.1/30
exit

ip firewall sessions counters
ip firewall sessions tracking ftp

nat destination
  pool FTP
    ip address 192.0.2.2
    ip port 21
  exit
  ruleset DNAT
    from interface gigabitethernet 1/0/2
    rule 10
      match protocol tcp
      match destination-address object-group WAN
      match destination-port object-group FTP
      action destination-nat pool FTP
      enable
    exit
  exit
exit

nat source
  ruleset TEST
    to interface gigabitethernet 1/0/2
    rule 10
      match source-address object-group LAN
      action source-nat interface
      enable
    exit
  exit
exit

nat alg ftp

ip route 0.0.0.0/0 203.0.113.2


Пример диагностики
R1# show ip firewall sessions 
 Codes: E - expected, U - unreplied,
        A - assured, C - confirmed

Prot    Aging        Inside source           Inside destination      Outside source          Outside destination     Pkts         Bytes        Status   
-----   ----------   ---------------------   ---------------------   ---------------------   ---------------------   ----------   ----------   ------   
tcp     91           198.51.100.2:49507       192.0.2.2:10097         198.51.100.2:49507       203.0.113.1:10097       4            168          EAC      
tcp     116          198.51.100.2:49505       192.0.2.2:21            198.51.100.2:49505       203.0.113.1:21          29           1651         AC       
tcp     116          198.51.100.2:49512       192.0.2.2:10090         198.51.100.2:49512       203.0.113.1:10090       4            168          EAC      
tcp     117          198.51.100.2:49513       192.0.2.2:10097         198.51.100.2:49513       203.0.113.1:10097       12           12786        EAC      
tcp     117          198.51.100.2:49514       192.0.2.2:10090         198.51.100.2:49514       203.0.113.1:10090       4            168          EAC 


  • Нет меток