FTP port: 파일 전송에 어떤 포트번호를 사용할까요?

FTP와 사용되는 포트에 대해 정의, 사용 방법, 위험요소, 회피 방법에 대해 설명합니다.

선박이 화물을 싣는 것과 같은 "포트"가 아니라 컴퓨터가 마주하는 네트워크 트래픽을 정리하는 데 도움이 되는 보다 멋지고, 공돌이스러운 가상 "포트"에 대해 이 기사에서 살펴 보겠습니다.

포트란?

죄송합니다. 화물선을 얘기하는게 아닙니다. Photo by Alex Duffy on Unsplash

화물선과 달리 컴퓨팅 세계에서 포트는 컴퓨터와 서버의 연결 및 데이터 전송을 가능하게 하는 가상 통신의 엔드포인트로서 데이터를 올바른 방향으로 안내합니다. 인터넷 등과 같이 네트워크를 이용하여 통신을 행하는 어플리케이션이나 프로세스에는 모두 컴퓨터 상에서 네트워크를 이용하는 어플리케이션을 식별하기 위한 포트 번호가 표준적으로 설정되어 있습니다.

포트 번호는 주로 TCP (Transmission Control Protocol; 전송 제어 프로토콜) 또는 UDP (User Datagram Protocol; 사용자 데이터그램 프로토콜)기반의 네트워크에서 사용되며 각 포트 번호는 특정 서비스를 나타내며 각 호스트는 하나의 IP주소와 관련된 65,535개의 포트를 가질 수 있습니다. 응용 프로그램에 따라 포트 번호를 변경하는 경우도 있습니다만, Telnet은 23번 포트, HTTP의 80번 포트, SMTP의 25번 포트, FTP의 21번 포트와 같은 포트는 매우 일반적이라 통상적으로 변경하지 않습니다.

FTP란?

FTP (파일 전송 프로토콜)는 1970년대 초에 등장한 컴퓨터 간의 파일 전송을 목적으로 한 통신 프로토콜입니다. 특히 클라이언트와 서버 간의 네트워크에서 파일을 직접 전송할 수 있습니다.

FTP 포트

FTP는 정보 전송을 위해 명령과 응답에 사용하는 '정보 제어 포트'와 파일 업로드 및 다운로드에 사용하는 '데이터 포트'라는 두 개의 개별 채널을 이용합니다. 디폴트로 제어 포트는 TCP의 21번 포트를 쓰지만, 데이터 포트는 좀 복잡해요…

클라이언트에서 FTP 포트 연결을 수행하려면 사용자는 FTP 클라이언트의 인증 필드에 "서버 이름"과 "로그인 인증"도 입력해야 합니다. 그런 다음 FTP 서버의 21 번 포트에 FTP 연결이 설정됩니다.

그런 다음 FTP 세션 모드에 따라 데이터 전송에는 이외의 다른 포트들간의 연결로 활용됩니다. 액티브 모드에서 서버는 20번 포트에서 클라이언트 제어 포트 +1번의 연결을 개방합니다. 그러나 액티브 모드는 방화벽과 호환되지 않으며 NAT (네트워크 주소 변환) 너머의 클라이언트에 대한 액세스 요구 사항이 있기 때문에 거의 사용되지 않습니다.

패시브 모드를 사용하는 경우 클라이언트는 데이터용으로 어떤 서버 포트에 연결할지 묻고 해당 포트에 다른 연결을 생성하지만 패시브 모드에서는 서버의 데이터 포트가 무작위로 선정됩니다.

리스크

앞서 언급했듯이 FTP는 네트워크의 보안을 신경쓰지 않았던 시절에 설계되었습니다. 이것은 FTP가 익명 액세스를 허용하는 이유로 파일을 얻기 전에 사용자 인증이 필요하지 않거나 FTP 프로토콜을 전송할 때 아무 것도 암호화하지 않은 지를 설명합니다.

또한, 구식 FTP는 이중 채널이 발명되기 전에 만들어졌기 때문에 위에서 설명한 대로 포트를 2개 이용합니다. 그러므로 데이터 채널의 개방을 가능하게 하기 위해서는 방화벽 규칙이나 NAT의 특수한 방법으로의 설정이 필요하고, 사용하는 네트워크의 보안을 강화하기가 어렵습니다.

보다 안전한 방법 선택하기

오늘날 웹에서 정보를 전송할 때 보안은 더 이상 가볍게 보아서는 안됩니다. 고객 정보, 재무 정보, EDI(전자 데이터 교환) 문서 등 모든 종류의 데이터가 포함된 파일은 여러분의 중요한 자산이므로 사이버 범죄로부터 보호되어야 합니다. 이를 위해 SFTP가 있습니다.

제어 및 데이터 전송 모두에 단일 포트 연결 (디폴트로 22번 포트)이 사용되는 SFTP는 클라이언트와 서버 간의 통신을 암호화하여 스니핑 및 중간자 공격으로부터 데이터 및 인증처리를 보호하도록 만들어졌습니다. 또한 암호화뿐만 아니라 인증 처리도 SSH (보안 쉘)에 의존하며 개인 키와 공개 키, 사용자 및 암호 인증 옵션을 제공합니다.

SFTP와 SFTP와 FTP 프로토콜의 차이점은 여기를 참조하십시오.

보안성과 안정성을 극대화한 SFTP To Go
SFTP To Go는 관리형 SFTP/FTPS/S3를 서비스 형태로 제공하며, 최고의 안정성, 보안, 가용성, 1분 만에 설치가 가능하며 모든 규모의 기업에 적합합니다.
지금 바로 SFTP To Go를 사용해 보세요!