etc/[Window} FTP

FTP 서버

코딩무민 2020. 12. 11. 15:12
반응형

FTP 서버란?

  • 인터넷 사용시에 FTP는 telnet과 함께 가장 많이 사용되는 접속도구라고 할 수 있습니다.
    • telnet : 원격지의 서버(컴퓨터)를 마치 직접 콘솔(console)앞에서 사용하는 것처럼 작업할 수 있도록 해주는 도구
    • FTP : 원격지의 서버(컴퓨터)에 필요한 파일을 올리기 위한 도구입니다.

1) FTP란?

  • File Transfer Protocol의 약자
  • 인터넷 망으로 연결되어 있는 멀리 떨어져 있는 서버로 파일을 올리거나 가져오기 위해 필요한 일종의 프로토콜
  • 인터넷상에서 파일을 송/수신하려면 반드시 필요함
  • FTP 프로그램 : FTP 프로토콜을 내장하고 있는 파일 송수신 전용 소프트웨어
    • ex) 알FTP, ws_FTP, cute_FTP 등

FTP (File Transfer Protocol)

  • 인터넷상의 컴퓨터들 간에 파일을 교환하기 위한 표준 프로토콜
  • IETF RFC 959번에 정의
  • 두 개의 포트 사용(프로토콜 TCP 20, 21번)
    • 사용자 입장에서는 원하는 파일의 전송을 위해 간단한 명령어를 통하여 FTP를 사용한다.
    • Control Port를 통해 Telnet Session를 협상한다

제어 연결(Control Connection)

  • 클라이언트에서 서버로의 명령과 서버의 응답을 위한 연결 한다.
  • 21번 포트 사용한다.
  • 명령 또는 응답 형태의 제어정보를 전송한다
  • 전체 FTP세션 동안 계속 연결 상태를 유지한다.

데이터 연결(Data Connection)

  • 파일이 전송될 때 생성되는 데이터 연결한다.
  • 20번 혹은 1024 이후 포트 사용한다.
  • 각각의 파일 전송 때마다 설정되면 전송이 완료되면 폐쇄한다.

2) FTP 두 가지 접속 방식

Active Mode

Active 모드의 작동 방식

①   1번 클라이언트의 서버의 21번 포트로 접속 후 클라이언트가 사용할 두 번째 포트를 서버에 알려준다.

②   2번 서버는 이에 대해 OK로 응답한다.

③   3번 서버의 20번 포트는 클라이언트가 알려준 두 번째 포트로 접속을 시도한다.

④   4번 마지막으로 클라이언트가 OK로 응답한다.

 

Active 모드의 문제점

  • 3번째 서버가 클라이언트에 접속을 시도할 경우방화벽 또는 공유기 문제가 발생한다.
  • 이런 경우 FTP 접속은 되지만 이후 데이터 목록을 받아오지 못하여 에러가 발생한다.

Passive Mode

Passive 모드의 작동 방식

①   1번 먼저 클라이언트가 Command 포트로 접속을 시도한다.

②   2번 서버에서는 서버가 사용할 두 번째 포트를 알려준다.

③   3번 클라이언트는 다른 포트를 열어 서버가 알려준 이 포트로 접속을 시도한다.

④   4번 서버는 OK로 응답한다.

⑤   Passive 모드에서는 두 번째 data포트로서 active 모드가 사용했던 20번을 사용하지 않고 대신 1024 이후의 임의의 비 특권 포트를 사용한다.

 

Passive 모드의 문제점

  • 서버의 비 특권 포트(1024~65535)를 방화벽에서 모두 열어 두어야 하는 문제점이 발생한다.

  • passive mode로 접속 시 사용할 수 있는 포트를 제한 설정할 수 있는 기능을 지원한다.

참조문헌

FTP (File Transfer Protocol) 란?

반응형