[ FTP ] Active Mode 및 Data Channel 유지

   조회 2544   추천 0    

* Active Mode

FTP CLIENT --------------------- FTP SERVER

                       -------------------> 21 (COMMAND CHANNEL)

                       <------------------- 20 (DATA CHANNEL)


Active Mode인 경우에,

  Data Channel은
    Control Channel에서 (21번 Port ) "Port" 명령어로
      데이터 채널에 사용할 random(?) Port를 클라이언트 -> 서버 방향으로 알려 주는 것으로 알고 있습니다.

    Data Channel 연결은 Server(20) -------> Client(클라이언트가 미리 "Port" 명령어로 알려주 포트) 이렇게 접속

위와 같이 이해하고 있습니다.


질문1) 위와 같이 데이터 채널을 굳이 FTP Client에서 알려주는 형태로 만든 이유가 궁금합니다.

            컨트롤 및 데이터 채널을 SERVER에서 리슨하는 Passive Mode는 알고 있긴 합니다.

질문2) Active Mode를 사용하려면, 클라이언트 네트워크에서 방화벽을 어떻게 열어 주어야 할런지요 ?

            방화벽에서 FTP PORT 명령어를 해석(DPI)하여, 자동으로 열어 주는지요 ? 아니면.. 정해진 포트 Range가 있는지요 ?

            NAT에서 문제점이 있을거 같은데... 어떻게 이렇게 문제 없이 사용되는지 궁금합니다.

            Passive Mode에서도 random 포트를 서버에서 열어 주어야 되는데, 동일한 질문일 거 같긴 합니다

질문3) Active Mode에서 굳이 20번 포트를 지정(예약)해 두고 사용하는지 궁금합니다. 어차피 클라이언트(데이터 채널 접속 요청)로 사용하니...

질문4) FTP Data Channel은 개별 파일 전송시마다, 끊고 새롭게 여는지요 ? 아니면 Control channel처럼 계속 유지되는지요 ?



감사합니다.

짧은글 일수록 신중하게.
흑기사 2021-12
1. FTP가 나오는 인터넷 초창기는 텍스트와 바이너리를 구분해서 다뤘던 것으로 알고 있습니다. 컨트롤 포트는 텍스트로 날라다니고 전송하는 파일 종류에 따라 바이너리 모드 텍스트 모드 전환하는 명령까지 있었습니다. 바이너리는 그냥 읽어서 보내지만 텍스트 모드일 경우 라인 등 몇가지 처리가 더 있습니다.
2. 방화벽 기능에 따라 다릅니다. FTP 프로토콜을 신경 안쓰는 방화벽이면 컨트롤포트는 통상적인 방법대로 열고, 데이터포트는 서버 Soruce 20에서 Destination 아무데나 갈 수 있도록 세팅해야 합니다.
3. 프로토콜 설계가 그렇습니다.
4. 새로 엽니다.
술이 2021-12
서버가 공인IP이거나 NAT를 통과하지 않는다면 Active-Passive 문제가 되지 않습니다.
그런데 클라이언트도 NAT 하단 방화벽 구간이고 서버도 NAT를 통과하는 구간이라면 Passive를 사용하게 됩니다. 21번을 사용했을 경우는 또 문제가 안되는데 비정규 포트를 쓸경우에는 이게 또 문제가 됩니다.
FTP가 데이터채널과 세션유지 때문에 방화벽과 많이 마찰이 발생하고 이게 어느 클라이언트는 잘되고 어느 클라이언트는 끊기고 대응하기 힘듭니다. 그래서 VPN을 사용해서 NAT를 통과하지 않는게 제일 편한방법입니다. 요즘은 FTP포트 외부로 쉽게 안열어줍니다. 열어준다고 해도 허용된 IP만 열어주고 SFTP를 써야하거나 FTPS를 강제적으로 써야하는게 지금의 보안 이슈입니다. 일반 FTP는 패스워드 너무 쉽게 털려서 사용중지 권고사항중 하나입니다.
     
FTPS를 써도.. 데이터 채널은 별도로 열리지 않는지요 ?


QnA
제목Page 614/5707
2015-12   1670647   백메가
2014-05   5135748   정은준1
2023-03   2484   남경림
2020-08   2484   새로운차원
2023-09   2484   이유종
2023-10   2484   막내의하루
2022-08   2484   달콤한잡초
2023-04   2485   범이님
2020-05   2485   lovin09
2020-04   2485   오징어따콩
2020-08   2485   큐님
2021-10   2485   컴박
2020-09   2485   nel78
2020-04   2485   송진현
2020-07   2485   을지문덕
2019-08   2485   gowork
2021-12   2485   ASTER1SK
2019-04   2485   그냥중
2019-12   2486   땅부자
2021-03   2486   keros
2021-06   2486   암흑루피
2021-04   2486   VSPress