Как добавить возможности безопасного FTP в приложение .NET - PullRequest
5 голосов
/ 31 марта 2009

Я переписываю собственное клиент-серверное приложение как приложение .NET MVC. Нужно отправлять и получать файлы через безопасный FTP. Исходное приложение было клиент-серверным и использовало MOVEit Freely для выполнения SFTP. Есть ли библиотека или продукт, который я могу использовать для этого из .NET?

Ответы [ 8 ]

3 голосов
/ 31 марта 2009
2 голосов
/ 19 октября 2010

Если вы не хотите ничего платить, вы можете легко использовать встроенный FtpWebRequest для обычного FTP и FTPES (явный FTP с SSL). Для FTPS (неявный FTP + SSL) я рекомендую Alex FTPS Client . И, наконец, для SFTP (FTP через SSH) вы можете использовать SharpSSH . Этот метод не для всех - он действительно только для дешевых коньков. Но я использовал эту комбинацию для всех своих потребностей в передаче данных в производственной среде, и она прекрасно работает. Продукты устарели, но протоколы стабильны, так что кого это волнует.

2 голосов
/ 28 мая 2009

Наш Rebex File Transfer Pack поддерживает оба варианта безопасного FTP - SFTP и FTPS (FTP / SSL).

2 голосов
/ 31 марта 2009

Посмотрите на SharpSSH , я знаю, что у них есть поддержка sftp, не знаю, как сложно будет писать на стороне сервера.

2 голосов
/ 31 марта 2009

Просто используйте встроенные FtpWebRequest и FtpWebResponse классы.

1 голос
/ 27 мая 2009

Взгляните на edtFTPnet / PRO , который предлагает полную поддержку SFTP в .NET.

Вы также можете взглянуть на CompleteFTP , который является быстрым и компактным SFTP-сервером для платформ Windows (он также поддерживает FTP и FTPS).

Могу добавить, что использование термина «безопасный FTP» может быть довольно запутанным. Это может означать SFTP, который является безопасным протоколом передачи файлов, который работает по SSH. Или это может означать FTPS, который в основном является стандартными командами FTP, работающими через соединение SSL.

0 голосов
/ 21 июня 2011

Я принимал участие в создании MOVEit Freely. У него никогда не было поддержки SFTP через SSH - у него была только поддержка FTP / S. Его первоначальная роль заключалась в том, чтобы заменить команду FTP.exe клиентом «команда на команду» с дополнительной поддержкой SSL / TLS.

MOVEit Freely изначально создавался поверх стека Dundas FTP / S, но мы сильно изменили исходный код по мере развития FTP / S. (Мы начали немного раньше.) В наши дни Dundas сосредоточена на компонентах Dashboard, и в лицензионном соглашении, которое мы подписали с Dundas, говорилось, что мы никогда не будем публиковать отдельный компонент FTP / S на основе их кода. (Это стандартно для такого рода OEM-лицензии.) Другими словами, я бы ознакомился с одной из рекомендаций для Windows выше. (Я рекомендую компоненты из программного обеспечения \ n, а также как предложение Rebex для Windows.)

0 голосов
/ 31 марта 2009

Это нативно в .NET. Нужные вам классы находятся в пространстве имен System.Net. Взгляните на классы FtpWebRequest и FtpWebResponse. Удачного кодирования:)

...