경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.
편집을 취소할 수 있습니다.
이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.
최신판 |
당신의 편집 |
1번째 줄: |
1번째 줄: |
| [[분류:네트워크]][[분류:인터넷]][[분류:프로토콜]] | | [[분류:네트워크]][[분류:인터넷]][[분류:프로토콜]] |
| ;File Transfer Protocol | | ;File Transfer Protocol |
| 파일을 주고 받기 위해 사용되는 대표적인 프로토콜 | | ;파일을 주고 받기 위해 사용되는 대표적인 프로토콜 |
|
| |
|
| * OSI 계층상에서 7Layer(애플리케이션 계층)에 위치한다. | | * OSI 계층상에서 7Layer(애플리케이션 계층)에 위치한다. |
18번째 줄: |
18번째 줄: |
| | [[파일:FTP 액티브 모드.png]] | | | [[파일:FTP 액티브 모드.png]] |
| | [[파일:FTP 패시브 모드.png]] | | | [[파일:FTP 패시브 모드.png]] |
| |-
| |
| |
| |
| # 클라이언트는 서버의 21번 포트로 접속
| |
| # 자신이 사용할 두 번째 포트를 서버 알림
| |
| # 서버는 클라이언트의 요청에 응답
| |
| # 서버의 20번 데이터 포트는 클라이언트가 알려준 두 번째 포트로의 접속 시도
| |
| # 클라이언트가 서버의 요청에 응답
| |
| |
| |
| # 클라이언트는 서버의 21번 포트로 접속
| |
| # 서버는 통신에 사용할 두 번째 포트를 클라이언트 알림
| |
| # 클라이언트는 다른 포트를 열어 서버가 알려준 포트로 접속 시도
| |
| # 서버가 클라이언트의 요청에 응답
| |
| |} | | |} |
| * 디폴트는 active 모드이며, passive 모드로의 변경은 FTP 클라이언트가 결정한다.
| |
| * active 모드의 경우 서버가 클라이언트에 접속을 해야 하는 문제가 있어 클라이언트의 inbound를 열어야 하는 문제
| |
| * passive 모드의 경우 임의의 포트가 사용되어 서버에서 여러 포트의 방화벽을 열어야 하는 문제
| |
|
| |
|
| == [[FTP 명령어]] == | | == [[FTP 명령어]] == |
| * ABOR : 현재 전송 중인 파일 전송 중단
| |
| * CWD : 작업 디렉터리 변경
| |
| * DELE : 원격지 파일 삭제
| |
| * LIST : 원격지 파일 목록
| |
| * MDTM : 파일의 수정 시간 확인
| |
| * MKD : 원격 디렉토리 생성
| |
| * MODE : 전송 모드 변경
| |
| * NLST : 원격 디렉터리 목록
| |
| * PASV : Passive모드로 변환
| |
| * PORT : data 포트 열기
| |
| * PWD : 작업 디렉토리 표시
| |
| * QUIT : 연결 종료
| |
| * RETR : 원격지 파일 가져오기
| |
| * RMD : 원격지 디렉터리 제거
| |
| * SIZE : 파일 사이즈 리턴
| |
| * STOR : 원격지 파일 저장
| |
| * USER : 사용자명 전송
| |
|
| |
|
| == [[리눅스 xferlog|FTP 전송 로그]] == | | == [[리눅스 xferlog|FTP 전송 로그]] == |
58번째 줄: |
26번째 줄: |
| == 보안 고려사항 == | | == 보안 고려사항 == |
| * [[FTP 바운스 공격|바운스 공격]] | | * [[FTP 바운스 공격|바운스 공격]] |
| * [[익명 FTP]]
| |
|
| |
|
| == [[TFTP]] == | | == [[TFTP]] == |
| 자체 디스크가 없는 OS에서 부팅에 필요한 데이터를 가져오기 위한 간소화된 FTP | | 자체 디스크가 없는 OS에서 부팅에 필요한 데이터를 가져오기 위한 간소화된 FTP |