login register Sysop! about ME  
qrcode
    최초 작성일 :    2007년 11월 06일
  최종 수정일 :    2007년 11월 20일
  작성자 :    songgun
  편집자 :    songgun(송 원석)
  읽음수 :    29,419

강좌 목록으로 돌아가기

필자의 잡담~

(없음)
No. 27 :: IIS 7.0 인스퍼레이션 - 08, (Configure IIS Manager Authentication 번역 및 주해)
다음은 본 번역 문서의 권한에 관한 제반 사항입니다.
  • 본 번역 문서에 대한 모든 저작권은 마이크로소프트사에 있으며, 단순히 IIS 7.0 을 널리 알리고자 하는 개인적인 취지에 의해 번역되어 제공되는 문서입니다.
  • 마이크로소프트사의 요청이 있는 경우 언제라도 게시가 중단될 수 있습니다.
  • 본문에서 제공하는 번역에는 오역이 포함되어 있을 수 있으며, 주해의 내용도 개인적으로 파악한 것으로 마이크로소프트사는 이 내용에 대해 일체의 보장을 하지 않습니다.
  • 본문의 원문은 IIS 개발팀이 제공하는 Configure IIS Manager Authentication 입니다.
서론

마이크로소프트사에서는 원도우 서버 코드명 "롱혼"을 위해 완전히 새롭게 작성된 FTP 서비스를 개발했습니다. 이 새로운 FTP 서비스는 지금까지 웹 저작자들이 사용해오던 방법보다 개선된 방법을 사용하여 저작물을 배포할 수 있게 해주고, 웹 관리자에게 보다 많은 보안 및 배포 옵션들을 제공해주는 수 많은 새로운 기능들을 가지고 있습니다.

본문의 미리보기에서는 새로운 FTP 사용자 인터페이스를 사용하거나 IIS 구성 설정 파일을 직접 편집하여 IIS 관리자 계정 FTP 인증을 구성하는 과정을 여러분들에게 보여드립니다. *

주의: 이 미리보기에는 로컬 관리자 계정을 사용하여 여러분들이 생성한 FTP 사이트에 로그인하는 과정이 들어 있습니다. 이 과정은 반드시 FTP 사이트가 생성된 서버에서 루프백 주소를 사용해 동일 서버에 로그인하거나, 원격에서 서버에 로그인하는 경우에는 SSL 이 적용되어 있어야만 합니다. 그리고, 만약 여러분들이 관리자 계정 대신 다른 사용자 계정을 사용하여 이 미리보기를 따라해보려면, 반드시 그 사용자 계정에 적합한 폴더를 생성해야 하고, 필요하다면 이 폴더에 해당 계정에 대한 올바른 권한을 설정해야만 합니다.

전제조건

이 미리보기의 내용을 모두 따라해보기 위해서는 다음과 같은 준비가 필요합니다.:
  1. 여러분들의 윈도우 서버 2008 RC0 에 IIS 7 과 인터넷 정보 서비스 관리자가 설치되어 있어야만 합니다.
  2. 새로운 FTP 서비스가 설치되어 있어야만 합니다. 다음의 링크 중 하나를 통해 http://www.iis.net/ 웹 사이트로부터 FTP 서비스를 다운로드 받고 설치할 수 있습니다.
인증 확장성 처리 COM 프로세스는 "네트워크 서비스" 계정을 사용하므로, 본문에서 소개하는 형태의 인증을 활성화시키기 위해서 일부 폴더에 이 계정에 대한 특정 권한을 설정해주어야 합니다.
  1. "네트워크 서비스" 계정에 IIS "config" 폴더에 대한 "읽기" 권한을 부여합니다.:
    • 명령 프롬프트를 엽니다.
    • 다음 명령어를 입력합니다.:
      CACLS "%SystemDrive%\Windows\System32\inetsrv\config" /T /G "Network Service":R /E
    • 명령 프롬프트를 닫습니다.
  2. "네트워크 서비스" 계정에 IIS "Temporary ASP.NET Files" 폴더에 대한 "수정" 권한을 부여합니다.:
    • 명령 프롬프트를 엽니다.
    • 사용하고 있는 프레임워크의 버전에 따라 다음 명령어 중 적당한 명령어를 입력합니다.:
      32-비트 프레임워크:
      CACLS "%SystemDrive%\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files" /G "Network Service":C /E /T
      64-비트 프레임워크:
      CACLS "%SystemDrive%\Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files" /G "Network Service":C /E /T
    • 명령 프롬프트를 닫습니다.
FTP 게시를 위한 루트 폴더를 생성합니다.
  1. "%SystemDrive%\inetpub\ftproot" 폴더를 생성합니다.
  2. 인증 확장성 처리 COM 프로세스를 위해 접근 권한을 설정합니다.:
    • 명령 프롬프트를 엽니다.
    • 다음 명령어를 입력합니다.:
      CACLS "%SystemDrive%\inetpub\ftproot" /G "Network Service":C /T /E
    • 명령 프롬프트를 닫습니다.
* 다시 말하자면, 본문에서 다루고자 하는 내용은 윈도우 계정이 아닌 임의의 계정, 즉 IIS 관리자에서 관리 목적으로 자체적으로 만들어낸 계정을 사용하여 특정 FTP 사이트를 관리할 수 있도록 설정하는 방법이다. 결과적으로 서버 관리자가 내부 개발자 또는 외주 개발자들에게 특정 FTP 사이트에 대한 관리 권한은 부여하되, 윈도우즈 계정을 부여하기에는 조금 곤란한 경우 등에 유용하게 사용할 수 있을 것이다. 참고로 WWW 서비스에 대해서도 본문에서 다루는 내용과 유사한 기능을 제공하며 다른 IIS 7 의 기능과 함께 사용하면 막강한 관리상의 이점을 누릴 수 있다. 이 부분에 대해서는 추후 보다 본격적으로 다루어 보기로 한다.


IIS 관리 서비스 설정

IIS 7 에서는 비-윈도우 계정을 사용하여 원격 관리를 가능하게 해주는 선택 가능한 관리 서비스를 제공해줍니다. 이번 단계에서는 이 서비스를 설치하고 설정하는 방법에 대해서 설명합니다.

주의: IIS FTP 관리자 인증을 사용하기 위해서는 IIS 관리 서비스가 설치되어야 합니다. 그러나, 이 서비스가 반드시 시작되어야만 하는 것은 아닙니다.

단계 1: IIS 관리 서비스 설치

먼저, 첫 번째 단계는 IIS 관리 서비스를 설치하는 것입니다.

  1. 윈도우 시작 메뉴에서 서버 관리자를 실행시킵니다.
  2. 트리뷰에서 Roles 노드를 클릭하고, Web Server 역할의 Add Role Services 링크를 클릭합니다.
  3. 만약 Management Service 항목이 체크되어 있지 않다면 체크 박스를 클릭하여 체크하고 Next 버튼을 클릭합니다. 아니면 Cancel 버튼을 클릭합니다.
  4. 설치할 서비스 선택 확인 페이지가 나타나면 Install 버튼을 클릭합니다.
  5. 서비스 설치가 완료되면 Close 버튼을 클릭하여 마법사를 빠져나가고, 서버 관리자를 종료합니다.
단계 2: IIS 관리 서비스 설정 및 IIS 관리자 계정 추가

두 번째 단계에서는 IIS 관리자 계정을 위한 IIS 관리 서비스를 설정합니다.

  1. IIS 관리자의 Connections 패인에서 트리의 서버 수준 노드를 클릭하고, Management Service 아이콘을 더블 클릭합니다.
  2. Windows credentials or IIS Manager credentials 옵션을 선택하고, Actions 패인에서 Apply 링크 버튼를 클릭합니다.
  3. IIS 관리자의 Connections 패인 트리뷰에서 서버 수준 노드를 클릭하고, IIS Manager Users 아이콘을 더블 클릭합니다.
  4. IIS Manager Users 기능 페이지의 Actions 패인에서 Add User 링크를 클릭합니다.
  5. Add User 대화 상자가 나타나면, User Name 입력란에는 "ftpmanager" 를 입력하고 Password 입력란에는 "P@ssw0rd" 를 입력한 다음 OK 버튼을 클릭합니다. *
요약

이번 단계에서 살펴본 내용들을 다시 정리해보면:

  1. IIS 관리 서비스를 설치했습니다.
  2. IIS 관리 서비스에서 윈도우 계정과 IIS 관리자 계정을 모두 사용하도록 설정했습니다.
  3. 나중에 IIS 관리자 계정으로 사용활 계정을 생성했습니다.
* 즉, 결론은 ftpmanager 라는 이름의 IIS 관리자 내부 계정을 생성하는 것이다. 물론 다른 이름과 다른 비밀 번호를 사용하여 계정을 생성할 수도 있으며, 복수의 계정을 생성하는 것도 가능하다. 과연 그렇다면, 이렇게 생성된 계정의 정보는 어디에 저장될까? 이 정보는 메타베이스를 대체하는 IIS 7 의 새로운 구성설정 저장소 중 하나인 administration.config 파일의 credentials 섹션에 다음과 같이 저장된다.

<system.webServer>
    <management>
        <authentication defaultProvider="ConfigurationAuthenticationProvider">
            <providers>
                ... 중략 ...
            </providers>
            <credentials>
                <add name="ftpmanager" password="[암호화 된 비밀번호]" />
            </credentials>
        </authentication>

기본적인 IIS 7 의 구성설정 정보를 다루는 경우에는 applicationHost.config 파일을 주로 다루게 되겠지만, 보다 고급의 구성설정 정보에 접근해 나갈수록, 점차로 administration.config 파일을 다루게 되는 경우가 더 많아질 것이다.


새로운 FTP 사이트를 생성하고 IIS 관리자 계정 설정하기

이번 섹션에서는 새로운 FTP 사이트를 생성하고, 이전 단계에서 생성한 IIS 관리자 계정을 이 사이트에 설정하는 과정을 살펴볼 것입니다.

단계 1: FTP 사이트 마법사를 사용하여 FTP 사이트를 생성하기

이번 첫 번째 단계에서는 로컬 관리자만 접근할 수 있는 새로운 FTP 사이트를 생성해 볼 것입니다.

  1. 인터넷 정보 서비스 관리자의 Connections 패인에서 트리뷰의 Sites 노드를 클릭합니다.
  2. 다음의 이미지에서 볼 수 있는 것과 같이, 트리뷰에서 Sites 노드를 마우스 오른쪽 버튼으로 클릭하고 Add FTP Site 메뉴를 클릭하거나, Actions 패인에서 Add FTP Site 링크를 클릭합니다.
  3. Add FTP Site 마법사가 나타나면:
    • FTP site name 텍스트 박스에는 "My New FTP Site" 라고 입력하고, Contents Directory 에는 전제조건 섹션에서 미리 만들어 놓았던 "%SystemDrive%\inetpub\ftproot" 폴더를 지정합니다.
      주의: 만약 Contents Directory 의 물리적 경로를 직접 타이핑해서 입력한다면, "%SystemDrive%\inetpub\ftproot" 와 같이 경로에 환경 변수를 사용할 수도 있습니다.
    • 작업을 모두 마쳤으면, Next 버튼을 클릭합니다.
  4. 마법사의 다음 페이지에서는:
    • FTP 사이트의 IP 주소를 지정하려면 일반적으로 IP Address 드롭다운 목록 상자에서 주소를 선택하거나 기본적으로 선택되어 있는 "All Unassigned." 를 그대로 사용하면 됩니다. 그러나, 이 미리보기에서는 나중에 관리자 계정을 사용하여 로그인을 해 볼 것이므로, 만약 서버에 대한 접근을 확실하게 제한하고 싶다면 IP Address 에 "127.0.0.1" 을 입력하여 로컬 루프백 IP 주소를 지정하십시오.
    • FTP 사이트의 포트를 지정하기 위해 Port 텍스트 박스에 TCP/IP 포트를 입력합니다. 이 미리보기에서는 기본 포트인 21 번 포트를 사용합니다.
    • 이 미리보기에서는 가상 호스트 이름을 사용하지 않으므로 Virtual Host 텍스트 박스는 공란으로 비워둡니다.
    • SSL Certificates 드롭다운 목록 상자의 값을 "Not Selected" 로 지정하고, Require SSL 옵션은 선택하지 않습니다.
  5. 마법사의 다음 페이지에서는:
    • Authentication 설정에서 Basic 을 체크합니다.
    • Authorization 설정에서 Allow access to 드롭다운 목록 상자의 값을 "Specified users" 로 지정하고 사용자 이름으로 "administrator" 를 입력합니다. 그리고 Permissions 옵션은 Read 와 Write 를 모두 체크합니다.
    • 작업을 모두 마쳤으면, Finish 버튼을 클릭합니다.
단계 2: IIS 관리자 인증을 사용하도록 FTP 사이트 설정하기

이번 단계에서는 방금 여러분들이 생성한 FTP 사이트의 IIS 관리자 인증 기능을 활성화하기 위해 필요한 작업들을 살펴봅니다. :

  1. 인터넷 정보 서비스 관리자에서 여러분들이 만든 FTP 사이트 노드를 클릭하고, FTP Authentication 아이콘을 더블 클릭하여 FTP 인증 기능 페이지를 엽니다.
  2. FTP Authentication 페이지의 Actions 패인에서 Custom Providers 링크를 클릭합니다.
  3. Custom Providers 대화 상자에서 IIS Manager Authentication 를 클릭해 선택하고 OK 버튼을 클릭합니다. *
  4. 그리고, 다시 FTP Authentication 페이지를 살펴보면 Basic Authentication 과 IIS Manager Authentication 이 모두 활성화 되어 있는 것을 확인할 수 있습니다. 만약 필요하다면 Basic Authentication 항목을 선택하여 반전시킨 다음 Actions 패인에서 Disable 링크를 클릭하여 비활성화 시킬 수도 있습니다.
  5. 이제 IIS 관리자 계정의 접근을 활성화시켜야만 합니다. 이를 위해서, 트리뷰에서 FTP 사이트를 클릭하고, IIS Manager Permissions 아이콘을 더블 클릭하여 엽니다.
  6. IIS Manager Permissions 페이지의 Actions 패인에서 Allow User 링크를 클릭합니다.
  7. Allow User 대화 상자가 나타나면, IIS Manager 옵션을 선택하고 Select 버튼을 클릭합니다.
  8. 그러면 Users 대화 상자가 출력되는데, "ftpmanager" 사용자를 선택하고 OK 버튼을 클릭합니다.
  9. OK 버튼을 클릭하여 Allow User 대화 상자를 닫습니다.
  10. 이제 IIS 관리자 계정으로 로그인 할 수 있도록 권한 규칙을 추가해야합니다. 이를 위해서, 트리뷰에서 FTP 노드를 클릭하고, FTP Authorization Rules 아이콘을 더블 클릭하여 FTP 권한 기능 페이지를 엽니다.
  11. FTP Authorization Rules 페이지가 출력되면, Actions 패인의 Add Allow Rule 링크를 클릭합니다.
  12. Add Allow Authorization Rule 대화 상자가 출력되면
    • Specified users 옵션을 선택하고, 입력란에 "ftpmanager" 를 입력합니다.
    • Permissions 옵션은 Read 와 Write 를 모두 체크합니다.
    • 작업을 모두 마쳤으면, OK 버튼을 클릭합니다.
요약

이번 단계에서 살펴본 내용들을 다시 정리해보면:

  1. "My New FTP Site" 라는 이름의 새로운 FTP 사이트를 생성했습니다.:
    • FTP 사이트의 컨텐츠 루트를 "%SystemDrive%\inetpub\ftproot" 폴더로 지정했습니다.
    • FTP 사이트를 여러분들의 컴퓨터 로컬 루프백 주소 및 21 번 포트에 바인딩하고, FTP 사이트에 대한 보안 소켓 계층 (SSL) 은 사용하지 않도록 설정했습니다.
    • 기본 인증을 활성화시키고 로컬 관리자 계정에 FTP 사이트에 대해 "읽기" 와 "쓰기" 를 허용하는 권한 규칙을 추가했습니다.
  2. FTP 사이트에서 IIS 관리자 계정을 사용하도록 설정했습니다.:
    • IIS 관리자 인증을 활성화했습니다.
    • IIS 관리자 계정을 사용하여 FTP 사이트에 접근이 가능하도록 허용했습니다.
    • IIS 관리자 계정이 FTP 사이트에서 읽고 쓸 수 있도록 권한 규칙을 추가했습니다.
* 캡춰된 Custom Providers 대화 상자를 살펴보면 AspNetAuth 라는 제공자가 하나 더 존재하는 것을 볼 수 있다. 정확하게 이 제공자가 필자가 생각하는 바로 그것인지 확신하여 말할 수는 없지만, 이 문서를 번역하면서 필자는 금년도 2007 MVP Global Summit 에서 IIS 개발팀이 시연하던 데모 장면이 떠올랐다. .NET 코드를 사용하여 작성한 사용자 정의 제공자를 사용하여, 본문에서 설명하고 있는 IIS 관리 계정을 설정하는 데모였는데, 본문과는 달리 administration.config 파일이 아닌 SQL 서버로부터 계정 정보를 가져오고 있었다. 그래서 어눌한 영어로 "PT 코드로 미루어 짐작하건데 ADO.NET 제공자만 변경하면 어떤 데이터베이스와도 연결할 수 있는것 같은데 맞느냐?" 고 물어보았고, 여러분도 예상하는 것처럼 그 대답은 물론 Yes 였다. 필자는 개인적으로 IIS 7 이 정말 만족스럽다.


추가 정보

지금까지 살펴본 "새로운 FTP 사이트를 생성하고 IIS 관리자 계정 설정하기" 단계와 "IIS 관리자 인증을 사용하도록 FTP 사이트 설정하기" 단계를 모두 마치면, 여러분들이 생성한 "ftpmanager" 계정을 사용하여 FTP 사이트에 로그인할 수 있습니다. IIS 서버상에서 FTP.EXE 명령어 클라이언트를 사용합니다.:

  1. 명령 프롬프트를 엽니다.
  2. 다음 명령어를 입력합니다.
    FTP localhost
  3. 사용자 이름을 입력하는 프롬프트가 나타나면, 이름과 비밀번호를 입력합니다. 예를 들어:
    USER ftpmanager
    PASS ********
  4. IIS 관리자 계정을 사용하여 FTP 사이트에 로그인이 가능합니다.
마지막으로 IIS 관리 서비스에 대한 보다 자세한 정보를 보시려면 "Remote Administration for IIS Manager" 문서를 참고하시기 바랍니다. *

* 이 문서에서는 원격 관리를 위한 IIS 관리 서비스의 설정 및 기타 특징에 관해서 설명하고 있다. 비록 영문 문서긴 하지만, 단 한 페이지 짜리 간단한 문서이므로 큰 부담없이 살펴보는 것도 좋을 것이다.


authored by


 
 
.NET과 Java 동영상 기반의 교육사이트

로딩 중입니다...

서버 프레임워크 지원 : NeoDEEX
based on ASP.NET 3.5
Creative Commons License
{5}
{2} 읽음   :{3} ({4})