Отличие активного режима от пассивного заключается в следующем: в активном режиме, после того, как клиент из порта N говорит серверу «привет» (помимо этого он сообщает серверу номер порта N+1 из области динамических адресов, по которому сервер сможет подключиться для установки соединения и дальнейшей передачи данных), клиент сразу же начинает слушать порт данных N+1, а сервер соединяется по указанному порту. Для клиента такое соединение является входящим, что очень часто требует дополнительных настроек, если клиент находится за файерволлом, или если используется NAT.
Для того, чтобы у нас не возникло проблем с файерволлом, будем по ftp соединению обращаться к компьютеру из «нашей» сети, т.е. к компьютеру с ip-адресом 10.1.99.13.
Проанализируем, что при этом происходит в сети.
Рис. 2.4.1. Трафик при использовании активного режима
Первым делом клиент запрашивает сервер на соединение. На рис. 2.4.2 видно, что этот запрос осуществляется по порту 1060 клиента и направлен на порт 21 сервера. При этом запросе как всегда стандартно выставлен флаг SYN.
Рис. 2.4.2. Запрос на ftp соединение
После того, как сервер получил запрос, он в свою очередь по командному порту (21) передаёт пакет подтверждения установления соединения на порт клиента 1060. При этом установлены флаги SYN и Ack.
Рис. 2.4.3. Подтверждение ftp соединения
Далее идёт обмен такой служебной информацией, как login и password. Обратим внимание, что пока не приходит никакого запроса на выставление нового порта для активного режима.
Далее, в нашем случае, начинает происходить загрузка файла с сервера. Завершение соединения происходит по выставлению флага FIN и ACK и подтверждению завершения. После чего идёт пакет, подтверждающий удачный сеанс загрузки файла. Ниже на рис. 2.4.3 и рис. 2.4.4 показаны начало скачивания файла, и конец загрузки этого файла.
Рис. 2.4.4. Начало передачи файла
Рис. 2.4.5. Конец передачи файла
Теперь из рис. 2.4.4 видно, что перед посылкой файла клиент выставляет новый порт серверу для передачи в активном режиме. Посмотрим что это за порт.
Рис. 2.4.6. Информирование о выставлении клиентом нового порта для активного режима
Как видно, клиент говорит серверу, чтобы он подключился и начал обмен данными по порту 1068. Далее из рис. 2.4.4 идёт подтверждение о том, что сервер удачно произвёл подготовку обмена данными по указанному порту. Затем следует от клиента запрос на приём файла 1.рсар. После этого идёт запрос со стороны сервера на установление связи в активном режиме (выставляется флаг SYN). При этом используются порт 20 у сервера и новый порт 1068 у клиента (см. рис. 2.4.7).
Рис. 2.4.7. Запрос сервера на установление связи к порту клиента, указанному самим клиентом
Дальше клиент посылает серверу подтверждение на установление данной связи (выставлены флаги SYN и Ack).
Рис. 2.4.8. Подтверждение клиентом установления нового соединения
А дальше, по установленному новому соединению осуществляется перекачка файла.
3. Выводы
В данной лабораторной работе были изучены основные принципы работы протоколов прикладного уровня: протокола TELNET, а также протокола FTP. Для этого была использована программа-анализатор сетевых пакетов WireShark. Также было установлено, что в данных протоколах пароли и логины передаются в незашифрованном виде. Это необходимо принять к сведению, т.к. потенциально наша конфиденциальная информация может быть перехвачена злоумышленниками.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.