'ftp 설정'에 해당되는 글 2건

  1. 2012.03.20 Windows Server IIS FTP 패시브모드
  2. 2012.03.07 Windows 2008 R2 FTP Fassive 설정 2
시스템/Windows2012. 3. 20. 23:14

IIS FTP 패시브모드 포트 범위 설정

FTP 패시브모드 설정에 대해 정리해놓은 내용입니다. FTP 설정 시 기본으로 해주면 편합니다.

</STYLE>IIS기반 FTP 서비스는 패시브모드(Passive-mode)와 액티브모드(Active-mode) 2가지를 지원합니다.

Active-mode 는 클라이언트 기반 접속이여서 웹서버쪽에 20,21 번이 열린 FTP를 접속시 클라이언트에서는 포트가 랜덤포트를 이용하나 서버 포트(예:21)는 변함이 없습니다. 클라이언트는 서버쪽에 port 명령어를 보내게 됩니다.

Passive-mode 는 서버쪽 21번 포트로 접속시, 클라이언트의 랜덤포트가 아니라 서버쪽 랜덤포트를 이용하게 됩니다. 서버는 클라언트에게 pasv 명령어를 보내며, 클라이언트는 승인하게 되고 연결이 이루어 집니다.

문제는, 패시브모드의 경우 서버쪽에 1024 에서 65535 포트 사이를 랜덤하게 할당하며, 네트워크 세션이 있을때마다 신규포트를 이용하게 됩니다.
이때, 서버쪽에 방화벽을 운영하거나 대량접속서비스가 운영중일때는 네트워크 자원이 부족하게 되어 접속장애가 있을수 있습니다. 예를들면 패시브모드시 어떤 랜덤포트를 사용하게 되는지 알수가 없으므로 방화벽에서 차단이 되는 경우가 종종 발생합니다.

패시브모드 에서의 서버쪽 랜덤 포트범위를 조정하므로써, 이를 해결할 수 있습니다.

Windows 2000 Server 및 Windows Server 2003 모두  PassivePortRange 값을 이용하여 조정이 가능합니다.


Windows Server 2003 의 경우

1. 메타베이스를 수정하는 방법입니다.
  (메타베이스를 수정할려면, IIS MMC에서 메타베이스 직접수정 허용 설정이 되어 있어야 합니다.)
   C:\WINDOWS\system32\inetsrv\metabase.xml
  <IISFtpService> 아래에
  PassivePortRange="##### - #####"
  추가 - 저장 후 - IIS 재시작


2. ADSUTIL을 이용하는 방법입니다.
   Adsutil.vbs set /MSFTPSVC/PassivePortRange "5500-5700"


Windows 2000 Server 의 경우는 레지스트리 값을 추가해야 합니다.

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Msftpsvc\Parameters\
에서 REG_SZ 타입의 PassivePortRange 값이름을 추가합니다.

값으로는, 임의의 포트로 범위를 설정한다.
(예 : 30000-31000)


위 2경우 모두 설정후 FTP 서비스를 재시작 해야 적용되며, 위와 같이 범위 또는 특정포트값을 설정해도 된다.

서버에 방화벽을 운영하는 서버인데, 클라이언트가 액티브모드를 지원하지 않는경우에 적용하는 것이 좋은 해결책이 될 수 있다.

 

Web Browser 인 Internet Explore 는 기본의 Paasive Mode이고,

다른 FTP Program은 선택 또는 Active Mode 입니다
 
문의사항이 있으면 언제든지 댓글 환영합니다.!

'시스템 > Windows' 카테고리의 다른 글

WebKnight MONITORED: IP address (previous alert)  (0) 2013.02.25
IIS MIME Type  (0) 2012.11.05
Posted by 소울하트
Web/IIS2012. 3. 7. 22:04

Windows2008 이나 Windows2008 R2 의 경우 FTP 의 Fassive 모드는 설정하기가 이전 IIS 6 버전에서 적용할 때보다
매우 쉽습니다. 하지만.. Windows2008 R2 나 Windows2008 에서는FTP 서비스 재시작을 해주어야 적용됩니다.
그리하여 다시 한번 포스팅을 하고자 합니다.(기본적으로는 Windows2008 R2 FTP 설정 입니다.)


IIS7 에서는 FTP 기능이 세분화되고 정말 많이 편리해졌습니다. IIS6 까지만 해도 메타베이스를 수정해줘야 됬었지만
FTP 7.5 버전은 UI 로 환경설정이 가능합니다. 쉬워요.!
(아래 그림은 FTP 셋팅 후 화면입니다. 중요한 정보(?) 는 가렸습니다. 이해해 주시길..ㅎ)




Windows2008 에서는 IIS 6 에서 FTP 서버를 제공했습니다. 하지만 Windows2008 R2 로 오면서 FTP 7.5 업그레이트 되면서
많은게 바뀌었습니다. 간단히 소개하고자 합니다.
아래처럼 FTP 7 이상에서는 사이트에서 마우스 오른쪽버튼을 클릭하면 FTP 사이트를 추가할 수 있습니다.



FTP 사이트 추가 화면입니다.
FTP 사이트의 이름과 콘텐츠 디렉터리 를 지정해주면 됩니다.



바인딩 및 SSL 설정 입니다.
(보안상 포트를 기본포트 말고 다른걸로 변경하시려면 포트쪽에 임의 포트를 지정하면 됩니다.)



인증 및 권한 부여 정보 입니다.
익명인증은 보안이 취약하니 권장하지 않습니다. 각 계정별 폴더설정을 하기 위하여 사용권한은 우선 읽기만 줍니다.



FTP 로 접속한 계정이 상위 디렉터리로 가지 못하도록 설정합니다.
(사용자 이름 디렉터리 선택 후 우측의 적용 을 클릭합니다.)



FTP 계정명으로 접속할 가상디렉터리를 추가합니다.
실제 계정명과 동일한 이름으로 설정하면 됩니다.
(해당 위치에 FTP 계정과 동일한 이름의 폴더를 생성하고 그 폴더에 해당 FTP 계정이 읽기, 쓰기가 가능하도록 권한설정을
 해주어야 됩니다.)

 


각 계정별 가상디렉터리를 2개 추가한 화면입니다.
(계정명 ftptest 와 ftptest2 각각 상위디렉터리로 접근 못하도록 설정한 예 입니다.)



가상 디렉터리 의 FTP 권한 부여 규칙을 수정합니다.




FTP 홈 에서 FTP 방화벽 지원 으로 들어가 데이터 채널 포트 범위를 지정해줍니다.
임의로 지정해주지 않으면 데이터 채널 포트가 FTP 연결시 임의의 포트로 지정이 되어 방화벽에서 차단될 가능성이 높습니다



그 다음 FTP 서비스를 재시작을 해줍니다.
제일 관가하기 쉬운 부분이 이부분 인데요 IIS6 까지는 서비스 재시작시 iisreset 명령어 또는 UI에서 서비스 재시작을 하면
변경한 환경설정이 적용이 되었지만 IIS7 버전에서는 해당 서비스를 재시작 해줘야 합니다.
추가적으로 inetinfo.exe 에 종속되었던 서비스가 IIS7 버전부터는 svchost 로 종속되어 운영되고 있으며, FTP 뿐만 아니라
Web 서비스도 inetinfo에 종속되지 않습니다.
그리하여 FTP 환경설정 수정시 꼭 재시작을 해줘야 합니다.
(환경설정을 변경했는데도 적용이 안되면 꼭 재시작을 하시기 바랍니다.)




그 다음 마지막으로 방화벽 설정을 해주면 됩니다. 기본 FTP 포트와 별도로 지정한 데이터 채널 포트를 지정해줘야합니다.
Windows 2008 에서는 방화벽에서 범위지정이 안되었지만 Windows2008 R2 에서는 범위지정이 가능하도록 바뀌었습니다.
점점 버전업이 되면서 많이 편해지는 느낌입니다.. IIS7 FTP 확실히 속도도 빠르고 맘에 드는군요. ㅎㅎ

이상입니다.^^ 질문이 있으시면 언제든지 댓글 주시면 감사하겠습니다.^^
Posted by 소울하트