OS/Linux

Linux | FTP_1_개요

만두는정말맛있어 2022. 10. 6. 18:19

FTP (File Transfer Protocol) : TCP/IP 네트워크(인터넷) 상의 장치가 파일을 전송할 때 사용하는 규칙


1. 원리

- FTP는 클라이언트-서버 프로토콜이므로 클라이언트가 요청 시 서버가 파일을 제공함 -> 두 개의 기본 채널이 필요함
1) Command(명령) 채널: 명령을 시작해 어떤 파일에 액세스할 것인지 등과 같은 기본 정보를 전달함
2) Data(전송) 채널: 두 장치 간에 파일 데이터를 전송함
- 연결을 설정하려면 사용자가 FTP 서버 로그인 정보를 제공해야 하는데, 일반적으로는 21번 포트를 기본 통신 모드로 사용함.          '포트'란 네트워크를 통한 정보 트랜잭션을 식별하는 데 사용되는 번호를 말함.


2. 연결 모드

 1) Active mode : 클라리언트가 data 전송 포트 결정, 클라이언트의 포트가 모두 열려있어야 함
 - 명령 포트 : 21번
 - 전송 포트 : 20번
 - 통신 과정 : 클라이언트가 21번 포트에 접속 -> 클라이언트가 data 포트로 사용할 포트 알려줌 -> 서버 응답 -> 서버의 20번 포트 가 클라이언트가 알려준 포트로 접속 시도 -> 클라이언트가 서버의 요청에 응답
  => 클라이언트가 서버에 접속하는 것이 아니라 서버가 클라이언트에 접속하는 방식
  => 서버가 아닌 클라이언트가 방화벽 등의 보안을 모두 해제해야 하는 불편함이 있음
  => 주로 Passive mode 사용

 

2) Passive mode
 - 지정하지 않을 경우 1024~65535번 사이의 임의의 포트 사용
 - 통신 과정 : 클라이언트가 커맨드 포트에 접속 -> 서버가 클라이언트에게 data 포트로 사용할 포트 알려줌 -> 클라이언트가 다른 포트를 열어 서버의 data 포트로 접속 시도 -> 서버가 클라이언트의 요청에 응답

 

 

 

 

728x90