본문 바로가기
소프트웨어 공학

FTP(File Transfer Protocol, 파일 전송 프로토콜)에 대한 이해

by iwuooh 2021. 12. 20.

FTP(File Transfer Protocol, 파일 전송 프로토콜)의 개념

FTP는 인터넷을 통해서 서버와 클라이언트 사이의 파일을 전송하기 위한 TCP/IP 프로토콜과 이를 가능하게 하는 프로그램을 모두 일컫는다. TCP/IP는 컴퓨터가 인터넷에서 상호 정보 교환을 하는데 쓰이는 통신규약(프로토콜)의 모음인데 그중에서도 TCP와 IP가 가장 많이 쓰인다. FTP는 TCP/IP 프로토콜의 응용계층에 속하며 오래된 역사를 갖고 있으면 현재까지도 사용된다. FTP를 사용하면 사용자가 원하는 데이터나 프로그램을 무료나 저렴한 가격에 살 수 있고, 용량이 큰 파일도 빠른 속도로 송수신할 수 있다. 파일을 송수신할 때는 원격 호스팅 컴퓨터를 이용할 수 있는 정당한 자격조건이 요구되는데 이는 사용자 ID와 패스워드로, 이 두 가지를 알고 있어야 원하는 원격 호스트 컴퓨터에 접속할 수 있다. 그러나 패스워드가 없어도 접속할 수 있는 공개 FTP호스트가 있는데 이를 Anonymous(익명) FTP라고 하고 이러한 Anonymous FTP는 전 세계적으로 수천 개에 이른다. 사용자로 등록한 ID 없이 anonymous라는 ID와 패스워드로 원격 호스트 컴퓨터에 접속하여 원하는 파일을 송수신할 수 있다. 보안상의 이유로 anonymous 계정으로 접속한 사용자는 해당 서버에 파일을 올리는 작업은 제한된다.

FTP(File Transfer Protocol, 파일 전송 프로토콜)의 동작원리

FTP의 동작원리는 비교적 간단한데, FTP 서비스를 제공하는 서버와 해당 서버에 접속하는 클라이언트 사이에 두 개의 연결이 이루어진다. 네트워크 21번 포트는 데이터의 전송을 제어하기 위한 신호를 송수신하기 위한 것이고, 네트워크 20번 포트는 실제 파일의 전송에 사용된다. 네트워크 포트란 데이터가 네트워크를 통해 이동하는 통로를 의미한다. 따라서 사용자가 FTP 서버에 접속할 때 입력하는 계정의 정보나 파일 전송 명령 등은 데이터 제어용 연결(네트워크 21번 포트)에서 이루어지고 실제 파일의 송수신 작업은 데이터 전송 연결(네트워크 20번 포트)을 통해 이루어진다. FTP 서버에 접속한 클라이언트는 다수의 파일을 연속적으로 송수신하기 위해 FTP 서버와 끊임없는 메시지를 서로 전송함으로써 연결 상태를 유지한다.

FTP(File Transfer Protocol, 파일 전송 프로토콜)의 장단점

FTP는 파일의 송수신만을 위해 고안된 프로토콜이기 때문에 작동 방식이 아주 직관적이고 단순하며 그만큼 사용하는 방법도 간단하다. WWW 방식보다 파일을 빠르고 한꺼번에 주고받을 수 있다는 것이 FTP의 큰 장점이다. 다만 빠른 송수신을 목적으로 하기 때문에 WWW는 내려받으면서 재생이 가능하다는 점과 비교했을 때 FTP는 보통 콘텐츠를 모두 내려받은 후에만 해당 파일의 내용을 확인할 수 있다는 단점이 있다. 또한 기본적으로 명령어를 기반으로 하는 서비스기 때문에 별도의 FTP 클라이언트 프로그램을 사용하지 않는 경우에는 조작이 복잡하고 어려울 수 있다. 그리고 FTP는 보안 프로토콜로 계획되고 설계된 것이 아니라서 무차별 대입 공격이나 패킷 가로채기, 스푸핑 공격 등의 수많은 보안 취약점이 존재한다. FTP는 로컬의 사용자가 서버의 파일을 수정하거나 삭제할 수 있기 때문에 전송하기 전에 해당 사용자의 이름과 암호를 묻는 인증과정이 꼭 필요하다. 보통은 암호를 한 번만 묻는 인증 방법을 이용하거나 보안을 더 철저하게 하기 위해선 SFTP 등 다른 방법을 사용하여 파일을 송수신한다. SFTP는 기존의 FTP 연결에 보안(Secure)을 강화한 것으로 클라이언트와 서버가 연결되어 서로 데이터를 주고받을 때 해당 계정 정보를 암호화함으로써 앞서 언급한 해킹이나 보안상의 문제로부터 벗어날 수 있다. 접속하는 방식은 FTP와 동일하지만, 신호 제어용 네트워크 포트를 21번이 아닌 22번을 사용한다는 점과, FTP 서버에서 이를 지원해야만 사용할 수 있다는 점에서 차이가 있다.

댓글