SFTP 와 FTPS 차이점 / 누가 더 빠른가, FTP 사용하면 안되나?

FTP“를 사용하다 보면 SFTP 와 FTPS 라는 단어를 자연스럽게 듣게 됩니다. 비스무리해 보이면서 앞뒤 배열이 살짝 다른 이 두 개는 기존의 FTP와 무엇이 다를 까요?

오늘은 SFTP 와 FTPS 두 가지 프로토콜을 비교해보고 기존 FTP와 더불어 어떤 것을 사용하는 것이 우리에게 유리한지 알아보도록 하겠습니다.

“FTP”의 역사

우선 SFTP 와 FTPS 를 이해하기 위해서는 FTP의 역사를 간략하게 알아 두는 것이 좋습니다.

FTP는 1971년도 TCP/IP 프로토콜을 기반으로 서버와 클라이언트 간 파일 전송을 하기 위해 만들어 졌습니다. 역사가 상당히 오래 되었지요.

FTP 프로토콜 개발 당시에는 인터넷이 대중화 되기 전이라 보안에 대한 고민이 없었습니다. 때문에 FTP 프로토콜은 암호화 되지 않은 평문으로 통신 합니다.

그래서 만약 FTP로 파일을 주고 받고 있는데, 누군가 네트워크 패킷을 훔쳐본다면 주고 받는 파일의 내용은 물론이거니와 FTP 접속하기 위해 사용되는 아이디와 패스워드까지도 볼 수 있습니다.

그러다가 90년도 들어 많은 사람들이 웹을 사용하기 시작하면서 데이터 보안과 개인정보 문제가 대두되기 시작하였습니다.

그렇게 기존 FTP 파일 전송 기능에 보안적인 측면을 고려하여 개발된 것이 SFTP 와 FTPS 입니다.

SFTP 와 FTPS 차이점은 무엇입니까?

두 프로토콜 모두 파일 전송 함에 있어 보안성을 강화 한다는 목적은 같습니다. 하지만 SFTP 와 FTPS는 완전히 다른 방식으로 동작합니다.

SFTP

SFTP가 FTP라는 이름을 달고 있지만 FTP 관련 프로토콜이 아닙니다. SFTP는 기존 FTP 와는 전 혀 다른 SSH의 데이터 전송을 위한 확장 프로토콜 입니다.

참고로 SSH는 텔넷의 보안 버전 입니다. SSH(Secure Shell)는 TCP 보안 채널(터널링)을 형성하여, 데이터의 안전한 전송을 가능하게 하는 프로토콜 입니다.

때문에 포트 갯수에도 차이가 있는데요. 기존의 FTP는 20번과 21번 최소 2개의 포트를 사용하는 반면 SFTP는 22번 하나의 포트만 사용합니다.

FTPS

FTPS는 기존 FTP를 계승 한 방식이라 생각하시면 됩니다. 기존의 FTP 방식에 전송 계층 보안(TLS)과 보안 소켓 계층(SSL) 암호화 프로토콜이 추가되었습니다.

마치 HTTP 와 HTTPS 와의 관계를 보는 것 같습니다. 때문에 FTPS 로 통신하기 위해서는 HTTPS 와 같이 공개키와 인증서가 필요합니다.

FTPS는 보안적인 요소를 제외하면 기존 FTP와 비슷하기 때문에 뛰어난 호환성을 가지고 있습니다. 최소 두 개의 포트를 사용해야 한다는 점과 이로 인해 별도의 방화벽 작업을 해줘야 하는 것도 기존 FTP 와 같습니다.

FTPS는 명시적(Explicit) 연결과 묵시적(Implicit) 연결이 있으며 묵시적 연결은 990번 포트를 이용한 초창기 형태의 FTPS이고 현재는 좀 더 유연한 연결 형태인 명시적 FTPS가 표준으로 사용되고 있습니다.

명시적 FTPS(FTPES)는 비보안 표준 FTP 방식과 똑같은 21번 포트를 사용하여 사용자가 보안 수준을 정할 수 있습니다.

자세히 알고 싶으신 분은 아래의 링크를 참고해 주세요.
링크 – FTPES 와 FTPS 차이점 / 명시적(Explicit), 묵시적(Implicit) 연결

SFTP 랑 FTPS 어느 것을 선택해야 하나?

둘 다 보안이라는 목적이 같은 만큼, 가장 중요한 보안 수준은 FTPS와 SFTP 간에 차이가 없습니다. 둘 다 강력한 인증 옵션으로 파일을 전송에 있어 높은 신뢰성을 보여줍니다.

개발자들 측면에서는 방화벽과 함께 사용하기 더 쉬운 SFTP를 선호합니다. SFTP에서는 방화벽에서 하나의 포트 번호만 열어서 모든 통신에 사용하면 되는 반면, FTPS에서는 여러 포트 번호를 사용해야 합니다.

속도 측면에서는 SFTP 보다 FTPS 가 더 뛰어납니다. FTPS는 명령 및 데이터 채널을 모두 암호화하거나 데이터 채널만 선택적으로 암호화 할 수 있게 설계되어 있습니다. 명령 채널과 데이터 채널을 별도로 연결하면 FTPS가 좀 더 높은 데이터 전송 속도를 낼 수 있습니다.

실제로 같은 환경이라면 FTPS 가 SFTP 보다 약 10~15% 정도 더 빠른 속도를 보여줍니다.

비 보안 “FTP”는 이제 망했나요?

일반 FTP는 보안적인 측면에서 폭망입니다. 하지만 비보안 FTP는 빠른 데이터 전송만을 위해 고안된 프로토콜이기 때문에 SFTP 나 FTPS 에서 꿈꿀 수 없는 엄청나게 빠른 속도를 자랑합니다.

서버와 클라이언트간 네트워크 구성이 기가랜 구성이 되어있다 하더라도 일반적으로 SFTP나 FTPS 둘 다 10MB 이상의 속도를 내기 쉽지 않습니다.

하지만 일반 FTP의 경우 기가랜 환경에서 네트워크 환경만 잘 받쳐준다면 유선 무선 상관없이 80~90MB 이상 어마어마한 속도를 뽑아 냅니다.

기가랜 환경에서 서버 사양을 높게 하고 암호화 복잡도를 낮게 설정하면 보다 높은 성능의 보안FTP를 이용할 수는 있습니다.

하지만 아무리 튜닝을 한다 하더라도 일반 FTP 속도를 따라 갈 순 없습니다. 때문에 일반 FTP도 버릴건 못 됩니다.

파일 크기가 몇십 기가씩이나 하는 미디어 파일의 경우 일반 FTP를 통해서 주고 받아 보세요.

물론 일반 FTP가 보안에 취약한 만큼 아래와 같은 조건이 충족될 때만 사용하셔야 합니다.

  1. FTP 아이디와 패스워드가 털려도 상관없다. (임시 비밀번호)
  2. FTP서버에 접속했을 때 시스템 폴더 접근 권한이 없다.
  3. 주고 받는 파일과 원격지 서버에 개인 정보가 없다.
  4. 원격지 서버에 있는 파일들이 털려도 상관없다.
  5. 원격지 서버에 파일 실행 권한이 없다.

or (또는)

  1. 외부 사람이 접근할 수 없는 내부 네트워크에서의 운용이다 (192.168.x.x)

댓글 남기기