Analysis Services 액세스를 허용하도록 Windows 방화벽 구성

이 항목에 있는 정보를 사용하여 방화벽에서 Analysis Services 또는 PowerPivot for SharePoint에 대한 액세스를 허용하도록 포트 차단을 해제해야 할지 여부를 결정할 수 있습니다. 이 항목에서 제공하는 단계를 수행하여 포트와 방화벽 설정을 모두 구성할 수 있습니다. 실제로는 Analysis Services 서버에 대한 액세스를 허용하기 위해 이러한 단계를 함께 수행해야 합니다.

방화벽 구성에 대한 요구 사항은 설치한 Analysis Services 구성 요소에 따라 다릅니다. PowerPivot for SharePoint를 설치한 경우에는 Windows 방화벽에서 포트를 열 필요가 없습니다. 반대로 독립 실행형 Analysis Services 설치에 대한 원격 연결의 경우에는 항상 포트를 열어야 합니다.

Analysis Services의 기본 인스턴스는 TCP 포트 2383에서 수신 대기하지만 다른 고정 포트로 수신하도록 서버를 구성하거나 동적 포트 할당 및 SQL Server Browser 서비스를 사용할 수 있습니다.

이 항목에는 다음과 같은 섹션이 포함되어 있습니다.

Analysis Services의 포트 및 방화벽 설정 확인

Analysis Services의 기본 인스턴스에 대한 Windows 방화벽 구성

Analysis Services의 명명된 인스턴스에 대한 Windows 방화벽 액세스 구성

Analysis Services 클러스터에 대한 포트 구성

PowerPivot for SharePoint에 대한 포트 구성

Use a fixed port for a default or named instance of Analysis Services

기본 Windows 방화벽 설정 방법과 데이터베이스 엔진, Analysis Services, Reporting Services 및 Integration Services에 영향을 주는 TCP 포트에 대한 설명은 SQL Server 액세스를 허용하도록 Windows 방화벽 구성을 참조하십시오.

Analysis Services의 포트 및 방화벽 설정 확인

이 지원하는 Microsoft Windows 운영 체제에서는 기본적으로 방화벽이 설정되어 원격 연결을 차단합니다. Windows Server 2008 R2, Windows Server 2008, Windows 7 또는 Windows Vista 운영 체제를 실행하는 경우 직접 방화벽에서 포트를 열어 Analysis Services로의 인바운드 요청을 허용해야 합니다. SQL Server 설치 프로그램에서는 이 단계를 수행하지 않습니다.

포트 설정은 msmdsrv.ini 파일 및 SQL Server Management Studio의 Analysis Services 인스턴스 일반 속성 페이지에서 지정됩니다. Port가 양수로 설정된 경우 서비스는 고정 포트에서 수신 대기합니다. Port가 0으로 설정된 경우 서비스는 기본 인스턴스인 경우 포트 2383에서, 명명된 인스턴스인 경우 동적으로 할당된 포트에서 수신 대기합니다.

동적 포트 할당은 명명된 인스턴스에서만 사용합니다. MSOLAP$InstanceName 서비스는 시작할 때, 사용할 포트를 결정합니다. 다음을 수행하여 명명된 인스턴스가 사용하는 실제 포트 번호를 확인할 수 있습니다.

  • 작업 관리자를 시작한 다음 서비스를 클릭하여 MSOLAP$InstanceName의 PID를 가져옵니다.

  • 명령줄에서 netstat –ao –p TCP를 실행하여 해당 PID의 TCP 포트 정보를 확인합니다.

  • SQL Server Management Studio를 사용하여 포트를 확인하고 <IPAddress>:<portnumber>의 형식으로 Analysis Services 서버에 연결합니다.

응용 프로그램이 특정 포트에서 수신 대기하고 있더라도 방화벽에서 액세스를 차단하면 연결에 성공할 수 없습니다. 명명된 Analysis Services 인스턴스에 연결하려면 msmdsrv.exe 또는 msmdsrv.exe가 방화벽에서 수신 대기하고 있는 고정 포트에 대한 액세스 차단을 해제해야 합니다. 이 항목의 남은 섹션에서는 액세스 차단을 해제하는 방법에 대한 지침을 제공합니다.

Analysis Services에 대해 방화벽 설정이 이미 정의되어 있는지 확인하려면 제어판에서 고급 보안이 포함된 Windows 방화벽을 사용합니다. 모니터링 폴더의 방화벽 페이지에는 로컬 서버에 대해 정의된 전체 규칙 목록이 표시됩니다.

Analysis Services 서버의 경우 방화벽 예외는 모두 수동으로 정의해야 합니다. Analysis Services가 포트 2382와 2383을 예약하고 있기는 하지만, SQL Server 설치 프로그램도 어떤 구성 도구도 포트 또는 프로그램 실행 파일에 대한 액세스를 허용하는 방화벽 규칙을 정의하지는 않습니다.

Analysis Services의 기본 인스턴스에 대한 Windows 방화벽 구성

Analysis Services의 기본 인스턴스는 TCP 포트 2383에서 수신합니다. 설치한 기본 인스턴스에 이 포트를 사용하려는 경우 Windows 방화벽에서 TCP 포트 2382에 대한 인바운드 액세스의 차단을 해제해야만 Analysis Services의 기본 인스턴스에 대한 원격 액세스를 설정할 수 있습니다. 기본 인스턴스를 설치했지만 고정 포트를 수신하도록 서비스를 구성하려는 경우 이 항목의 Use a fixed port for a default or named instance of Analysis Services을 참조하십시오.

서비스가 기본 인스턴스(MSSQLServerOLAPService)로 실행되고 있는지 확인하려면 SQL Server 구성 관리자에서 서비스 이름을 확인하십시오. Analysis Services 기본 인스턴스는 언제나 **SQL Server Analysis Services(MSSQLSERVER)**로 표시됩니다.

[!참고]

다른 Windows 운영 체제에서는 다른 도구를 사용하여 Windows 방화벽을 구성할 수 있습니다. 대부분의 도구에서는 특정 포트 또는 프로그램 실행 파일 중 하나를 선택할 수 있습니다. 프로그램 실행 파일을 지정해야 하는 특별한 이유가 없다면 포트를 지정하는 것이 좋습니다.

인바운드 규칙을 지정할 때 나중에 규칙을 쉽게 찾을 수 있도록 명명 규칙을 적용해야 합니다(예: SQL Server Analysis Services(TCP-in)).

고급 보안이 포함된 Windows 방화벽

  1. Windows 7 또는 Windows Vista에서는 제어판의 시스템 및 보안을 클릭하고 Windows 방화벽을 선택한 다음 고급 설정을 클릭합니다. Windows Server 2008 또는 2008 R2에서는 관리 도구를 열고 고급 보안이 포함된 Windows 방화벽을 클릭합니다.

  2. 인바운드 규칙을 마우스 오른쪽 단추로 클릭하고 새 규칙을 선택합니다.

  3. 규칙 유형에서 포트를 클릭하고 다음을 클릭합니다.

  4. 프로토콜 및 포트에서 TCP를 선택한 다음 특정 로컬 포트에 2383을 입력합니다.

  5. 동작에서 연결 허용을 클릭하고 다음을 클릭합니다.

  6. 프로필에서 적용되지 않는 네트워크 위치의 선택을 모두 취소하고 다음을 클릭합니다.

  7. 이름에 이 규칙을 설명하는 이름(예: SQL Server Analysis Services(tcp-in) 2383)을 입력하고 마침을 클릭합니다.

  8. 원격 연결이 설정되어 있는지 확인하려면 다른 컴퓨터에서 SQL Server Management Studio 또는 Excel을 열고 서버 이름에 서버의 네트워크 이름을 지정하여 Analysis Services에 연결합니다.

    [!참고]

    서버에 대한 액세스 권한을 부여할 때까지 다른 사용자는 해당 서버에 액세스하지 못합니다. 자세한 내용은 사용자 액세스 부여를 참조하십시오.

Netsh AdvFirewall 구문

  • 다음 명령은 TCP 포트 2383에서 들어오는 요청을 허용하는 인바운드 규칙을 만듭니다.

    netsh advfirewall firewall add rule name="SQL Server Analysis Services inbound on TCP 2383" dir=in action=allow protocol=TCP localport=2383 profile=domain
    

Analysis Services의 명명된 인스턴스에 대한 Windows 방화벽 액세스 구성

Analysis Services의 명명된 인스턴스는 고정 포트 또는 동적으로 할당된 포트에서 수신 대기할 수 있습니다. 이러한 포트에서 SQL Server Browser 서비스는 연결 시 서비스의 현재 연결 정보를 제공합니다.

다음과 같은 방법을 선택하여 Analysis Services의 명명된 인스턴스에 대한 원격 액세스를 설정할 수 있습니다.

  • 고정 포트를 사용하고 Windows 방화벽에서 해당 포트의 차단을 해제합니다. 서버에 연결하는 형식은 <servername>:<portnumber>입니다.

  • 동적 포트 할당 및 SQL Server Browser 서비스를 사용합니다. Windows 방화벽에서 SQL Server Browser 서비스에 사용되는 포트를 차단 해제합니다. 서버에 연결하는 형식은 <servername>\<instancename>입니다.

  • 고정 포트 및 SQL Server Browser 서비스를 함께 사용합니다. 이 방법에서는 동적 포트 할당 방법과 동일하게 <servername>\<instancename> 형식을 사용하여 연결할 수 있습니다. 단, 이 경우 서버가 고정 포트에서 수신합니다. 이 시나리오에서 SQL Server Browser 서비스는 고정 포트에서 수신하는 Analysis Services 인스턴스에 이름 확인을 제공합니다. 이 방법을 사용하려면 고정 포트에서 수신하도록 서버를 구성하고, 해당 포트에 대한 액세스 및 SQL Server Browser 서비스에 사용되는 포트에 대한 액세스를 차단 해제합니다.

SQL Server Browser 서비스는 기본 인스턴스가 아닌 명명된 인스턴스에서만 사용됩니다. 이 서비스는 SQL Server 기능을 명명된 인스턴스로 설치할 때마다 자동으로 설치되고 사용되도록 설정됩니다. SQL Server Browser 서비스가 필요한 방법을 선택한 경우 해당 서비스가 서버에서 사용되도록 설정되어 있고 시작되었는지 확인해야 합니다.

SQL Server Browser 서비스를 사용할 수 없는 경우에는 고정 포트를 할당해야 합니다. SQL Server Browser 서비스를 사용하지 않는 모든 클라이언트 연결은 연결 문자열에 포트 번호를 포함해야 합니다(예: AW-SRV01:54321).

옵션 1: 동적 포트 할당을 사용하고 SQL Server Browser 서비스에 대한 액세스를 차단 해제합니다.

Analysis Services의 명명된 인스턴스에 대한 동적 포트 할당은 서비스가 시작될 때 MSOLAP$InstanceName에 의해 설정됩니다. 기본적으로 서비스는 찾은 포트 번호 중 첫 번째로 사용 가능한 포트 번호를 사용합니다(서비스가 다시 시작될 때마다 다른 포트 번호 사용).

인스턴스 이름 확인은 SQL Server Browser 서비스에서 처리합니다. 명명된 인스턴스에 동적 포트 할당을 사용하는 경우에는 항상 SQL Server Browser 서비스에 대해 TCP 포트 2382를 차단 해제해야 합니다.

[!참고]

SQL Server Browser 서비스는 데이터베이스 엔진 및 Analysis Services에 대해 각각 UDP 포트 1434와 TCP 포트 2382에서 수신합니다. SQL Server Browser 서비스에 대해 UDP 포트 1434의 차단을 이미 해제한 경우에도 Analysis Services에 대해 TCP 포트 2382의 차단을 해제해야 합니다.

고급 보안이 포함된 Windows 방화벽

  1. Windows 7 또는 Windows Vista에서는 제어판의 시스템 및 보안을 클릭하고 Windows 방화벽을 선택한 다음 고급 설정을 클릭합니다. Windows Server 2008 또는 2008 R2에서는 관리 도구를 열고 고급 보안이 포함된 Windows 방화벽을 클릭합니다.

  2. SQL Server Browser 서비스에 대한 액세스 차단을 해제하려면 인바운드 규칙을 마우스 오른쪽 단추로 클릭한 후 새 규칙을 클릭합니다.

  3. 규칙 유형에서 포트를 클릭하고 다음을 클릭합니다.

  4. 프로토콜 및 포트에서 TCP를 선택한 다음 특정 로컬 포트에 2382을 입력합니다.

  5. 동작에서 연결 허용을 클릭하고 다음을 클릭합니다.

  6. 프로필에서 적용되지 않는 네트워크 위치의 선택을 모두 취소하고 다음을 클릭합니다.

  7. 이름에 이 규칙을 설명하는 이름(예: SQL Server Browser 서비스(tcp-in) 2382)을 입력하고 마침을 클릭합니다.

  8. 원격 연결이 설정되어 있는지 확인하려면 다른 컴퓨터에서 SQL Server Management Studio 또는 Excel을 열고 서버의 네트워크 이름 및 인스턴스 이름을 <servername>\<instancename> 형식으로 지정하여 Analysis Services에 연결합니다. 예를 들어 서버 이름은 AW-SRV01이고 인스턴스 이름은 Finance인 경우 네트워크 서버 이름은 AW-SRV01\Finance가 됩니다.

옵션 2: 명명된 인스턴스에 고정 포트 사용

고정 포트를 할당한 다음 해당 포트에 대한 액세스 차단을 해제할 수도 있습니다. 이 방법을 사용하면 프로그램 실행 파일에 대한 액세스를 허용하는 경우보다 감사 기능의 효율성이 더 높아집니다. 이러한 이유 때문에 Analysis Services 인스턴스에 액세스하기 위한 방법으로 고정 포트를 사용하도록 권장됩니다.

고정 포트를 할당하려면 이 항목의 Use a fixed port for a default or named instance of Analysis Services에 있는 지침을 따르고 이 섹션으로 돌아와 포트를 차단 해제하십시오.

고급 보안이 포함된 Windows 방화벽

  1. Windows 7 또는 Windows Vista에서는 제어판의 시스템 및 보안을 클릭하고 Windows 방화벽을 선택한 다음 고급 설정을 클릭합니다. Windows Server 2008 또는 2008 R2에서는 관리 도구를 열고 고급 보안이 포함된 Windows 방화벽을 클릭합니다.

  2. Analysis Services에 대한 액세스 차단을 해제하려면 인바운드 규칙을 마우스 오른쪽 단추로 클릭한 후 새 규칙을 클릭합니다.

  3. 규칙 유형에서 포트를 클릭하고 다음을 클릭합니다.

  4. 프로토콜 및 포트에서 TCP를 선택한 다음 특정 로컬 포트에 고정 포트를 입력합니다.

  5. 동작에서 연결 허용을 클릭하고 다음을 클릭합니다.

  6. 프로필에서 적용되지 않는 네트워크 위치의 선택을 모두 취소하고 다음을 클릭합니다.

  7. 이름에 이 규칙을 설명하는 이름(예: SQL Server Analysis Services on port 54321)을 입력하고 마침을 클릭합니다.

  8. 원격 연결이 설정되어 있는지 확인하려면 다른 컴퓨터에서 SQL Server Management Studio 또는 Excel을 열고 서버의 네트워크 이름 및 포트 번호를 <servername>:<portnumber> 형식으로 지정하여 Analysis Services에 연결합니다.

Netsh AdvFirewall 구문

  • 다음 명령은 SQL Server Browser용 TCP 2382를 차단 해제하고 Analysis Services 인스턴스에 대해 지정한 고정 포트의 차단을 해제하는 인바운드 규칙을 만듭니다. 해당 명령 중 하나를 실행하여 명명된 Analysis Services 인스턴스에 대한 액세스를 허용할 수 있습니다.

    이 예제 명령에서 포트 54321은 고정 포트입니다. 이 포트를 시스템에서 실제로 사용하는 포트로 바꾸십시오.

    netsh advfirewall firewall add rule name="SQL Server Analysis Services (tcp-in) on 54321" dir=in action=allow protocol=TCP localport=54321 profile=domain
    
    netsh advfirewall firewall add rule name="SQL Server Browser Services inbound on TCP 2382" dir=in action=allow protocol=TCP localport=2382 profile=domain
    

Analysis Services의 기본 인스턴스 및 명명된 인스턴스에 대해 고정 포트 사용

이 섹션에서는 고정 포트에서 수신하도록 Analysis Services를 구성하는 방법에 대해 설명합니다. Analysis Services를 명명된 인스턴스로 설치한 경우 고정 포트를 사용하는 것이 일반적이지만 비즈니스 또는 보안 요구 사항에 따라 기본이 아닌 포트 할당을 사용해야 하는 경우에도 이 방법을 사용할 수 있습니다.

고정 포트를 사용하면 서버 이름 뒤에 포트 번호를 추가해야 하므로 기본 인스턴스에 대한 연결 구문이 변경됩니다. 예를 들어 SQL Server Management Studio에서 포트 54321에서 수신하는 기본 로컬 Analysis Services 인스턴스에 연결하는 경우 Management Studio의 '서버에 연결' 대화 상자에 서버 이름으로 localhost:54321을 입력해야 합니다.

명명된 인스턴스를 사용하는 경우 서버 이름 지정 방법을 변경하지 않고 고정 포트를 할당할 수 있습니다(즉, <servername\instancename>을 사용하여 고정 포트에서 수신 대기하는 명명된 인스턴스에 연결할 수 있음). SQL Server Browser 서비스가 실행되고 있으며 해당 서비스가 수신 대기 중인 포트를 차단 해제한 경우에만 이 방법이 가능합니다. SQL Server Browser 서비스는 <servername\instancename>에 기반한 고정 포트로의 리디렉션을 제공합니다. 고정 포트에서 수신 대기하는 SQL Server Browser 서비스 및 Analysis Services의 명명된 인스턴스 모두에 대해 포트를 열기만 하면 SQL Server Browser 서비스는 명명된 인스턴스에 대한 연결을 확인합니다.

  1. 사용할 TCP/IP 포트를 결정합니다.

    사용하지 않아야 하는 예약된 포트와 등록된 포트의 목록을 보려면 포트 번호(Port Numbers)(IANA)를 참조하십시오. 시스템에서 이미 사용 중인 포트의 목록을 보려면 명령 프롬프트 창을 열고 netstat –a –p TCP를 입력하여 시스템에서 열려 있는 TCP 포트의 목록을 표시합니다.

  2. 사용할 포트를 결정한 후 SQL Server Management Studio에서 Analysis Services 인스턴스의 일반 속성 페이지에서나 msmdsrv.ini 파일에서 Port 구성 설정을 편집하여 포트를 지정합니다.

  3. 서비스를 다시 시작합니다.

  4. 지정한 TCP 포트의 차단을 해제하도록 Windows 방화벽을 구성합니다. 또는 명명된 인스턴스에 고정 포트를 사용하는 경우에는 해당 인스턴스에 대해 지정한 TCP 포트를 차단 해제하고 SQL Server Browser 서비스에 대해 TCP 포트 2382를 차단 해제합니다.

  5. Management Studio에서 로컬로 연결한 다음 다른 컴퓨터의 클라이언트 응용 프로그램에서 원격으로 연결하여 확인합니다. Management Studio를 사용하려면 <servername>:<portnumber> 형식으로 서버 이름을 지정하여 Analysis Services 기본 인스턴스에 연결합니다. 명명된 인스턴스의 경우 서버 이름을 <servername>\<instancename>으로 지정합니다.

Analysis Services 클러스터에 대한 포트 구성

네트워크 카드가 여러 개 있는 컴퓨터에서 Analysis Services는 지정한 포트를 사용하여 모든 IP 주소에서 수신 대기합니다. 클러스터형 인스턴스에서 Analysis Services는 클러스터 그룹의 모든 IP 주소에서 수신 대기하지만 TCP 포트 2383만 사용합니다. 클러스터형 인스턴스에 대해서는 대체 고정 포트를 지정할 수 없습니다.

PowerPivot for SharePoint에 대한 포트 구성

PowerPivot for SharePoint를 설치한 경우에는 Windows 방화벽에서 포트를 열 필요가 없습니다. PowerPivot for SharePoint 설치에서는 PowerPivot 시스템 서비스가 같은 컴퓨터에 함께 설치된 로컬 SQL Server Analysis Services(PowerPivot) 서비스 인스턴스에 대한 독점적인 사용권을 가집니다. PowerPivot 시스템 서비스는 네트워크 연결이 아닌 로컬 연결을 사용하여 SharePoint 서버의 PowerPivot 데이터를 로드, 쿼리 및 처리하는 로컬 Analysis Services 엔진 서비스에 액세스합니다. 클라이언트 응용 프로그램에 PowerPivot 데이터를 요청하면 요청은 SharePoint 설치 프로그램이 연 포트를 통해 라우팅됩니다(즉, SharePoint – 80, SharePoint 중앙 관리 v4, SharePoint 웹 서비스 및 SPUserCodeV4에 대한 액세스를 허용하도록 인바운드 규칙이 정의됨). PowerPivot 웹 서비스는 SharePoint 팜 내부에서 실행되므로 SharePoint 팜의 PowerPivot 데이터에 원격 액세스하기 위해서는 SharePoint 방화벽 규칙만으로도 충분합니다.