웹 동기화를 위한 IIS 7 구성

적용 대상:SQL Server

이 항목의 절차는 병합 복제본(replica) 위해 웹 동기화에 사용할 IIS(Microsoft 인터넷 정보 서비스) 버전 7 이상을 수동으로 구성하는 과정을 안내합니다.

IIS 7 이상을 구성하는 것은 웹 동기화를 사용하도록 설정하는 데 필요한 세 단계 중 첫 번째 단계입니다.

전체 구성 프로세스에 대한 개요는 웹 동기화 구성을 참조 하세요.

Important

애플리케이션이 .NET Framework 2.0 이상 버전만 사용하고 이전 버전의 .NET Framework가 IIS 서버에 설치되어 있지 않은지 확인합니다. 이전 버전의 .NET Framework는 다음과 같은 오류를 일으킬 수 있습니다. "웹 동기화 중 메시지 형식이 잘못되었습니다. 복제본(replica)연속 구성 요소가 웹 서버에서 제대로 구성되었는지 확인합니다."

웹 동기화를 사용하려면 다음 단계를 완료하여 IIS를 구성해야 합니다. 각 단계는 이 항목에서 자세히 설명합니다.

  1. IIS를 실행하는 컴퓨터에 Microsoft SQL Server 복제 수신기를 설치하고 구성합니다.

  2. 이전에 SSL(Secure Sockets Layer)으로 알려진 TLS(전송 계층 보안)를 구성합니다. TLS는 IIS와 모든 구독자 간의 통신에 필요합니다.

  3. IIS 인증을 구성합니다.

  4. 계정을 구성하고 SQL Server 복제 수신기에 대한 권한을 설정합니다.

SQL Server 복제 수신기 설치

웹 동기화는 버전 5.0부터 IIS에서 지원됩니다. IIS 버전 5 및 6의 웹 동기화 구성 마법사는 IIS 버전 7.0 이상에서는 사용할 수 없습니다. SQL Server 2012부터 IIS 서버에서 웹 동기화 구성 요소를 사용하려면 복제본(replica)과 함께 SQL Server를 설치해야 합니다. 무료 SQL Server Express Edition일 수 있습니다.

SQL Server 복제 수신기를 설치하고 구성하려면

  1. IIS 컴퓨터에 SQL Server 복제를 설치합니다.

  2. IIS를 실행하는 컴퓨터에서 replisapi.dll에 대한 새 파일 디렉터리를 만듭니다. 원하는 위치에 디렉터리를 만들 수 있지만 드라이브>:\Inetpub 디렉터리 아래에 <디렉터리를 만드는 것이 좋습니다. 예를 들어 디렉터리 <드라이브>:\Inetpub\SQLReplication\을 만듭니다.

  3. 디렉터리 <드라이브>:\Program Files\Microsoft SQL Server\nnn\com\에서 1단계에서 만든 파일 디렉터리로 replisapi.dll을 복사합니다.

  4. replisapi.dll을 등록합니다.

    1. 시작을 클릭한 다음 실행을 클릭합니다. 열기 상자에 cmd를 입력한 다음 확인을 클릭합니다.

    2. 1단계에서 만든 디렉터리에서 다음 명령을 실행합니다.

      regsvr32 replisapi.dll

  5. 복제를 위한 새 웹 사이트를 만들거나 기존 사이트를 사용합니다. 이 웹 사이트는 동기화 중에 복제본(replica) 구성 요소에 의해 액세스됩니다. 이 항목의 절차에서는 기본 웹 사이트를 가정합니다. 웹 사이트를 만드는 방법에 대한 자세한 내용은 IIS 설명서를 참조하세요.

  6. IIS에서 가상 디렉터리를 만듭니다. 4단계에서 만든 웹 사이트 아래에 가상 디렉터리를 만들고 1단계에서 만든 디렉터리에 매핑해야 합니다. 이 디렉터리에 권한을 할당할 때는 최대한 제한적이어야 합니다. 적어도 읽기실행 권한을 선택해야 합니다.

    1. 인터넷 정보 서비스(IIS) 관리자커넥트 창에서 기본 웹 사이트를 마우스 오른쪽 단추로 클릭한 다음 가상 디렉터리 추가를 선택합니다.

    2. 별칭의 경우 SQLReplication을 입력합니다.

    3. 실제 경로의 경우 드라이브>:\Inetpub\SQLReplication\을 입력<한 다음 확인을 클릭합니다.

  7. replisapi.dll을 실행할 수 있도록 IIS를 구성합니다.

    1. IIS(인터넷 정보 서비스) 관리자에서 기본 웹 사이트를 클릭합니다.

    2. 가운데 창에서 처리기 매핑을 클릭합니다.

    3. 작업 창에서 모듈 매핑 추가를 클릭합니다.

    4. 요청 경로에 replisapi.dll을 입력합니다.

    5. 모듈 드롭다운 목록에서 IsapiModule을 선택합니다.

    6. 실행 파일의 경우 drive>:\Inetpub\SQLReplication\replisapi.dll을 입력<합니다.

    7. 이름대해 Replisapi를 입력합니다.

    8. 요청 제한 단추를 클릭하고 액세스 탭을 클릭한 다음 실행을 클릭합니다.

    9. 확인을 클릭하여 요청 제한 대화 상자를 닫은 다음 확인을 다시 클릭하여 모듈 매핑 추가 대화 상자를 닫습니다. ISAPI 확장을 허용하라는 메시지가 표시되면 [예]를 클릭하여 확장을 추가합니다.

    10. Replisapi.dll이 사용 처리기 매핑 아래에 나열되어 있는지 확인합니다. 사용 안 함 목록에 있는 경우 Replisapi 항목을 마우스 오른쪽 단추로 클릭한 다음 기능 사용 권한 편집을 클릭합니다. 실행 상자를 선택한 다음 확인을 클릭합니다.

IIS 인증 구성

구독자 컴퓨터가 IIS에 연결하는 경우 IIS는 구독자를 인증해야 리소스 및 프로세스에 액세스할 수 있습니다. 인증은 전체 웹 사이트나 사용자가 만든 가상 디렉터리에 적용할 수 있습니다.

TLS에서 기본 인증을 사용하는 것이 좋습니다. TLS는 사용하는 인증 유형에 관계없이 필요합니다.

IIS 인증을 구성하려면

  1. IIS(인터넷 정보 서비스) 관리자에서 기본 웹 사이트를 클릭합니다.

  2. 가운데 창에서 인증을 두 번 클릭합니다.

  3. 익명 인증을 마우스 오른쪽 단추로 클릭한 다음 사용 안 함을 선택합니다.

  4. 기본 인증을 마우스 오른쪽 단추로 클릭한 다음 사용을 선택합니다.

보안 소켓 계층 구성

TLS를 구성하려면 IIS를 실행하는 컴퓨터에서 사용할 인증서를 지정합니다. 병합 복제를 위한 웹 동기화에서는 서버 인증서를 사용할 수 있지만 클라이언트 인증서는 사용할 수 없습니다. 배포를 위해 IIS를 구성하려면 먼저 CA(인증 기관)에서 인증서를 가져와야 합니다. 인증서에 대한 자세한 내용은 IIS 설명서를 참조하세요.

인증서를 설치한 다음에는 웹 동기화에서 사용하는 웹 사이트와 인증서를 연결해야 합니다. 개발 및 테스트의 경우 자체 서명된 인증서를 지정할 수 있습니다. IIS 7은 인증서를 만들어 컴퓨터에 등록할 수 있습니다.

프로덕션을 위해 배포하는 경우와 여기에서 설명하는 절차 사이의 차이점은 프로덕션 및 프로덕션 이전 테스팅에서는 자체 서명된 인증서 대신 CA에서 발급한 인증서를 사용한다는 것입니다.

Important

프로덕션 설치의 경우에는 자체 서명된 인증서를 사용하지 않는 것이 좋습니다. 자체 서명된 인증서는 안전하지 않습니다. 개발 및 테스트에만 자체 서명된 인증서를 사용합니다.

TLS를 구성하려면 다음 단계를 수행합니다.

  1. TLS를 요구하고 클라이언트 인증서를 무시하도록 웹 사이트를 구성합니다.

  2. CA에서 인증서를 가져오거나 자체 서명된 인증서를 만듭니다.

  3. 인증서를 복제본(replica)tion 웹 사이트에 바인딩합니다.

웹 사이트에 SSL 보안을 요구하려면

  1. IIS(인터넷 정보 서비스) 관리자에서 로컬 서버 노드를 확장한 다음 기본 웹 사이트(또는 기본 웹 사이트와 다른 경우 웹 동기화 사이트)를 클릭합니다.

  2. 중간 창에서 SSL 설정을 두 번 클릭합니다.

  3. SSL 필요 옵션을 선택합니다. 클라이언트 인증서에서 무시 단추가 선택되어 있는지 확인합니다.

테스트를 위해 자체 서명된 인증서를 만들려면

  1. IIS(인터넷 정보 서비스) 관리자에서 로컬 서버 노드를 클릭한 다음 가운데 창에서 서버 인증서를 두 번 클릭합니다.

  2. 작업 창에서 자체 서명된 인증서 만들기를 클릭합니다.

  3. 자체 서명된 인증서 만들기 대화 상자에서 인증서의 이름을 입력한 다음 확인을 클릭합니다.

인증서를 웹 사이트에 바인딩하려면
  1. 커넥트 창에서 기본 웹 사이트(또는 기본 웹 사이트와 다른 경우 웹 동기화 사이트)를 클릭합니다.

  2. 작업 창에서 바인딩을 클릭한 다음 추가를 클릭합니다. 사이트 바인딩 추가 대화 상자가 나타납니다.

  3. 형식 드롭다운 목록에서 https를 선택합니다. IP 주소포트에 대한 기본 설정을 그대로 둡니다.

  4. SSL 인증서 드롭다운 목록에서 "테스트를 위한 자체 서명된 인증서를 만들려면"에서 만든 인증서를 선택하고 확인을 클릭한 다음 닫기를 클릭합니다.

인증서를 테스트하려면
  1. 인터넷 정보 서비스(IIS) 관리자에서 기본 웹 사이트를 클릭합니다.

  2. 작업 창에서 *:443(https) 찾아보기를 클릭합니다.

  3. Internet Explorer가 열리고 "이 웹 사이트의 보안 인증서에 문제가 있습니다."라는 메시지가 표시됩니다. 이 경고는 연결된 인증서가 인식된 CA에서 발급되지 않았으며 신뢰할 수 없음을 알려줍니다. 예상되는 경고이므로 이 웹 사이트로 계속을 클릭합니다 (권장되지 않음).

  4. localhost커넥트 메시지가 표시되면 사용자 이름과 암호를 입력하여 계속 진행합니다. 웹 사이트의 기본 페이지가 표시됩니다.

SQL Server 복제 수신기에 대한 사용 권한 설정

구독자 컴퓨터가 IIS를 실행하는 컴퓨터에 연결되면 IIS를 구성할 때 지정된 인증 유형을 사용하여 구독자가 인증됩니다. IIS가 구독자를 인증한 후 IIS는 구독자가 SQL Server 복제본(replica) 호출할 권한이 있는지 여부를 검사. replisapi.dll에 대한 권한을 설정하여 SQL Server 복제본(replica)tion을 호출할 수 있는 사용자를 제어합니다. SQL Server 복제본(replica) 대한 무단 액세스를 방지하려면 권한을 올바르게 구성해야 합니다.

SQL Server 복제 수신기가 실행되는 계정에 대한 최소 권한을 구성하려면 다음 절차를 완료합니다. 다음 절차의 단계는 IIS 7.0을 실행하는 Microsoft Windows Server 2008에 적용됩니다.

다음 단계를 수행하는 것 외에도 필요한 로그인이 PAL(게시 액세스 목록)에 있는지 확인합니다. PAL에 대한 자세한 내용은 게시자 보안 설정을 참조하세요.

Important

이 섹션에서 만든 계정은 동기화 중에 게시자 및 배포자에 연결할 계정입니다. 이 계정은 배포 및 게시 서버에서 SQL 로그인 계정으로 추가되어야 합니다.

SQL Server 복제 수신기에 대해 사용되는 계정은 병합 에이전트 보안 항목의 "게시자 또는 배포자에 연결" 섹션에 설명된 대로 사용 권한을 가지고 있어야 합니다.

요약하면 계정은 다음을 수행해야 합니다.

  • PAL(게시 액세스 목록)의 멤버여야 합니다.

  • 게시 데이터베이스의 사용자와 연결된 로그인에 매핑됩니다.

  • 배포 데이터베이스의 사용자와 연결된 로그인에 매핑됩니다.

  • 스냅샷 공유에 대한 읽기 권한이 있습니다.

계정 및 권한을 구성하려면

  1. IIS를 실행하는 컴퓨터에 로컬 계정을 만듭니다.

    1. 서버 관리자를 엽니다. 시작 메뉴에서 컴퓨터를 마우스 오른쪽 단추로 클릭한 다음 관리를 클릭합니다.

    2. 서버 관리자 구성을 확장한 다음 로컬 사용자 및 그룹을 확장합니다.

    3. 사용자를 마우스 오른쪽 단추로 클릭한 다음 새 사용자를 클릭합니다.

    4. 사용자 이름과 강력한 암호를 입력합니다. 지우기 사용자는 다음 로그온 시 암호를 변경해야 합니다.

    5. 만들기를 클릭한 다음 닫기를 클릭합니다.

  2. IIS_IUSRS 그룹에 계정을 추가합니다.

    1. 서버 관리자에서 구성을 확장하고 로컬 사용자 및 그룹을 확장한 다음 그룹을 클릭합니다.

    2. IIS_IUSRS를 마우스 오른쪽 단추로 클릭한 다음 그룹에 추가를 클릭합니다.

    3. IIS_IUSRS 속성 대화 상자에서 추가를 클릭합니다.

    4. 사용자, 컴퓨터 또는 그룹 선택 대화 상자에서 1단계에서 만든 계정을 추가합니다.

    5. 다음 위치에서 에 도메인이 아닌 로컬 컴퓨터 이름이 표시되는지 확인합니다. 이 필드에 로컬 컴퓨터 이름이 표시되지 않으면 위치를 클릭합니다. 위치 대화 상자에서 로컬 컴퓨터를 선택한 다음 확인을 클릭합니다.

    6. 사용자 선택 대화 상자 및 IIS_IUSRS 속성 대화 상자에서확인을 클릭합니다.

  3. replisapi.dll이 포함된 폴더에 대한 최소 계정 권한을 부여합니다.

    1. Windows 탐색기에서 replisapi.dll용으로 만든 폴더를 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다.

    2. 보안 탭에서 편집을 클릭합니다.

    3. 폴더 이름>에 대한 <사용 권한 대화 상자에서 추가를 클릭하여 1단계에서 만든 계정을 추가합니다.

    4. 다음 위치에서 에 도메인이 아닌 로컬 컴퓨터 이름이 표시되는지 확인합니다. 이 필드에 로컬 컴퓨터 이름이 표시되지 않으면 위치를 클릭합니다. 위치 대화 상자에서 로컬 컴퓨터를 선택한 다음 확인을 클릭합니다.

    5. 계정에는 읽기, 읽기 및 실행폴더 내용 보기 권한만 부여되었는지 확인하세요.

    6. 디렉터리에 액세스할 필요가 없는 사용자 또는 그룹을 선택하고 제거를 클릭한 다음 확인을 클릭합니다.

  4. 인터넷 정보 서비스(IIS) 관리자에서 애플리케이션 풀을 만듭니다.

    1. IIS(인터넷 정보 서비스) 관리자연결 창에서 로컬 서버 노드를 확장합니다.

    2. 애플리케이션 풀을 마우스 오른쪽 단추로 클릭한 다음 애플리케이션 풀 추가를 클릭합니다.

    3. 애플리케이션 풀의 이름을 입력하고 남아 있는 필드에 대한 기본값을 그대로 둔 다음 확인을 클릭합니다.

    참고 항목

    동기화 클라이언트가 세 개 이상 동시에 실행되도록 하려면 웹 가든을 만들어야 합니다. 자세한 내용은 웹 동기화 구성에서 "웹 정원 만들기"를 참조하세요.

  5. 계정을 애플리케이션 풀에 연결합니다.

    1. 인터넷 정보 서비스(IIS) 관리자에서 로컬 서버 노드를 확장한 다음 애플리케이션 풀을 클릭합니다.

    2. 만든 애플리케이션 풀을 마우스 오른쪽 단추로 클릭한 다음 애플리케이션 풀 기본값 설정을 클릭합니다.

    3. 애플리케이션 풀 기본값 대화 상자에서 프로세스 모델 섹션까지 아래로 스크롤한 다음 ID 필드를 클릭합니다.

    4. ID 행의 오른쪽에 있는 줄임표 단추를 클릭합니다.

    5. 사용자 지정 계정 라디오 단추를 클릭한 다음 [설정]을 클릭합니다.

    6. 사용자 이름암호 필드에 1단계에서 만든 계정 및 암호를 입력한 다음 확인을 클릭합니다.

    7. 확인을 클릭하여 애플리케이션 풀 ID 대화 상자를 닫은 다음 확인을 다시 클릭하여 애플리케이션 풀 기본값 대화 상자를 닫습니다.

  6. 애플리케이션 풀을 복제본(replica)tion 웹 사이트와 연결합니다.

    1. IIS(인터넷 정보 서비스) 관리자에서 로컬 서버 노드를 확장한 다음 기본 웹 사이트(또는 기본 웹 사이트와 다른 경우 웹 동기화 사이트)를 클릭합니다.

    2. 작업 창의 웹 사이트 관리에서 고급 설정 클릭합니다.

    3. 고급 설정 대화 상자에서 애플리케이션 풀 오른쪽에 있는 줄임표 단추를 클릭합니다.

    4. 애플리케이션 풀 드롭다운 목록에서 4단계에서 만든 애플리케이션 풀을 선택한 다음 확인을 클릭합니다.

    5. 확인을 다시 클릭하여 고급 설정 닫습니다.

replisapi.dll에 대한 커넥트ion 테스트

진단 모드에서 웹 동기화를 실행하여 IIS를 실행하는 컴퓨터에 대한 연결을 테스트하고 TLS/SSL 인증서가 제대로 설치되었는지 확인합니다. 진단 모드에서 웹 동기화를 실행하려면 IIS를 실행하는 컴퓨터의 관리자여야 합니다.

replisapi.dll에 대한 연결을 테스트하려면

  1. 구독자의 LAN(Local Area Network) 설정이 올바른지 확인합니다.

    1. Microsoft Internet Explorer의 도구 메뉴에서 인터넷 옵션을 클릭합니다.

    2. 연결 탭에서 LAN 설정을 클릭합니다.

    3. LAN에 프록시 서버가 사용되지 않는 경우 자동으로 설정 검색사용자 LAN에 프록시 서버 사용의 선택을 취소합니다.

    4. 프록시 서버가 사용되는 경우 사용자 LAN에 프록시 서버 사용로컬 주소에 프록시 서버 사용 안 함을 클릭한 다음 확인을 클릭합니다.

  2. 구독자에서는 Internet Explorer에서 replisapi.dll에 대한 주소에 ?diag (예: 예: https://server.domain.com/directory/replisapi.dll?diag

    참고 항목

    위 예에서 server.domain.com 은 IIS 관리자의 서버 인증서 섹션 아래에 나열된 정확한 발급 대상 이름으로 대체되어야 합니다.

  3. IIS에 대해 지정한 인증서를 Windows 운영 체제에서 인식하지 못할 경우 보안 경고 대화 상자가 나타납니다. 이 경고는 인증서가 테스트 인증서이거나 Windows에서 인식하지 못하는 CA(인증 기관)에서 인증서를 발급했기 때문에 발생할 수 있습니다.

    참고 항목

    이 대화 상자가 표시되지 않으면 액세스하는 서버의 인증서가 신뢰할 수 있는 인증서로 구독자의 인증서 저장소에 추가되었는지 확인합니다. 인증서를 내보내는 방법은 IIS 설명서를 참조하십시오.

    1. 보안 경고 대화 상자에서 인증서 보기를 클릭합니다.

    2. 인증서 대화 상자의 일반 탭에서 인증서 설치를 클릭합니다.

    3. 인증서 가져오기 마법사를 완료하고 기본값을 적용합니다.

    4. 보안 경고 대화 상자에서 예를 클릭합니다.

    5. 인증서 가져오기 마법사 확인 대화 상자에서 확인을 클릭합니다.

    6. 인증서 대화 상자를 닫습니다.

    7. 보안 경고 대화 상자에서 예를 클릭합니다.

    참고 항목

    인증서는 사용자를 위해 설치됩니다. IIS와 동기화할 각 사용자에 대해 이 프로세스를 수행해야 합니다.

  4. ServerName> 커넥트 <대화 상자에서 병합 에이전트 IIS에 연결하는 데 사용할 로그인 및 암호를 지정합니다. 이러한 자격 증명은 새 구독 마법사에도 지정됩니다.

  5. SQL Websync 진단 정보라는 Internet Explorer 창에서 페이지의 각 상태 열 값이 SUCCESS인지 확인합니다.

  6. 인증서가 구독자에 올바르게 설치되어 있는지 확인합니다.

    1. Internet Explorer를 닫았다가 다시 엽니다.

    2. 진단 모드에서 서버에 커넥트. 인증서가 제대로 설치되어 있으면 보안 경고 대화 상자가 표시되지 않습니다. 이 대화 상자가 나타나면 병합 에이전트가 IIS를 실행하는 컴퓨터에 연결할 수 없습니다. 액세스하는 서버의 인증서가 구독자의 인증서 저장소에 신뢰할 수 있는 인증서로 추가되었는지 확인해야 합니다. 인증서를 내보내는 방법은 IIS 설명서를 참조하십시오.

참고 항목

병합 복제를 위한 웹 동기화
웹 동기화 구성