SFTP

해시넷
grasong (토론 | 기여)님의 2021년 7월 7일 (수) 11:12 판
이동: 둘러보기, 검색

SFTP(Secure File Transfer Protocal)는 파일 전송 시의 정보(로그인 정보나 파일 정보)를 암호화 한 후 통신을 하여 기존의 FTP보다 보안이 강화된 전송방식이다. 포트번호는 22번이다.

개요

SFTP는 SSH의 파일 전송버전이라고 생각하면 된다. SSH(Secure SHell)는 텔넷(telnet)의 보안버전이다. SSH(SFTP)에서 터널링을 하는 방법은 FTPS에서의 방식과 상당히 유사하다. SSH는 3개의 프로토콜로 이루어져 있다. 첫번째로 전송 프로토콜부분은 결국 키를 교환하여 암호화 한다는데 FTPS와 맥을 같이하고 있다. 그러나 신원 확인용 스트링 교환이라는 부분이 다르다. 사용자 인증 프로토콜 부분에서 우리가 알고 있듯이 공개키, 패스워드, 호스트 인증방식을 사용할 수 있다. 그리고 연결프로토콜이 있다. 결국 SFTP는 SSH방식을 이용하여 안전하게 암호화된 구간에서 FTP 기능을 이용할 수 있다. FTP, TFTP(Trivial File Transfer Protocol)의 취약점인 평문전송의 문제점을 보완하여 SSH를 통해 동작하는 FTP로, TCP 보안채널(터널링)을 형성하여, 데이터의 안전한 전송을 가능하게 하는 파일 전송 프로토콜이다. 클라이언트 프로그램이 없더라도 윈도우에서 기본적으로 제공하는 서비스를 사용할 수 있다. 하지만 초보자들은 사용하기 어려우므로 간단한 인터페이스와 편리하게 조작할 수 있는 클라이언트 프로그램을 사용하는 것이 좋다. [1]

특징

  • 포트번호 : 22번
  • 기밀성 : 암호화를 통해 송수신되는 데이터의 기밀성 보장
  • 무결성 : 해시 값 비교를 통해 데이터 위 변조 방지
  • 인증 : 서버와 클라이언트가 서로 생성한 임의의 문자열을 바탕으로 송신자 인증[2]

등장배경

시큐어 셸 버전 2 프로토콜 (RFC 4251)의 개발을 맡았던 국제 인터넷 표준화 기구 (IETF) 워킹 그룹 "Secsh"는 안전한 파일 전송 기능의 표준 확장에 대한 초안 작성을 시도하였다. 인터넷 초안들이 만들어지면서 새로운 버전들로 이 프로토콜을 연이어 개정하였다.[2] 아직 초안이 표준화되기 전이었지만 소프트웨어 산업은 이 프로토콜의 다양한 버전들을 구현하기 시작하였다. 개발이 진척됨에 따라 Secsh 파일 전송 프로젝트의 범위는 파일 접근과 파일 관리를 포함하는 데까지 확장되었다. 마침내 일부 위원회 구성원들이 SFTP를 단순히 파일 접근이나 파일 전송 프로토콜이 아닌 파일 시스템 프로토콜로 보기 시작하자 개발은 중단되었는데, 이는 워킹 그룹의 범위를 넘어섰기 때문이다. 7년의 중단 기간이 있었지만, 2013년 버전 3 초안을 기본으로 하는 SFTP의 작업을 다시 시작하고자 하는 시도가 있었다.[3]

SFTP 접속 프로그램

FileZilla : 가장 많이 사용하는 클라이언트. FileZilla는 그래픽 유저 인터페이스 SFTP 및 FTP 클라이언트 프로그램이고 오픈소스 기반의 프로그램이다. 이 프로그램을 사용하여 모든 파일을 전송하는 것이 가능하며, 인터페이스에 있어서는 사이트 및 디스크를 신속하게 파악할 수 있으며 드래그 앤 드롭 기능을 지원하여 편리하다. 속도가 빠르며 4GB이상의 대용량 파일도 무리 없이 전송 처리 할 수 있다. 원격으로 파일을 검색할 수 있고 필터링이 가능하다는 장점 이 있다. 반면 전송예약을 할 수 없다는 단점이 있다.[4]

WinSCP : WinSCP는 Windows용 그래픽 유저 인터페이스 SFTP 및 FTP 클라이언트 프로그램이고 오픈소스 프리웨어이다. 레거시 SCP 프로토콜 역시 지원하며, 이 프로그램을 사용하여 로컬 컴퓨터와 원격 컴퓨터 간에 안전하게 파일을 복사할 수 있다.

  • 그래픽 유저 인터페이스(GUI)
  • 다국어 지원
  • Windows 운영체제와 통합 환경 지원(드래그 앤 드롭, URL, 바로 가기 아이콘)
  • 모든 일반적인 파일 작업 지원
  • SSH-1과 SSH-2를 통한 SFTP 및 SCP 프로토콜, 기존 FTP 프로토콜, WebDAV 프로토콜 지원
  • 배치 파일 스크립트와 명령 줄 인터페이스, 고급 프로그래밍 작업을 위한 .NET 어셈블리 지원
  • 자동으로 일부 또는 전체 디렉터리 동기화
  • 통합된 텍스트 편집기
  • SSH 암호, 키보드 대화식(keyboard-interactive), 공개 키 및 Kerberos (GSS) 인증 지원
  • SSH를 통한 공개키 인증을 완벽하게 지원하는 PAGEANT(PuTTY 인증 에이전트)와 통합
  • Windows 탐색기 및 Norton Commander 형태의 인터페이스 지원
  • 옵션에서 기본 암호로 세션 정보 저장 보호 기능 지원
  • 옵션에서 레지스트리 대신 구성 파일(INI)을 사용한 독립적인 실행 지원으로 이동식 저장장치에서 실행 가능

[5]

알드라이브 : 편리한 파일 전송 클라이언트라고 소개하는‘알드라이브’이다. 클라이언트와 서버 간의 파일 송수신 기능 외에, WebDAV 등 다양한 프로토콜 파일 전송을 지원한다. S3, Ucloud Biz, T-cloudbiz(Easy Storage) 등 대중화된 서비스도 알드라이브에서 한번에 편리하게 접속해 사용할 수 있지만, 문제가 많은 것으로 알려져 있다.

  • 기존 알FTP와 차별화된 UI와 스킨을 개편한 심플한 UI
  • FTP, FTP over SSL/TLS, SFTP, WebDAV 형식을 지원해 다양한 프로토콜 지원
  • 파일 전송 진행 상황 및 내역을 '전송창'에서 한눈에 확인가능
  • 가져오기를 통해 타제품 사이트 정보를 알드라이브에서도 쉽게 사용 가능
  • 여러 개의 사이트를 동시에 접속 가능
  • 여러 개 접속된 사이트를 탭 방식 레이아웃을 이용해 Drag & Drop 방식으로 편리하게 조작 가능

동작원리

기존의 FTP와 접속 방식과 같지만 FTP 서버에서 SFTP를 지원해야 한다.

장단점

같이보기

  1. IT's me, 〈https://nhj12311.tistory.com/76 ftp, ftps, sftp(ssh) 개념정리〉, 《dev》, 2019-08-07
  2. 이성덕, 〈https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=sdug12051205&logNo=221547447476 FTP(File Transfer Protocol) 및 SFTP(Secure FTP)〉, 《이성덕 정보관리기술자》, 2019-05-27
  3. https://nhj12311.tistory.com/76 SSH 파일 전송 프로토콜〉, 《위키백과》
  4. it-Fix, 〈https://itfix.tistory.com/291 파일질라(FileZilla)무료FTP 파일전송 프로그램 소개〉, 《IT ERROR FIX》, 2019-09-05
  5. Jinsup Park, 〈https://winscp.net/eng/docs/lang:ko WinSCP소개〉, 《WinSCP》, 2018-11-08