- File Transfer Protocol
파일을 주고 받기 위해 사용되는 대표적인 프로토콜
- OSI 계층상에서 7Layer(애플리케이션 계층)에 위치한다.
사용 포트
- 제어 포트: 21번
- 데이터 전송용 포트
- 액티브 모드인 경우: 20번
- 패시브 모드인 경우: 1024번 이상의 임의의 포트
두가지 모드
- 디폴트는 active 모드이며, passive 모드로의 변경은 FTP 클라이언트가 결정한다.
- active 모드의 경우 서버가 클라이언트에 접속을 해야 하는 문제가 있어 클라이언트의 inbound를 열어야 하는 문제
- passive 모드의 경우 임의의 포트가 사용되어 서버에서 여러 포트의 방화벽을 열어야 하는 문제
FTP 명령어
- ABOR : 현재 전송 중인 파일 전송 중단
- CWD : 작업 디렉터리 변경
- DELE : 원격지 파일 삭제
- LIST : 원격지 파일 목록
- MDTM : 파일의 수정 시간 확인
- MKD : 원격 디렉토리 생성
- MODE : 전송 모드 변경
- NLST : 원격 디렉터리 목록
- PASV : Passive모드로 변환
- PORT : data 포트 열기
- PWD : 작업 디렉토리 표시
- QUIT : 연결 종료
- RETR : 원격지 파일 가져오기
- RMD : 원격지 디렉터리 제거
- SIZE : 파일 사이즈 리턴
- STOR : 원격지 파일 저장
- USER : 사용자명 전송
FTP 전송 로그
보안 고려사항
TFTP
자체 디스크가 없는 OS에서 부팅에 필요한 데이터를 가져오기 위한 간소화된 FTP