방법: 데이터베이스 엔진 액세스에 대한 Windows 방화벽 구성
방화벽 시스템은 컴퓨터 리소스에 대한 무단 액세스를 방지합니다. 방화벽을 통해 SQL Server 데이터베이스 엔진의 인스턴스에 액세스하려면 SQL Server를 실행하는 컴퓨터에서 액세스를 허용하도록 방화벽을 구성해야 합니다.
기본 Windows 방화벽 설정에 대한 자세한 내용과 데이터베이스 엔진, Analysis Services, Reporting Services 및 Integration Services에 영향을 주는 TCP 포트에 대한 설명은 SQL Server 액세스를 허용하도록 Windows 방화벽 구성 및 인터넷으로 SQL Server에 연결을 참조하십시오. 사용할 수 있는 방화벽 시스템은 여러 가지가 있습니다. 사용 중인 시스템에 해당하는 설명은 방화벽 설명서를 참조하십시오.
중요 |
---|
방화벽의 포트를 열면 서버가 악의적인 공격에 노출될 수 있습니다. 포트를 열기 전에 방화벽 시스템을 잘 이해해야 합니다. 자세한 내용은 SQL Server 설치에 대한 보안 고려 사항을 참조하십시오. |
액세스를 허용하는 주요 단계는 다음과 같습니다.
특정 TCP/IP 포트를 사용하도록 데이터베이스 엔진을 구성합니다. 데이터베이스 엔진의 기본 인스턴스에서는 포트 1433을 사용하지만 이 포트는 변경할 수 있습니다. SQL Server Express 인스턴스, SQL Server Compact 3.5 SP1 및 데이터베이스 엔진의 명명된 인스턴스에서는 동적 포트를 사용합니다. 특정 포트를 사용하도록 이러한 인스턴스를 구성하려면 방법: 특정 TCP 포트로 수신하도록 서버 구성(SQL Server 구성 관리자)을 참조하십시오.
권한 있는 사용자 또는 컴퓨터에 해당 포트에 대한 액세스를 허용하도록 방화벽을 구성합니다.
[!참고]
SQL Server Browser 서비스를 사용하면 사용자가 포트 번호를 몰라도 포트 1433에서 수신하지 않는 데이터베이스 엔진 인스턴스에 연결할 수 있습니다. SQL Server Browser를 사용하려면 UDP 포트 1434를 열어야 합니다. 가장 안전한 환경으로 승격하려면 SQL Server Browser 서비스를 중지하고 해당 포트 번호를 사용하여 연결하도록 클라이언트를 구성합니다.
[!참고]
기본적으로 Microsoft Windows XP 서비스 팩 2에서는 포트 1433을 닫아 인터넷 컴퓨터가 사용자 컴퓨터의 기본 SQL Server 인스턴스에 연결할 수 없도록 하는 Windows 방화벽을 사용합니다. 포트 1433을 다시 열 때까지 TCP/IP를 사용하여 기본 인스턴스에 연결할 수 없습니다. Windows XP 방화벽 구성을 위한 기본적인 단계는 다음 절차에서 볼 수 있습니다. 자세한 내용은 Windows 설명서를 참조하십시오.
고정 포트에서 수신하도록 SQL Server를 구성하고 포트를 여는 대신 SQL Server 실행 파일(Sqlservr.exe)을 차단된 프로그램의 예외로 표시할 수 있습니다. 동적 포트를 계속 사용하려는 경우 이 방법을 사용합니다. 이렇게 하면 하나의 SQL Server 인스턴스에만 액세스할 수 있습니다.
다음 절차에서는 현재 네트워크 위치 프로필에 대한 방화벽만 구성하는 제어판의 Windows 방화벽 항목을 사용하여 Windows 방화벽을 구성합니다. Windows 방화벽은 고급 보안이 설정된 Windows 방화벽 MMC(Microsoft Management Console) 스냅인 및 netsh 명령줄 도구를 사용하여 구성할 수도 있습니다. 이러한 도구에 대한 자세한 내용은 SQL Server 액세스를 허용하도록 Windows 방화벽 구성을 참조하십시오.
Windows 방화벽에서 TCP 액세스용 포트를 열려면
제어판에서 네트워크 연결을 열고 활성 연결을 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다.
고급 탭을 클릭한 다음 Windows 방화벽 설정을 클릭합니다.
Windows 방화벽 대화 상자에서 예외 탭을 클릭한 다음 포트 추가를 클릭합니다.
포트 추가 대화 상자에서 이름 입력란에 SQL Server<instance name>을 입력합니다.
포트 번호 입력란에 데이터베이스 엔진 인스턴스의 포트 번호를 입력합니다. 예를 들어 기본 인스턴스의 포트 번호는 1433입니다.
TCP를 선택한 다음 확인을 클릭합니다.
SQL Server Browser 서비스를 노출하는 포트를 열려면 포트 추가를 클릭하고 이름 입력란에 SQL Server Browser를 입력합니다. 포트 번호 입력란에 1434를 입력하고 UDP를 선택한 다음 확인을 클릭합니다.
[!참고]
방화벽을 통해 명명된 파이프에 액세스할 수 있도록 하려면 방화벽을 통한 파일 및 프린터 공유도 설정해야 합니다.
Windows 방화벽 및 속성 대화 상자를 닫습니다.
[!참고]
특정 프로그램에 대한 액세스 허용 및 특정 IP 주소나 네트워크 서브넷에 대한 액세스 제한과 같은 추가 옵션을 설정하려면 Windows 방화벽 대화 상자에서 프로그램 추가를 클릭합니다. 자세한 내용은 Windows 설명서를 참조하십시오.
Windows 방화벽을 통해 프로그램에 액세스하려면
Windows 방화벽 대화 상자의 예외 탭에서 프로그램 추가를 클릭합니다.
찾아보기를 클릭하여 방화벽을 통해 액세스할 SQL Server 인스턴스를 찾은 다음 열기를 클릭합니다. 기본적으로 SQL Server는 C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\Sqlservr.exe에 있습니다.
Windows 방화벽 프로그램을 닫으려면 확인을 두 번 클릭합니다.
SQL Server Management Studio를 사용하여 정적 포트를 구성하고 방화벽을 열고 데이터베이스 엔진에 연결하는 방법에 대한 간단한 자습서는 자습서: 데이터베이스 엔진 시작을 참조하십시오.