문제

보안을 위해 기존 FTP에서 벗어나야 합니다(비밀번호를 암호화되지 않은 상태로 전송함).SSH가 확실한 대안으로 선전되는 것을 들었습니다.그러나 저는 웹 사이트 개발을 자동화하기 위해 ASP.NET 프로그램 인터페이스에서 FTP를 구동해 왔으며 이제는 웹 기반 프로세스가 상당히 많이 이루어졌습니다.

ASP.NET에서 구동할 수 있는 프로그램 인터페이스가 있는 파일을 안전하게 전송하는 방법을 추천할 수 있는 사람이 있습니까?

도움이 되었습니까?

해결책

질문에는 세 가지 하위 질문이 있습니다.

1) 보안 전송 프로토콜 선택

이전 FTP의 보안 버전이 존재합니다. 이를 FTP/SSL(SSL 암호화 채널을 통한 일반 이전 FTP)이라고 합니다.기존 배포 인프라를 계속 사용할 수도 있습니다. FTPS 또는 FTP/SSL을 지원하는지 확인하세요.

FTP, FTP/SSL 및 SFTP 차이점에 대한 자세한 내용은 다음에서 확인할 수 있습니다. http://www.rebex.net/secure-ftp.net/ 페이지.

2) Windows용 SFTP 또는 FTP/SSL 서버

SFTP 또는 FTPS를 사용할지 선택할 때 적절한 서버를 배포해야 합니다.FTP/SSL의 경우 Gene6(http://www.g6ftpserver.com/) 여러 서버에서 문제 없이 작동합니다.FTP/SSL Windows 서버가 많이 있으므로 원하는 것을 사용하십시오.Windows용 SFTP 서버의 경우 상황이 좀 더 복잡합니다. 작동하는 구현이 몇 개밖에 없습니다.Bitvise WinHTTPD는 매우 유망해 보입니다(http://www.bitvise.com/winsshd).

3) ASP.NET용 인터넷 파일 전송 구성 요소

솔루션의 마지막 부분은 asp.net에서 안전한 파일 전송입니다.시중에는 여러 가지 구성 요소가 있습니다.나는 추천할 것이다 Rebex 파일 전송 팩 - FTP(및 FTP/SSL)와 SFTP(SSH 파일 전송)를 모두 지원합니다.

다음 코드는 SFTP를 통해 서버에 파일을 업로드하는 방법을 보여줍니다.코드는 당사에서 가져왔습니다. Rebex SFTP 튜토리얼 페이지.

// create client, connect and log in 
Sftp client = new Sftp();
client.Connect(hostname);
client.Login(username, password);

// upload the 'test.zip' file to the current directory at the server 
client.PutFile(@"c:\data\test.zip", "test.zip");

// upload the 'index.html' file to the specified directory at the server 
client.PutFile(@"c:\data\index.html", "/wwwroot/index.html");

// download the 'test.zip' file from the current directory at the server 
client.GetFile("test.zip", @"c:\data\test.zip");

// download the 'index.html' file from the specified directory at the server 
client.GetFile("/wwwroot/index.html", @"c:\data\index.html");

// upload a text using a MemoryStream 
string message = "Hello from Rebex SFTP for .NET!";
byte[] data = System.Text.Encoding.Default.GetBytes(message);
System.IO.MemoryStream ms = new System.IO.MemoryStream(data);
client.PutFile(ms, "message.txt");

남자 이름

다른 팁

샤프쉬 scp를 통해 파일 전송을 구현합니다.

우리는 다음의 변형을 사용했습니다. 이 솔루션 과거에는 .NET용 SSH Factory를 사용했습니다.

FTP의 전통적인 보안 대체 방법은 다음과 같습니다. SFTP, 하지만 두 엔드포인트를 모두 충분히 제어할 수 있는 경우 다음을 고려할 수 있습니다. 재동기화 대신에:SSH를 사용하도록 지시하는 것만으로도 고도로 구성 가능하고 안전하며 두 위치를 동기화하는 데 훨씬 더 효율적입니다.

안녕하세요,

당신은보고 싶을 수도 있습니다 프로FPD.

크게 사용자 정의할 수 있습니다.Apache 모듈 구조를 기반으로 합니다.

웹사이트에서:

ProFTPD는 안전하고 구성 가능한 FTP 서버를 갖고자 하는 열망과 Apache 웹 서버에 대한 상당한 존경심에서 성장했습니다.

우리는 웹 콘텐츠의 대규모 전송에 적합한 버전을 사용합니다.일반적으로 하루에 300,000개의 업데이트가 이루어집니다.

HTH

건배,

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top