본문 바로가기
NETWORK

FTP Protocol(File Transfer Protocol) / 응용 계층 프로토콜

by 정리1023 2023. 10. 7.

 

-인터넷에서 서버와 클라이언트 간의 파일 송수신 만을 위해 만들어진 프로토콜 (동작방식이 단순하고 직관적 )
-FTP는 암호화기능이 없어서 보안에 취약 / 보안을 강화된 파일 전송프로토콜로는 FTPS, SFTP가 있음
-2개의 연결생성 / PORT 21 = 데이터 전송 제어, PORT 20 = 실제 데이터 전송
-능동모드 / 수동모드 2가지 모드 지원


 

 

 

1.클라이언트는 서버의 21번 포트로 접근하여 로그인 요청
명령을 송수신할 제어 채널  생성
데이터 전송에 사용할 두번째 포트를 서버에 알림


2. 서버는 Ack로 응답


3. 20번 포트로 클라이언트가 알려준 두번째 포트로 데이터 전송 채널 생성


4. 클라이언트가 Ack로 응답

 

 


3단계에서 문제점 발생

서버가 클라이언트에 접속을 시도하는 방식이기에 발생하는 문제점

클라이언트에 설치된 방화벽이 외부접속을 허용하지 않음
FTP를 제대로 인지하지 못하는 공유기

FTP접속은 되지만 파일전송을 받을 수 없는 문제 발생


1.클라이언트는 서버의 21번 포트로 접근하여 로그인 요청
     명령을 송수신할 제어 채널  생성
     Passive Mode로 연결하기 위해 PASV명령어를 전송

 

2. 서버는 서버가 사용할 PORT를 알려줌  (1024 ~ 65535 사이의임의의 비 특권 포트를 사용)
1-1023 well known 포트 사용처가 정해짐


3. 클라이언트는 서버가 알려준 PORT로 접속하여 데이터 전송 채널 생성


4. 서버가 Ack로 응답

 

 


능동모드는 데이터전송채널을 서버가 클라이언트로 접속
수동모드는 데이터전송채널을 클라이언트가 서버로 접속

'NETWORK' 카테고리의 다른 글

원격접속, 웹사이트 / 응용 계층 프로토콜  (0) 2023.10.08
이메일 관련 / 응용 계층 프로토콜  (0) 2023.10.08
7.APPLICATION LAYER / 4.응용 계층  (0) 2023.09.27
OSI 7계층  (0) 2023.09.26
악성코드 / 정탐 오탐  (0) 2023.08.15