다음을 통해 공유


관리istration Pack

작성자: 월터 올리버

소개

관리istration Pack은 호스트와 고객에게 다음을 수행하는 데 도움이 되는 IIS 관리자 모듈 집합을 제공합니다.

  • 서버 구성 설정을 편집합니다(관리자만 해당).
  • FastCGI 설정을 관리합니다.
  • ASP.NET 권한 부여를 관리합니다.
  • 사용자 지정 오류를 관리합니다.
  • HTTP 요청 필터링 규칙을 편집합니다.

이 문서의 목적은 호스팅 환경에서 관리istration Pack을 배포하는 방법을 알아보는 데 필요한 정보를 호스트에게 제공하는 것입니다. 다음 이미지는 관리istration Pack을 설치한 후 IIS 관리자에 있는 새 모듈 아이콘을 강조 표시합니다.

WALTER O H P W S 홈 창을 보여 주는 스크린샷. 5개의 모듈이 선택됩니다.

관리istration Pack 배포

공유 호스팅 환경 <링크에서 관리istration Pack을 배포하는 경우: 공유 호스팅 구성 문서에> 대해 팜의 각 웹 서버에 설치해야 합니다. 미리 빌드된 이미지를 사용하는 경우 관리istration Pack은 팜 서버를 빌드하는 데 사용되는 이미지의 일부여야 합니다. 이 문서에 설명된 지침에 따라 관리istration Pack을 다운로드하고 설치합니다.

관리istration Pack에 대해 알아보기

Configuration Editor

구성 편집기 모듈은 구성 파일을 관리하는 데 도움이 됩니다. 이 도구는 서버 관리자만 사용할 수 있습니다. system.webServer와 같은 IIS 구성 설정 또는 system.web과 같은 ASP.NET 설정을 포함하여 구성 파일의 섹션, 특성, 요소 또는 컬렉션을 편집할 수 있습니다. 이러한 값을 편집하는 것 외에도 잠금을 해제하고 잠금을 해제할 수 있습니다. 또한 구성 편집기를 사용하면 수행하는 작업에 따라 스크립트를 생성하고 파일을 검색하여 값이 사용되는 위치를 확인할 수 있습니다.

구성 편집기 창을 보여 주는 스크린샷. 섹션 목록이 확장됩니다.

설정 값을 입력하면 구성 편집기에서 데이터 형식의 유효성을 검사하여 호환되는지 확인합니다. 부울(True/False) 또는 열거형과 같은 특정 값 옵션의 경우 콤보 상자는 사용 가능한 옵션만 표시하는 데 사용됩니다. 또한 구성 편집기를 사용하면 수행하는 작업에 따라 스크립트를 생성하고 파일을 검색하여 값이 사용되는 위치를 확인할 수 있습니다. 다음 비디오 <링크: https://blogs.msdn.com/carlosag/archive/2008/03/31/IISAdminPackConfigurationEditor.aspx> 구성 편집기의 다양한 기능에 대한 데모를 제공합니다.

  • 스키마 기반 — 구성 편집기는 \windows\system32\inetsrv\config\schema에 있는 구성 스키마에 의해 전적으로 구동됩니다. 즉, 섹션을 만드는 구성 시스템을 확장하면 구성 편집기 내에서 관리할 수 있습니다. 이러한 섹션에 대한 추가 UI를 빌드할 필요가 없습니다.
  • 추가 정보 — 구성 편집기는 섹션이 사용되는 위치, 컬렉션의 특정 요소가 상속되는 위치 등과 같은 정보를 노출합니다.
  • 스크립트 생성 - 구성 편집기를 사용하면 변경할 수 있으며 작업을 자동화하는 코드를 생성합니다. 구성 편집기에서 Microsoft.Web을 사용하여 관리 코드를 생성합니다. 관리istration, AHADMIN을 사용한 JavaScript 또는 AppCmd.exe 도구를 사용한 명령줄
  • 검색 — 구성 편집기를 사용하면 모든 섹션과 해당 섹션이 사용되는 위치에 대해 구성 시스템의 범위가 지정된 검색을 신속하게 수행할 수 있습니다. 이렇게 하면 서버의 더 큰 그림을 표시하고, 구성 잠금 위반을 방지하고, 다른 많은 검색 함수에 유용합니다.
  • 잠금 — 구성 편집기를 사용하면 더 깊은 위치에서 사용할 수 없도록 특정 특성을 잠그거나 컬렉션의 개별 항목을 잠그거나 전체 섹션을 잠그는 등의 사전 잠금을 수행할 수 있습니다.

Configuration Editor 사용

스크립트 생성

이 문서 <링크: https://www.iis.net/learn/manage/managing-your-configuration-settings/using-configuration-editor-generate-scripts> 구성 편집기를 활용하여 구성 작업을 자동화하는 데 도움이 되는 스크립트를 생성하는 방법을 설명합니다. C#, Jscript 및 AppCmd.exe 도구의 세 가지 스크립트 유형이 지원됩니다.

구성 컬렉션

일부 IIS 구성 설정은 컬렉션 형식으로 제공됩니다. 이 문서 <링크: https://www.iis.net/learn/manage/managing-your-configuration-settings/editing-collections-with-configuration-editor> 출력 캐싱 프로필 컬렉션을 편집하는 방법을 설명합니다. 이 문서 <링크: https://www.iis.net/learn/manage/managing-your-configuration-settings/editing-collections-using-configuration-editor-complex-sections> 401의 상태 코드를 반환하거나 응답하는 데 1분 이상 걸리거나 이 상태 코드를 반환하고 1분 후에 응답하는 .aspx 요청에 대해 실패한 새 요청 추적 규칙을 추가하는 방법을 보여 줍니다.

FastCGI 설정

FastCGI 모듈을 사용하면 서버의 웹 사이트에서 사용하는 FastCGI 설정을 구성할 수 있습니다. 사용자가 FastCGI 애플리케이션을 추가 및 제거하고 이러한 설정을 변경할 수 있습니다. 다음 이미지는 FastCGI 애플리케이션 추가 대화 상자를 보여 줍니다.

빠른 CG I 설정 창을 보여 주는 스크린샷. 빠른 CG I 애플리케이션 추가 대화 상자가 열려 있습니다.

.NET 권한 부여 규칙 모듈

.NET 권한 부여 규칙 모듈은 관리istration Pack의 두 ASP.NET 모듈 중 하나입니다. 사이트 관리자는 이 모듈을 사용하여 사용자가 웹 사이트 및 애플리케이션에 액세스할 수 있도록 권한을 부여하는 규칙을 지정할 수 있습니다. 특히 .NET 권한 부여 규칙 모듈은 웹 콘텐츠에 대한 사용자 액세스를 관리하는 허용 및 거부 규칙을 만들기 위한 그래픽 사용자 인터페이스를 제공합니다. 다음 이미지는 권한 부여 규칙 추가 대화 상자를 보여 줍니다.

권한 부여 허용 규칙 추가 대화 상자를 보여 주는 스크린샷.

ASP.NET 권한 부여 규칙을 잠그는 방법에 대한 지침은 다음 가이드 <링크를 https://msdn.microsoft.com/library/ms178693.aspx>참조하세요.

이 문서 <링크: https://learn.iis.net/page.aspx/142/understanding-iis-7-url-authorization/#Differences> ASP.NET URL 권한 부여와 IIS URL 권한 부여 간의 차이점을 설명합니다.

.NET 오류 페이지

.NET 오류 페이지는 HTTP 오류 응답을 구성하기 위한 그래픽 사용자 인터페이스를 제공합니다. 사용자 지정 오류 페이지 및 기본 설정의 구성을 사용하도록 설정합니다. 아래 이미지는 사용자 지정 오류 페이지 추가 대화 상자를 보여 줍니다.

사용자 지정 오류 페이지 추가 대화 상자를 보여 주는 스크린샷.

HTTP 요청 필터링

HTTP 요청 필터링 모듈은 악의적인 요청으로부터 웹 서버를 보호하는 게이트키퍼 구성 요소입니다. 필터링 규칙은 다음과 같습니다.

  • 특정 파일 이름 확장명을 가진 파일에 대한 요청을 차단하거나 차단 해제합니다.
  • "숨겨진 세그먼트" 목록에 구성 세그먼트를 추가하거나 제거합니다.
  • "URL 시퀀스 거부" 목록에 특정 URL 시퀀스를 추가하거나 제거합니다.
  • HTTP 동사를 차단하거나 차단 해제합니다.
  • 특정 크기 제한이 있는 헤더를 추가합니다.

IIS 7.0이 Windows Server 2008의 일부로 릴리스되었을 때 이 기능이 포함되어 있지만 이 기능을 관리하는 데 사용할 수 있는 IIS 관리자 모듈은 포함되지 않았습니다. 따라서 요청 필터링 구성을 용이하게 하기 위해 그래픽 사용자 인터페이스를 사용할 수 없었습니다. Web.config 파일에 새 구성을 추가하기만 하면 요청 필터링을 사용하는 예제는 다음 문서 <링크를 https://learn.iis.net/page.aspx/143/how-to-use-request-filtering/>참조하세요.

이 블로그 게시물 <링크: https://blogs.iis.net/bills/archive/2008/03/23/how-to-un-block-directories-with-iis7-web-config.aspx> 요청 필터링을 사용하여 사이트 섹션에 대한 액세스를 차단하거나 차단 해제하는 방법을 보여줍니다. 이 블로그 게시물 <링크: https://blogs.msdn.com/carlosag/archive/2008/03/24/IISAdminPackRequestFiltering.aspx> 관리istration Pack에 포함된 IIS 관리자 모듈을 사용하여 동일한 작업을 수행합니다.

다음 섹션에서는 HTTP 요청 필터링의 최신 기능을 설명합니다.

요청의 일부에서 문자열 패턴을 허용하지 않는 규칙 만들기

이 새로운 기능을 사용하면 규칙 목록을 만들 수 있습니다. HTTP 요청의 특정 부분과 일치하는 패턴에 따라 요청을 거부하는 규칙을 지정할 수 있습니다. 이 기능에 대한 기본 구성은 ApplicationHost.config 파일 또는 Web.config 파일의 system.webServer/security/requestFiltering 섹션 아래에 있는 filteringRules 섹션입니다. 이 규칙 때문에 요청이 거부되면 HTTP 상태 404.19가 IIS 로그에 기록됩니다.

URL 또는 쿼리 문자열에 대한 안전한 목록 만들기

이 새로운 기능을 사용하면 정의된 모든 거부 규칙을 무시할 수 있는 안전한 URL 또는 쿼리 문자열을 지정할 수 있습니다. 예를 들어 이 URL이 정의된 거부 규칙을 트리거할 수 있더라도 URL "/my.login.page.asp"을 항상 허용할 수 있습니다. 이 기능에 대한 기본 구성에는 alwaysAllowedUrls 특성 및 alwaysAllowedQueryStrings 특성이 포함됩니다. 이러한 특성은 ApplicationHost.config 파일 또는 Web.config 파일의 system.webServer/security/requestFiltering 섹션 아래에 있습니다.

쿼리 문자열의 거부 목록 만들기

가장 일반적인 SQL 삽입 공격은 쿼리 문자열을 조작하여 수행됩니다. 이 새로운 기능을 사용하면 쿼리 문자열을 검사하여 악의적인 요청을 필터링할 수 있습니다.

모든 요청에 대한 URL 시퀀스 목록을 거부하려면 ApplicationHost.config 파일 또는 Web.config 파일에서 denyQueryStringSequences 섹션을 만든 다음 요청의 URL에서 허용하지 않으려는 문자열 목록을 추가합니다. 이 규칙 때문에 요청이 거부되면 HTTP 상태 404.18이 IIS 로그에 기록됩니다.

이스케이프된 쿼리 문자열과 이스케이프되지 않은 쿼리 문자열 모두 확인

이 새로운 기능을 사용하면 ApplicationHost.config 파일 또는 Web.config 파일의 system.webServer/security/requestFiltering 섹션에서 unescapeQueryString 특성을 사용하여 이스케이프된 쿼리 문자열과 이스케이프되지 않은 쿼리 문자열을 모두 검색할 수 있습니다. 이 규칙 때문에 요청이 거부되면 HTTP 상태 404.18이 IIS 로그에 기록됩니다.

다음 이미지는 차단된 파일 이름 확장명 목록을 보여 줍니다.

I S 관리자의 요청 필터링 창을 보여 주는 스크린샷

HTTP 요청 필터링은 보안 시나리오에 대해서만 설계되고 최적화된 반면 URL 다시 쓰기 <링크는 https://learn.iis.net/page.aspx/531/url-rewrite-for-hosters/> 광범위한 시나리오 집합에 적용할 수 있습니다. 보안 시나리오는 이러한 하위 집합입니다. 이러한 두 모듈 간의 차이점에 대한 자세한 내용은 다음 문서 <링크를 https://learn.iis.net/page.aspx/501/iis-70-request-filtering-and-url-rewriting/>참조하세요.

결론

이 문서에서는 관리istration Pack에 대한 개요와 호스트가 공유 호스팅 환경에서 배포하고 구성하는 데 사용할 수 있는 리소스에 대한 맵을 제공했습니다.