C#의 SFTP 라이브러리

Fil Zjazel Romaeus Villegas 2023년1월30일
  1. C# SSH.NET
  2. WinSCP
  3. 레벡스
C#의 SFTP 라이브러리

SFTP는 Secure File Transfer Protocol의 약자로 민감한 파일에 대한 다양한 작업을 수행합니다. SFTP를 사용하여 수행할 수 있는 작업의 예는 다음과 같습니다.

  • 서버/컴퓨터간 파일 업로드/다운로드
  • 파일 삭제
  • 일시 중지된 파일 전송 재개

사용할 수 있는 SFTP 라이브러리가 많이 있습니다. 여기에 라이브러리의 몇 가지 예와 라이브러리의 기능 및 이점이 나열되어 있습니다.

C# SSH.NET

SSH.NET은 병렬 처리에 최적화된 Secure Shell(SSH) 오픈 소스 라이브러리입니다. 이 프로젝트는 원래 Sharp.SSH에서 영감을 받았습니다.

이 라이브러리는 지속적으로 업데이트되며 다른 개발자들이 적극 권장합니다. 무료로 사용할 수 있으므로 사용하기 쉽고 통증이 없습니다. 또한 SSH.NET을 사용하고 오류를 해결하는 데 도움이 되는 방법을 논의하는 사용 가능한 문서 및 포럼이 많이 있습니다. 이 라이브러리는 MIT 라이선스를 사용합니다.

다음은 SSH.NET에서 광고하는 몇 가지 기능입니다.

  • SCP 기능 제공
  • 원격, 동적 및 로컬 포트 ​​포워딩
  • 동기 및 비동기 작업 모두에 SFTP 기능 제공
  • 정확한 진행률 표시줄 구현을 허용하기 위해 업로드 및 다운로드 sftp 작업에 대한 상태 보고서 제공
  • 쉘/터미널 구현
  • 2단계 이상 인증 지원
  • SOCKS4, SOCKS5 및 HTTP 프록시 지원
  • 공개키, 비밀번호, 키보드 상호작용 인증 방식 지원
  • 동기 및 비동기 방법을 모두 사용하여 SSH 명령의 키 파일 전달 phraseExecution 지정
  • 명령어 실행 종료 상태 및 기타 정보 반환
  • 여러 키 파일을 사용하여 인증

SSH.NET을 사용하려면 NuGet 패키지 관리자를 통해 설치하거나 GitHub에서 프로젝트를 가져올 수 있습니다.

WinSCP

WinSCP(Windows Secure CoPy)는 .NET 래퍼로 시작했지만 이후 .NET 라이브러리가 되었습니다.

이 라이브러리도 지속적으로 업데이트되고 문서화되어 있습니다. 이 라이브러리도 무료이며 오픈 소스이므로 포럼에서 일반적으로 권장되는 SFTP 라이브러리 중 하나입니다. 이 라이브러리는 GNU 일반 공중 라이선스를 사용하며 GPL 조건에 따라 자유롭게 사용, 재배포 및/또는 수정할 수 있습니다.

다음은 WinSCP에서 사용할 수 있는 몇 가지 기능입니다.

  • 그래픽 사용자 인터페이스
  • 다양한 언어로 사용 가능
  • Windows와 통합
  • 모든 공통 파일 작업 지원
  • SSH 및 FTM 및 WebDav 및 S3 프로토콜을 통한 SFTP 및 SCP 프로토콜 지원
  • 고급 프로그래밍 작업을 위한 배치 파일 스크립팅 및 명령줄 인터페이스 및 .NET 어셈블리 허용
  • 여러 반자동 또는 완전 자동 방식의 디렉토리 동기화
  • 통합된 텍스트 편집기가 있습니다.
  • 암호, 키보드 상호 작용, 공개 키 및 Kerberos(GSS) 인증 지원
  • SSH를 통한 공개 키 인증을 완벽하게 지원하기 위해 Pageant(PuTTY 인증 에이전트)와 통합

WinSCP를 사용하려면 NuGet 패키지 관리자 또는 WinSCP의 웹 사이트를 통해 설치할 수 있습니다.

레벡스

Rebex는 파일 전송 팩, SSH 팩 또는 모든 Rebex .NET 구성 요소를 하나의 팩에 제공하는 전체 팩을 모두 제공하는 유료 솔루션입니다. 여기에는 다음이 포함됩니다.

  • SFTP, FTP, HTTP, IMAP, POP3, SMPT, EWS, SNTP, WebSocket, 메일
  • Windows 7, 8.1, 10, 11의 TLS 1.3
  • SFTP 및 SSH 서버
  • 터미널 에뮬레이션이 있는 SSH 셸 및 텔넷
  • Syslog 클라이언트 및 서버
  • ZIP 및 GZIP 압축

이 라이브러리는 오픈 소스가 아니지만 Rebex를 선택하는 이점 중 하나는 팀의 지원에 액세스할 수 있다는 것입니다. 라이브러리 활용에 도움이 되는 방대한 지식 기반 문서 세트가 있습니다. 또한 30일 무료 평가판을 제공하므로 테스트하고 솔루션이 가장 적합한지 확인할 수 있습니다.

Rebex에 대한 자세한 내용은 웹사이트에서 확인할 수 있습니다.