SharePoint Server에 대해 SQL Server 보안 구성

적용 대상:예-img-132013 yes-img-162016 yes-img-192019 yes-img-seSubscription Edition yes-img-sopSharePoint in Microsoft 365

SQL Server를 설치할 때 기본 설정을 적용하면 안전한 데이터베이스가 제공됩니다. 또한 SQL Server 도구와 Windows PowerShell을 사용하여 SharePoint Server 환경용으로 SQL Server에 보안 기능을 더 추가할 수도 있습니다.

중요

이 항목의 보안 단계는 SharePoint 팀에서 완전히 테스트합니다. SharePoint Server 팜에서 SQL Server의 보안을 유지하는 다른 방법도 있습니다. 자세한 내용은 보안 SQL Server 참조하세요.

시작하기 전에

이 작업을 시작하기 전에 서버 팜 보안 방법과 관련한 다음 작업을 검토하십시오.

  • UDP 포트 1434를 차단합니다.

  • SQL Server의 명명된 인스턴스가 TCP 포트 1433 또는 UDP 포트 1434가 아닌 비표준 포트에서 수신 대기하도록 구성합니다.

  • 추가적인 보안을 위해 TCP 포트 1433을 차단하고 기본 인스턴스가 사용하는 포트를 다른 포트로 다시 할당합니다.

  • 서버 팜의 모든 응용 프로그램 서버 및 프런트 엔드 웹 서버에서 SQL Server 클라이언트 별칭을 구성합니다. TCP 포트 1433 또는 UDP 포트 1434를 차단하고 나면 SQL Server를 실행 중인 컴퓨터와 통신하는 모든 컴퓨터에 SQL Server 클라이언트 별칭이 필요합니다.

기본 포트 이외의 포트에서 수신 대기하도록 SQL Server 인스턴스 구성

SQL Server에서는 기본 인스턴스와 모든 명명된 인스턴스에서 사용하는 포트를 다시 할당하는 기능을 제공합니다. SQL Server SQL Server 구성 관리자 사용하여 TCP 포트를 다시 할당합니다. 기본 포트를 변경하면 기본 할당 포트를 알고 있으며 SharePoint 환경을 악용하기 위해 해당 포트를 사용하는 해커가 침입할 수 없도록 환경의 보안 수준을 높일 수 있습니다.

기본 포트 이외의 포트에서 수신 대기하도록 SQL Server 인스턴스를 구성하려면

  1. 이 절차를 수행하는 사용자 계정이 sysadmin 또는 serveradmin 고정 서버 역할의 구성원인지 확인합니다.

  2. SQL Server를 실행하는 컴퓨터에서 SQL Server 구성 관리자를 엽니다.

  3. 탐색 창에서 SQL Server 네트워크 구성을 확장합니다.

  4. 구성할 인스턴스의 해당 항목을 클릭합니다.

    기본 인스턴스는 MSSQLSERVER에 대한 프로토콜로 나열됩니다. 명명된 인스턴스는 명명된_인스턴스에 대한 프로토콜로 표시됩니다.

  5. 프로토콜 이름 열의 주 창에서 TCP/IP를 마우스 오른쪽 단추로 클릭하고 속성을 클릭합니다.

  6. IP 주소 탭을 클릭합니다.

    SQL Server를 실행 중인 컴퓨터에 할당된 모든 IP 주소에 해당하는 항목이 이 탭에 있습니다. 기본적으로 SQL Server는 컴퓨터에 할당된 모든 IP 주소에서 수신 대기합니다.

  7. 기본 인스턴스가 수신 대기하는 포트를 전역 변경하려면 다음 단계를 따릅니다.

    • IPAll을 제외한 모든 IP 주소에 대해 TCP 동적 포트TCP 포트의 값을 모두 지웁니다.

    • IPAll의 경우 TCP 동적 포트에 대한 값을 지웁니다. TCP 포트 필드에 SQL Server 인스턴스가 수신 대기할 포트를 입력합니다. 예를 들어 40000을 입력합니다.

  8. 명명된 인스턴스가 수신 대기하는 포트를 전역 변경하려면 다음 단계를 따릅니다.

    • IPAll을 포함하는 모든 IP 주소에 대해 TCP 동적 포트 값을 모두 지웁니다. 이 필드의 값이 0이면 SQL Server가 IP 주소에 대해 TCP 포트를 사용하는 것입니다. 이 값이 비어 있으면 SQL Server에서 IP 주소에 대해 동적 TCP 포트를 사용하지 않는 것입니다.

    • IPAll을 제외한 모든 IP 주소에 대해 TCP 포트 값을 모두 지웁니다.

    • IPAll의 경우 TCP 동적 포트에 대한 값을 지웁니다. TCP 포트 필드에 SQL Server 인스턴스가 수신 대기할 포트를 입력합니다. 예를 들어 40000을 입력합니다.

  9. 확인을 클릭합니다.

    SQL Server 서비스를 다시 시작해야 변경 내용이 적용된다는 메시지가 표시됩니다. 확인을 클릭합니다.

  10. SQL Server 구성 관리자를 닫습니다.

  11. SQL Server 서비스를 다시 시작하고 SQL Server를 실행 중인 컴퓨터가 앞서 선택한 포트에서 수신 대기하는지 확인합니다.

    이렇게 하려면 SQL Server 서비스를 다시 시작한 후에 이벤트 뷰어 로그를 확인하면 됩니다. 로그에서 다음 이벤트와 같은 정보 이벤트를 찾습니다.

    이벤트 유형: 정보

    이벤트 원본: MSSQL$MSSQLSERVER

    이벤트 범주: (2)

    이벤트 ID: 26022

    날짜: 2008/3/6

    시간: 오후 1:46:11

    사용자: N/A

    컴퓨터: 컴퓨터이름_

    설명:

    서버가 [ 'any' <ipv4>50000]에서 수신하고 있습니다.

  12. 확인: 원하는 경우 사용자가 작업을 올바르게 수행했는지 확인하기 위해 수행해야 하는 단계를 포함합니다.

기본 SQL Server 수신 대기 포트 차단

고급 보안이 포함된 Windows 방화벽은 인바운드 규칙 및 아웃바운드 규칙을 사용하여 들어오고 나가는 네트워크 트래픽을 보호합니다. Windows 방화벽은 들어오는 원하지 않는 네트워크 트래픽을 모두 기본적으로 차단하므로 기본 SQL Server 수신 대기 포트를 명시적으로 차단할 필요가 없습니다. 자세한 내용은 고급 보안이 포함된 Windows 방화벽SQL Server 액세스를 허용하도록 Windows 방화벽 구성을 참조하세요.

수동으로 할당된 포트를 열도록 Windows 방화벽 구성

방화벽을 통해 SQL Server 인스턴스에 액세스하려면 SQL Server를 실행하는 컴퓨터에서 액세스를 허용하도록 방화벽을 구성해야 합니다. 수동으로 할당하는 모든 포트는 Windows 방화벽에서 열어야 합니다.

수동으로 할당된 포트를 열도록 Windows 방화벽을 구성하려면

  1. 이 절차를 수행하는 사용자 계정이 sysadmin 또는 serveradmin 고정 서버 역할의 구성원인지 확인합니다.

  2. 제어판에서 시스템 및 보안을 엽니다.

  3. Windows 방화벽을 클릭한 다음 고급 설정을 클릭하여 고급 보안이 포함된 Windows 방화벽 대화 상자를 엽니다.

  4. 탐색 창에서 인바운드 규칙을 클릭하여 동작 창에 사용 가능한 옵션을 표시합니다.

  5. 새 규칙을 클릭하여 새 인바운드 규칙 마법사를 엽니다.

  6. 마법사를 사용하여 기본 포트 이외의 포트에서 수신 대기하도록 SQL Server 인스턴스 구성에서 정의한 포트에 대한 액세스를 허용하는 데 필요한 단계를 완료합니다.

    참고

    Windows 방화벽을 구성하여 SQL Server를 실행하는 컴퓨터와의 통신을 보호하도록 IPsec(인터넷 프로토콜 보안)를 구성할 수 있습니다. 고급 보안이 있는 Windows 방화벽 대화 상자의 탐색 창에서 연결 보안 규칙을 선택하여 이 작업을 수행합니다.

SQL Server 클라이언트 별칭 구성

SQL Server를 실행 중인 컴퓨터에서 UDP 포트 1434 또는 TCP 포트 1433을 차단하는 경우에는 서버 팜의 다른 모든 컴퓨터에 SQL Server 클라이언트 별칭을 만들어야 합니다. SQL Server 클라이언트 구성 요소를 사용하여 SQL Server에 연결되는 컴퓨터에 대한 SQL Server 클라이언트 별칭을 만들 수 있습니다.

SQL Server 클라이언트 별칭을 구성하려면

  1. 이 절차를 수행하는 사용자 계정이 sysadmin 또는 serveradmin 고정 서버 역할의 구성원인지 확인합니다.

  2. 대상 컴퓨터에서 SQL Server 설치 프로그램을 실행하고 다음과 같은 클라이언트 구성 요소를 설치합니다.

    • 연결 구성 요소

    • 관리 도구

  3. SQL Server 구성 관리자를 엽니다.

  4. 탐색 창에서 SQL Native Client 구성을 클릭합니다.

  5. 주 창의 항목 아래에서 별칭을 마우스 오른쪽 단추로 클릭하고 새 별칭을 선택합니다.

  6. 별칭 - 새 대화 상자의 별칭 이름 필드에 별칭의 이름을 입력합니다. 예를 들어 SharePoint _alias를 입력합니다.

  7. 포트 없음 필드에 데이터베이스 인스턴스의 포트 번호를 입력합니다. 예를 들어 40000을 입력합니다. 프로토콜이 TCP/IP로 설정되어 있는지 확인합니다.

  8. 서버 필드에 SQL Server를 실행 중인 컴퓨터의 이름을 입력합니다.

  9. 적용을 클릭한 다음 확인을 클릭합니다.

  10. 확인: SQL Server 클라이언트 구성 요소를 설치하면 제공되는 SQL Server Management Studio를 사용하여 SQL Server 클라이언트 별칭을 테스트할 수 있습니다.

  11. SQL Server Management Studio를 엽니다.

  12. 서버 이름을 입력하라는 메시지가 표시되면 앞서 만든 별칭 이름을 입력한 다음 연결을 클릭합니다. 제대로 연결되는 경우 원격 데이터베이스에 해당하는 개체가 SQL ServerManagement Studio에 채워집니다.

  13. SQL ServerManagement Studio에서 추가 데이터베이스 인스턴스에 대한 연결을 확인하려면 연결, 데이터베이스 엔진을 차례로 클릭합니다.

참고 항목

기타 리소스

SQL Server 보안 블로그

SQL 취약성 평가

SharePoint 보안: SharePoint 환경에서 SQL Server 강화

데이터베이스 엔진 액세스에 대한 Windows 방화벽 구성

특정 TCP 포트에서 수신 대기하도록 서버 구성(SQL Server 구성 관리자)