Нет никаких сомнений в том, что программа LeechFTP является выдающимся клиентом FTP для Windows. Написанная Яном Дебисом (Jan Debis) программа LeechFTP доступна по адресу http://stud.fh-heilbronn.de/~jdebis/leechftp/files/lftp13.zip. Она относится к классу свободно распространяемых, многопоточных и простых в использовании программ. Кроме того, LeechFTP прекрасно инкапсулируется в SocksCap и OpenSSH. Одним из наиболее важных режимов настройки работы протокола FTP является переключение с активного режима работы (Active FTP) к пассивному (Passive FTP). В активном режиме сервер инициализирует дополнительные TCP-соединения к клиенту, внутри которых будут переданы отдельные файлы, а в пассивном – сервер именует TCP-порты таким образом, чтобы клиент подключался к ним и переданное по ним содержимое было отдельным файлом. Переключение режимов осуществляется следующим образом.
1. Выберите пункты меню File I Options.
2. Щелкните на вкладке Firewall.
3. Включите опцию PASV Mode.
4. Щелкните на кнопке OKи подключитесь к какому-либо серверу. Сверкающая стрелка в левом верхнем углу (см. рис. 13.4) является признаком успешного начала работы.
Рис. 13.4. Обработка данных программой LeechFTP
Насколько хорошо это работает? Посмотрите на рис. 13.4. Семь потоков с высокой скоростью обрабатывают данные, используя динамически определяемые порты. Они делают это специально для автора. На суд к Виргилию: команда socksify клиента Dante для инкапсуляции приложений UNIX
Для передачи данных через межсетевые экраны в некоторые инструментальные средства UNIX встроена поддержка протокола SOCKS, но таких средств немного. Большинство инструментальных средств в этом направлении вообще ничего не делает. К счастью, с помощью клиента Dante можно добавить поддержку протокола SOCKS во все динамически подключенные приложения. Разработанная компанией Inferno Nettverks программа Dante является промышленной улучшенной реализацией протоколов SOCKS4/SOCKS5. Хотя и с трудом, но ее можно откомпилировать на большинстве платформ. Программа Dante находится по адресу ftp://ftp.inet.no/pub/socks/dante-1.1.11.tar.gz.
Первое, что нужно сделать после ее инсталляции, – это на системном уровне настроить протокол SOCKS. Конечно, это сильно раздражает, но выбора нет (по крайней мере, сейчас). Для настройки протокола создайте файл под именем /etc/socks.conf и запишите в него следующее:
route {
from: 0.0.0.0/0 to: 0.0.0.0/0 via: 127.0.0.1 port = 1080
proxyprotocol: socks_v4
}
После этого нужно адаптировать приложения для работы с протоколом SOCKS, выполнив перед их запуском команду socksify. Это заставит приложения устанавливать соединения при помощи механизма динамического продвижения данных, который установлен таким образом, что к нему можно обратиться через порт 1080. Из-за централизованного размещения настроек протокола SOCKS необходимо одновременное выполнение двух условий. Во-первых, к системе, на которой работает пользователь, нужен доступ суперпользователя. И во-вторых, следует ограничиться одновременной работой только с одним динамическим механизмом продвижения данных. Для ознакомления с последними сведениями об этих раздражающих ограничениях зайдите на сайт www.doxpara.com/tradecraft или Web-сайт книги www.syngress.com/solutions. В некоторых приложениях, прежде всего это относится к таким известным программам, как Mozilla и Netscape, очень удачно реализована поддержка протокола SOCKS. В большинстве случаев подобные приложения могут быть настроены точно так же, как и браузер Internet Explorer. К сожалению, приложения класса setuid в общем случае не могут воспользоваться таким способом переадресации. К ним часто относят ssh, хотя для него устанавливать идентификатор пользователя setuid уже не требуется. Если говорить в целом, то большинство вещей, реализованных на основе сказанного, работают вполне успешно. Ниже показан работающий пример работы одной из таких реализаций, основанный на запуске SSH с опцией – D1080:
bash-2.05a$ socksify ncftp
NcFTP 1.9.5 (October 29, 1995) by Mike Gleason, NCEMRSoft.
ncftp>set passive
ncftp>open mirrors.rcn.net
ProFTPD 1.2.0 Server (RCN Mirrors) [mirrors.rcn.net]
Anonymous login ok, send your complete e-mail address as
password.
Anonymous access granted, restrictions apply.
Logged into mirrors.rcn.net.
mirrors.rcn.net:/
ncftp>ls
debian@ mirrors/ pub/
mirrors.rcn.net:/
ncftp>
Конечно, подключение проверяется на прохождение через механизм переадресации SSH пользователя так, как это показано ниже:
libertiee:~> ~#
The following connections are open:
#2 client-session (t4 r0 i1/0 o16/0 fd 6/7)
#3 direct-tcpip: listening port 1080 for 207.172.2.141
port 21, connect from 127.0.0.1 port 1666 (t4 r1 i1/0
o16/0 fd 9/9)
Переадресация удаленного порта
Последний предусмотренный в протоколе SSH тип переадресации порта известен как переадресация (перенаправление) удаленного порта (remote port forward). Переадресация удаленного порта, так же как и переадресация динамического порта, позволяет эффективно импортировать сетевые ресурсы. Тем не менее внешний сервер системы групповых дискуссий в Интернете IRC (Internet Relay Chat – Интернетовские посиделки. Глобальная система, посредством которой пользователи могут общаться друг с другом в реальном масштабе времени) ставится в соответствие локальному хосту, а каждое приложение, обеспечивающее проведение переговоров, запускается по IP-адресу 127.0.0.1:1080. Фактически переадресация удаленного порта экспортирует клиентам доступную им возможность сетевого взаимодействия. Экспорт осуществляет через сервер, к которому этот клиент подключен. Сказанное поясняет приведенный ниже пример:
Читать дальше
Конец ознакомительного отрывка
Купить книгу