| ftp 의 active모드와 passive모드에 대해 (글 홍석범) | 작성일 : 2003/08/26 01:18 |
| 조회수 : 19758 |
|
홍석범님이 sec-info@cert.certcc.or.kr 통해 쓴 글을 수정없이 그대로 옮깁니다. ----------------------------------------------------------------------------- Re: [질문] TCP/IP 필터링 기능에서 FTP 관련포트 날짜: Wed, 4 Sep 2002 12:56:55 +0900 보낸이: "Sukbum Hong" 받는이: 안녕하십니까? 오늘과내일의 홍석범입니다. ftp 에는 active / passive 이렇게 두 가지 모드가 존재하며 또한 각각의 모드에서는 command 또는 control 포트와 data 포트라는 두 개의 포트를 함께 사용합니다. active 모드에서는 command 포트로서 21번을, data 포트로서 20번을 사용하며 passive 모드에서는 command 포트로서 21번을, data 포트로 1024 이후의 임의의 비특권포트를 사용합니다. 따라서 active 모드로의 ftp 를 허용하려면 21번 외에 data 포트인 20번도 함께 허용하여야 하며 만약 data 포트인 20번을 허용하지 않을 경우에는 말씀하신 바와 같은 현상이 발생하게 됩니다. 또한 20번을 추가로 허용하였다 하더라도 클라이언트쪽에서 passive 모드로 ftp 를 접속할 경우 역시 data 포트가 열려있지 않으므로 같은 현상이 나타나게 될 것입니다. 추가적으로 주의할 점은 active 모드의 작동 방식입니다. 두개의 포트를 사용한다는 예외상황 외에도 아래와 같이 active 모드에서는 두번째 포트가 작동할 때 일반적인 tcp/ip 3 way handshake 방식이 아닌 다른 예외방식으로 작동하게 된다는 것입니다. 각기 모드의 작동 방식을 그림으로 보시면 이해하기가 쉬우실 것입니다. * ( ) 안의 숫자는 작동하는 포트를 뜻합니다. * 화살표 방향은 패킷의 이동방향을 뜻합니다. ## Active FTP Client(1025) ---> Server (21) Client(1025) <--- Server (21) Client(1026) <--- Server (20) Client(1026) ---> Server (20) ## Passive FTP Client(1025) ---> Server (21) Client(1025) <--- Server (21) Client(1026) ---> Server (1028) Client(1026) <--- Server (1028) 참고하시기 바랍니다. 감사합니다. ----- Original Message ----- From: webmaster To: sec-info@cert.certcc.or.kr Sent: Tuesday, September 03, 2002 11:57 AM Subject: [질문] TCP/IP 필터링 기능에서 FTP 관련포트 windows 2000 server sp2 에서 웹서버, FTP서버, 메일서버, 네임서버를 함께 사용중입니다. TCP/IP 필터링 기능을 이용해서 최소한의 포트만 허용하고자 다음과 같이 설정했습니다. TCP포트 UDP포트 IP포트 -------------------------------------- 21 허용 모두허용 6 허용 25 허용 53 허용 80 허용 110 허용 -------------------------------------- 다른 서비스는 이상이 없는데, FTP에 문제가 있습니다. FTP로 접속은 잘 되는데, 아래와 같이 에러가 나고, 파일 리스트가 안됩니다. 디렉토리 체인지, 디렉토리 만들기 등도 안됩니다. --------------- Cuted FTP에서의 로그 --- COMMAND:> LIST STATUS:> Connecting data socket... ERROR:> Failed to establish data socket 425 Can't open data connection. ERROR:> File error --------------------------------------- 해서... TCP포트를 "모두허용"으로 했더니만 에러없이 잘 됩니다. 21번 포트만 허용하면 FTP 돌리는데 문제가 없을 줄 알았는데 또 추가해야할 포트가 있는 건가요? |
|||||||||
|
|