의식여행

[FTP] active(능동) vs passive(수동) Mode 차이점 및 비 본문

IT(리눅스&보안&개발)/리눅스-CentOS

[FTP] active(능동) vs passive(수동) Mode 차이점 및 비

의식여행중 2018. 9. 3. 11:13

안녕하세요.
이번 포스팅은 FTP 동작모드의 차이점에 대해서 이야기 하겠습니다.

FTP란?

FTP(File Transfer Protocol)는 TCP/IP 기반으로 동작하며 "클라이언트" 와 "서버" 상호간 파일전송을 위한 목적으로 사용됩니다.

FTP는 다른 프로토콜들과 달리 2개의 Port를 기본으로 사용합니다.
-제어채널 : 사용자 인증 및 명령입력
-데이터채널 : 실제 파일전송

Active Mode

[Server]
-Control Port : 21
-Data Port : 20

[Client]
-Connection Port : 5001
-Data Port : 5000

1) Client(5001) → Server(21) : 사용자인증 및 명령입력
2. Client(5000) → Server(20) : Server측에 데이터 전송 포트를 알림
2) Server(20) → Client(5000) : 실직적인 데이터 전송

장점) 서버에서 클라이언트로 접속하는 구조로 보안위험↓
서버측 ACL 관리 용이(20/21)

단점) FTP 구조를 잘 모르는 클라이언트의 경우, 정상접속 불가(방화벽, ACL..등)

※ 위 단점은 Passive Mode로 변경 할 경우 해결 가능. ※


Passive Mode

[Server]
-Control Port : 21
-Data Port : xxxx(1024~65535)

[Client]
-Connection Port : 5001
-Data Port : 5000

1) Client(5001) → Server(21) : 사용자인증 및 명령입력
2. Server(xxxx) → Client(20) : Client측에 데이터 전송 포트를 알림
2) Client (5000)→ Server(xxxx) : 실직적인 데이터 전송

장점) 클라이언트에서 서버로 접속하는 구조로 사용 용이

단점) Passive Mode에 사용되는 Port에 대한 ACL관리 필요(Range)
클라이언트에서 서버로 접속하는 구조로 보안위험↑


감사합니다.

Comments