FTP를 이용한 통신
- FTP의 통신 경로는 암호화되어있지 않음
- 이런 문제를 보완하기 위해 FTP대신 SSH를 이용한 SCP (Secure Copy)나 SFTP (SSH File Transfer Protocol), SSL를 이용한 FTPS (FTP Over SSL)를 사용.
액티브 모드와 패시브 모드
- FTP 서버는 두개의 포트를 사용함. FTP 클라이언트가 FTP 서버에 접속할 때는 21번 포트를 사용. (Command Port - 명령포트)

액티브 모드
- FTP서버의 21번 포트(명령 포트)로 접속이 되면, 클라이언트는 서버에서 PORT 5101과 같이 명령을 날려 서버에게 데이터 통신을 할 포트를 알림 (1024 이상의 포트)
- 클라이언트는 5101번 포트를 LISTEN 하고있으며, 서버가 클라이언트의 5101번 포트로 접속을 함
- 이렇게 데이터포트 연결까지 수립되면 데이터를 주고 받는데 사용함
- 클라이언트가 방화벽 등에 의해 1024번 포트가 막혀있다면 데이터 통신을 할수 없음
패시브 모드
- FTP서버의 21번 포트(명령 포트)로 접속이 되면, 클라이언트는 서버에게 PASV 명령을 날려 패시브로 동작할 것임을 서버에게 알림
- 그러면 서버는 클라이언트에게 데이터통신에 사용할 포트를 알려줌
- 클라이언트는 서버가 열려준 포트로 접속을 하여 데이터를 주고 받는데 사용함