sftp 서버에 연결하려고하는데 예외 나 시간 초과가 없으므로 메모리 사용량 만 증가합니다.sftp 서버에 연결하려고 시도 할 때 메시지 또는 시간 초과가 발생하지 않습니다.
나는 도서관 EnterpriseDT.Net.Ftp을 사용하고
내 코드는 다음과 같다 :
XmlConfigurator.Configure();
Module1.Logger = LogManager.GetLogger("SftpTester");
try
{
Module1.Logger.Info((object) "[EnterpriseDT] - Start");
Uri uri1 = new Uri("ftp://*****");
// ISSUE: explicit reference operation
// ISSUE: variable of a reference type
Uri& uri2 = @uri1;
int port = ****;
string str1 = "******";
// ISSUE: explicit reference operation
// ISSUE: variable of a reference type
string& UserName = @str1;
string str2 = "*******";
// ISSUE: explicit reference operation
// ISSUE: variable of a reference type
string& Password = @str2;
SecureFTPConnection secureFtpConnection = Module1.InitConnection(uri2, port, UserName, Password);
Module1.Logger.Info((object) "Connecting to ftp...");
secureFtpConnection.Connect();
Module1.Logger.Info((object) "Connection Successful!!!");
try
{
Module1.Logger.Info((object) "Disposing connection...");
secureFtpConnection.Dispose();
}
catch (Exception ex)
{
ProjectData.SetProjectError(ex);
ProjectData.ClearProjectError();
}
Module1.Logger.Info((object) "Connection Disposed.");
}
catch (Exception ex)
{
ProjectData.SetProjectError(ex);
Exception exception = ex;
Module1.Logger.Error((object) ("Main() - " + exception.Message));
Module1.Logger.Error((object) ("StackTrace: " + exception.StackTrace));
if (exception.InnerException != null)
Module1.Logger.Error((object) ("InnerException: " + exception.InnerException.Message));
ProjectData.ClearProjectError();
}
finally
{
Module1.Logger.Info((object) "[EnterpriseDT] - End");
}
private static SecureFTPConnection InitConnection(ref Uri uri, int port, ref string UserName = "", ref string Password = "")
{
Module1.Logger.Info((object) "InitConnection() - Setting Up Connection");
SecureFTPConnection secureFtpConnection = new SecureFTPConnection();
secureFtpConnection.LicenseOwner = "*******";
secureFtpConnection.LicenseKey = "***********";
secureFtpConnection.ServerAddress = uri.Host;
Module1.Logger.Info((object) ("\tHost: " + uri.Host));
secureFtpConnection.UserName = UserName;
Module1.Logger.Info((object) ("\tUsername: " + UserName));
secureFtpConnection.Protocol = FileTransferProtocol.SFTP;
Module1.Logger.Info((object) ("\tProtocol: " + FileTransferProtocol.SFTP.ToString()));
secureFtpConnection.ServerValidation = SecureFTPServerValidationType.None;
Module1.Logger.Info((object) ("\tServerValidation: " + SecureFTPServerValidationType.None.ToString()));
secureFtpConnection.AuthenticationMethod = AuthenticationType.Password;
Module1.Logger.Info((object) ("\tAuthenticationMethod: " + AuthenticationType.Password.ToString()));
if (port > 0)
{
secureFtpConnection.ServerPort = port;
Module1.Logger.Info((object) ("\tServerPort: " + port.ToString()));
}
secureFtpConnection.Password = Password;
Module1.Logger.Info((object) ("\tPassword: " + Password));
return secureFtpConnection;
}
로그 메시지 :
2014-09-27 04:50:22,783 [1] - [SftpTester] [EnterpriseDT] - Start
2014-09-27 04:50:22,799 [1] - [SftpTester] InitConnection() - Setting Up Connection
2014-09-27 04:50:22,971 [1] - [SftpTester] Host: *******
2014-09-27 04:50:22,971 [1] - [SftpTester] Username: *****
2014-09-27 04:50:22,971 [1] - [SftpTester] Protocol: SFTP
2014-09-27 04:50:22,971 [1] - [SftpTester] ServerValidation: None
2014-09-27 04:50:22,971 [1] - [SftpTester] AuthenticationMethod: Password
2014-09-27 04:50:22,971 [1] - [SftpTester] ServerPort: ****
2014-09-27 04:50:22,971 [1] - [SftpTester] Password: ******
2014-09-27 04:50:22,971 [1] - [SftpTester] Connecting to ftp...
어떤 생각이 시간 초과 오류가있는 경우 또는 내가 블랙리스트에 있다면? 서버에 대한
업데이트 2014년 7월 10일
순서 :
- 암호 인증
- 패킷
- 패킷 대기는
- 인증 부분적인 성공을 도착했다. 시도 : 암호, 공개 키, 키보드 형
- 키보드 대화 형 인증
- 패킷
- 패킷 도착
- 프롬프트를 기다리는 중 : 패킷
- 패킷 도착
- 인증 부분적인 성공을 위해 대기
- : 비밀번호 . 시도 : 암호, 공개 키를 키보드 상호 작용 패킷을 기다리는
- 패킷 도착
- 프롬프트 : 비밀번호 :
- 루프
업데이트 갱신
(9 ~ 15) 라이브러리 문제를 해결, 버그였다.
버전 8.6.1 (2014년 9월 23일) 인증 시도의 루프 발생
고정 KBI 재진입 버그. 존재하지 않는 디렉토리에 파일을 업로드 할 때 예외가 발생하지 않는 SFTP 버그가 수정되었습니다. OpenVMS SFTP 서버가 SSH로 인식되지 않는 SFTP 문제가 수정되었습니다. 단 하나의 재 연결 만 이루어진 재 시도 다운로드 문제가 수정되었습니다. FTPS를 사용하는 일부 2012 R2 시스템에서 "보호 된 메모리를 읽거나 쓰려고했습니다."문제가 수정되었습니다.
라이브러리 문제인지 궁금합니다. FileZilla와 같은 FTP 클라이언트를 통해 동일한 서버에 연결을 시도 했습니까? diff 라이브러리를 사용해 보셨습니까? 이게 효과가 있습니까? –
프로덕션 서버이고 직접 액세스 할 수 없기 때문에 ftp 클라이언트로 테스트 할 수 없습니다. 그리고 나는이 현재 라이브러리의 문제점을 bussines의 요구 사항으로 검토해야합니다. –
EnterpriseDT.Net.Ftp는 FTP 클라이언트이므로, 다른 FTP 클라이언트를 사용하여 위에 사용 된 코드/라이브러리 (imho가 잘 보이는)와 관련된 문제가 있음을 배제합니다. 다른 FTP 클라이언트가 작동하면 위의 코드에 문제가 있습니다. 다른 클라이언트가 작동하지 않으면 아마도 방화벽 또는 FTP 서버 구성 문제 일 수 있습니다. –