윈도2003 과 IIS와 IIS의 FTP가 돌고 있는 중에서
추가로 IIS이하 FTP서버를 등록하여(포트변경) 돌려볼려고 사용자를 등록하고, 홈디렉토리와 홈디렉토리의 읽기/쓰기 권한을 주고
일단 로컬에서 다음과 같이 테스트 했는데 정상이었습니다.
========================================================================
C:\>ftp
ftp> open 127.0.0.1 2121
Connected to 127.0.0.1.
220 Microsoft FTP Service
User (127.0.0.1:(none)): user
331 Password required for user.
Password:
230 User user logged in.
ftp> dir
200 PORT command successful.
150 Opening ASCII mode data connection for /bin/ls.
12-02-13 08:59AM 53389 access_log.20131201
12-03-13 09:00AM 179843 access_log.20131202
12-04-13 08:58AM 281769 access_log.20131203
05-23-14 05:01PM 16595 access_log.20140523
05-24-14 05:59PM 2070 access_log.20140524
05-26-14 08:48AM 1905 access_log.20140525
05-27-14 08:29AM 2322 access_log.20140526
04-14-14 08:02AM 1203389 error.log
04-14-14 08:02AM 7 httpd.pid
11-01-10 05:31PM 4501 install.log
09-13-12 11:12AM 5692928 ssl_request.log
226 Transfer complete.
ftp: 9808 bytes received in 0.16Seconds 62.87Kbytes/sec.
ftp>
======================================================================
그런데, 원격(실제로 외부에서 FTP작업을 할 컴터)에서 연결을 하니 로긴은 되는데 dir을 치면 먹통이 됩니다.
C:\>ftp
ftp> open xxx.xxx.xxx.xxx 2121
Connected to xxx.xxx.xxx.xxx.
220 Microsoft FTP Service
User (xxx.xxx.xxx.xxx:(none)): user
331 Password required for user.
Password:
230 User user logged in.
ftp> dir
200 PORT command successful.
150 Opening ASCII mode data connection for /bin/ls.
--- 먹통(디렉토리의 화일리스트가 출력안됨) -----
왜 이런 문제가 발생할까요?
그런데 특이한것은 기존에 등록되어있던 iis의 ftp에 administrator가 접속하면 외부 pc에서도 접속도 잘되고, dir 리스트도 잘
나올뿐만 아니라, 위에 문제된 계정과 FTP도 윈도우의 iis-ftp를 이용하지 않고 ftp를 운영할 서버에 cesarftp 또는 kebiftp같은 ftp서버
를 설치해두고 원격PC에서 filezilla-ftp 클라이언트를 이용하여 붙으면 아무 문제 없이 잘됩니다.
뭐가 문제일까요?
±×¸®°í Æнúê´Â Ä¿¸Çµå ¸í·ÉÀ» Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.
open [siteaddress.com]
[userid]
[password]
quote pasv
binary
dir
À» ÇغÁµµ ¾ÈµÇ´Â±º¿ä.
±âÁ¸ÀÇ ÀߵǴ ftp´Â ÆÐ½Ãºê ¸ðµå¿¡¼ »ç¿ëÇÏ´Â Æ÷Æ®¸¦ ÁöÁ¤ÇÏ°í, ¹æȺ®¿¡¼ Æ÷Æ®¸¦ ¿¾ú±â ¶§¹® ÀÔ´Ï´Ù.
¼¹öÂÊÀ̳ª Ŭ¶óÀ̾ðÆ®ÂÊÀ̳ª ¹æȺ®¿¡¼ »ç¿ë Æ÷Æ®¸¦ openÇÏ¸é »ç¿ë °¡´É ÇÕ´Ï´Ù.