ISA Server 2006 보안을 위한 가이드

Alan Maddison

 

한 눈에 보기:

  • 서버 보안을 위한 최선의 방법
  • 보안 구성 마법사 설정
  • 보안 구성 마법사 따라하기
  • 관리자 역할 할당

목차

서버 보호
보안 구성 마법사 설정
SCW 실행
관리자 역할

많은 IT 전문가들이 자신들의 기술 자산을 보호하기 위해 ISA Server 2006(Internet Security and Acceleration Server 2006)을 사용하면서도 ISA Server 자체를 보호하기 위한 몇 가지 추가 조치를 취하는 데는 인색한 것 같습니다.

최근에 ISA Server 2006을 설치했다면 설치를 완료한 다음 수행할 작업에 대한 알림을 기억할 것입니다. 아쉽게도 IT 전문가 중 많은 수가 이러한 중요한 단계를 수행하지 않거나 시간 여유가 없어서 이러한 목록에 있는 작업이 아예 수행되지 않는 경우가 많습니다.

그러나 현재의 끊임없이 변화하는 보안 환경에서는 ISA Server를 올바르게 보호하지 않는 이러한 실수를 더 이상 용납할 수 없게 되었습니다. 다행스럽게도 ISA Server를 보호하는 데 사용되는 도구가 크게 개선되었습니다. 이제는 더 이상 ISA Server 2004 이전 버전에 있던 여러 보안 강화 마법사를 사용할 필요가 없으며 Windows Server® 2003과 함께 제공되는 SCW(보안 구성 마법사)와 같은 잘 정의된 단계와 도구를 사용할 수 있습니다.

이 기사에서는 서버를 보호하기 위한 일반적인 최선의 방법을 간단하게 다시 살펴보는 기회를 마련했습니다. 보안 구성 마법사를 사용하여 ISA Server의 노출 영역을 줄이고 관리자 역할을 사용하여 ISA Server에 대한 액세스를 제한하여 ISA Server 자체의 보안을 강화하기 위한 단계별 방법을 살펴보겠습니다.

서버 보호

서버가 데이터 센터에 있든지 또는 사무실 바로 옆에 있든지 관계없이 서버를 보호하기 위한 다양한 요소와 최선의 방법이 있습니다. 이러한 최선의 방법과 여러분의 조직에 맞게 이러한 요구 사항을 구현하는 방법을 이해하는 것은 관리자의 책임입니다. 최근 보안에 대한 중요성이 더욱 강조됨에 따라 이러한 핵심 요구 사항을 구성하는 작업에 대해서는 상당히 익숙해졌습니다. 따라서 이러한 부분에 대해 장황하게 설명하기보다는 간단한 개요만 살펴보겠습니다.

여러분의 환경을 보호하는 첫 번째 단계는 서버를 물리적으로 보호하는 것입니다. 실질적으로 이것은 서버에 대한 물리적인 액세스를 제한해야 한다는 의미입니다. 작은 환경에서는 서버실의 문을 잠그고 출입하는 사용자의 수를 최소한으로 유지하는 것이 이에 해당합니다. 이보다 큰 환경에서도 기본적인 요구 사항은 거의 동일하지만 구현에 있어서는 더 정교한 방법이 필요합니다. 예를 들어 전자 모니터링을 사용하는 회사가 많습니다. 전자 모니터링을 사용하면 서버 위치에 대한 접근을 감사하고 업무 책임에 따라 개별 랙이나 데이터 보관소에 대한 액세스를 제한할 수도 있습니다.

ISA Server나 ISA 구성 저장소 서버의 도난이나 물리적인 손상을 처리할 때는 고려해야 할 몇 가지 고유한 요소가 있습니다. 도난당한 서버에서 입수한 정보로 여러분의 환경에 있는 모든 ISA Server와 트래픽(암호화된 트래픽 포함)을 손상시키는 것이 가능할 수 있습니다.

서버가 손상되었거나 도난된 것으로 의심되는 상황에서는 먼저 서버가 현장에 있는 경우 영향을 받는 서버를 즉시 제거하고 증거를 확보하기 위한 표준 절차를 수행해야 합니다. 이러한 단계를 수행한 다음에는 모든 자격 증명 정보를 변경하는 프로세스를 시작해야 합니다. 서버에 설치된 모든 인증서를 해지하고 미리 공유한 키와 공유 암호를 모두 수정해야 합니다. 복제 구성 저장소 서버를 유지하는 경우에는 손상된 서버와 관련된 모든 데이터를 제거해야 합니다.

서버를 물리적으로 보호한 후의 다음 단계는 가상화 계층, OS 및 응용 프로그램을 포함하여 모든 소프트웨어를 패치할 수 있는 구조적인 방법을 마련하는 것입니다. 패치, 업그레이드 및 핫픽스를 정기적으로 검토하고 적용해야 합니다. 중요한 것은 프로덕션 시스템에 적용하기 전에 이러한 업데이트를 테스트해야 한다는 것입니다. 응용 프로그램이나 데이터 무결성을 손상시키는 문제를 일으킨다면 패치는 하지 않는 것이 나을 것입니다.

데이터 무결성이 손상된 경우에는 백업을 사용해야 합니다. 여기에는 인프라를 보호하기 위한 다른 핵심 요소가 있습니다. 필요할 때 신속하고 완벽하게 데이터를 복원하지 못하면 가동 중지 시간이 작업에 심각한 영향을 주어 공격 피해가 증가합니다.

고려할 다른 두 요소로 모니터링과 감사가 있습니다. 응용 프로그램과 시스템 모니터링을 중요한 부분으로 다루어야 바람직한 보안 계획을 수립할 수 있습니다. 로그, 특히 보안 관련 로그를 조사하는 데 시간을 충분하게 투자하지 않으면 피해가 발생하기 전에 침입 시도를 발견할 수 있는 확률이 떨어집니다.

감사 역시 비슷하게 중요합니다. 형식을 갖추고 감사를 실행하는 조직이 많으며 특히 대규모 환경에서는 법률에 의해 요구되는 경우도 많습니다. 노력이 충분한 효과를 거두기 위해서는 어떤 환경에서든지 사용자의 자산을 보호하기 위한 제어와 방법을 정기적으로 검토하는 것이 중요합니다.

참고로 ISA Server 2006은 Windows Server® 2003에서 실행되므로 Windows Server 2003 보안 가이드를 검토하고 필요한 권장 사항을 구현하는 것도 중요합니다. Windows Server 2003 보안 가이드는 microsoft.com/technet/security/prodtech/win­dow­sserver2003/w2003hg/sgch00.mspx에서 볼 수 있습니다.

Microsoft는 현재 기본 보안 정책 템플릿을 구현하도록 권장하고 있지만 이를 위해서는 인터넷 프로토콜 보안(IPsec) 필터를 구현하고 있지 않아야 합니다.

보안 구성 마법사 설정

그렇다면 ISA Server를 더 안전하게 하려면 어떻게 해야 할까요? ISA를 보호하기 위한 기본 도구는 SCW이며 이를 사용하여 노출 영역을 줄일 수 있습니다. SCW는 서버의 서비스, 네트워크 보안, 레지스트리 및 감사 정책을 대상으로 보안 정책을 만들고 필요한 서비스와 기능만 포함하도록 시스템을 구성합니다. 중요한 것은 사용하려는 ISA Server 서비스만 구성해야 한다는 것입니다. 예를 들어 웹 프록시 서비스는 기본적으로 설정되어 있지만 사용할 계획이 없다면 이 기능을 해제해야 합니다. 따라서 SCW에서 제공하는 구성 옵션에 주의를 기울여야 합니다.

SCW는 Windows Server 2003에서 기본적으로 설치되지 않습니다. 따라서 첫 번째 단계는 프로그램 추가/제거 제어판에서 Windows® 구성 요소 추가/제거 애플릿을 사용하여 SCW를 설치하는 것입니다. 참고로 Windows Server 2008에서는 SCW가 기본적으로 설치됩니다. Windows 구성 요소 화면이 로드되면 아래로 스크롤하고 SCW에 해당하는 확인란을 선택합니다.

설치가 완료되면 관리 도구에서 SCW를 사용할 수 있습니다. 마법사를 사용하기 전에 ISA Server 2006용 업데이트(go.microsoft.com/fwlink/?LinkId=122532)를 다운로드하여 SCW를 업데이트해야 합니다. 이 업데이트는 ISA Server 2006 Standard Edition, ISA Server 2006 Enterprise Edition, 그리고 ISA Server 구성 저장소 서버용 역할을 추가합니다.

업데이트를 다운로드한 다음에는 패키지를 실행하고 파일 압축을 해제해야 합니다. 파일 압축을 해제한 다음에는 isa.xml과 isaloc.xml이라는 .xml 파일 두 개를 SCW의 kbs 폴더로 복사합니다. Windows Server 기본 설치의 경우 이 폴더는 c:\windows\­security\msscw\kbs입니다.

파일을 복사할 때 같은 이름의 기존 파일을 덮어쓸 것인지 묻는 메시지가 표시됩니다. 이 두 파일은 ISA Server 2004용이며 덮어쓰기 전에 파일을 백업하는 것이 좋습니다. 마지막 단계는 isascwhlp.dll 파일을 bin 폴더로 복사하는 것이며 이 폴더는 일반적으로 c:\windows\­security\msscw\bin에 있습니다. SCW에 ISA 역할을 추가하면 설치를 시작할 준비가 됩니다.

Microsoft는 일반적으로 ISA Server 구성을 완료한 다음 SCW를 실행하도록 권장하고 있습니다. Enterprise Edition을 실행하는 경우 여기에는 모든 배열 및 모든 배열 구성원의 구성도 포함됩니다.

SCW 실행

첫 번째 단계는 관리 도구에서 SCW를 시작하는 것입니다. SCW 프로세스를 완료하려면 관리 권한이 필요합니다.

그림 1은 마법사의 첫 번째 화면입니다. 이 화면에 표시되는 텍스트에서 "서버에서 수신하는 인바운드 포트를 검색합니다." 부분을 보면 이 프로세스를 시작하기 전에 ISA Server와 배열을 완전하게 구성하는 것이 중요한 이유를 알 수 있습니다.

fig01.gif

그림 1 보안 구성 마법사 시작 (더 크게 보려면 이미지를 클릭하십시오.)

환경을 완전히 구성하지 않은 경우에는 ISA 구성을 완료한 후에 SCW 구성을 수정해야 하는 경우가 많습니다. 그림 2의 다음 화면에서는 어떤 작업을 수행할 것인지 선택할 수 있습니다. 새 보안 정책 만들기 옵션을 선택합니다.

fig02.gif

그림 2 새 보안 정책 만들기 (더 크게 보려면 이미지를 클릭하십시오.)

다음은 정책의 기준으로 사용할 서버를 선택하라는 메시지가 표시됩니다. 여기에서는 새 정책을 만드는 것이므로 기본 선택은 SCW를 실행하는 컴퓨터를 사용하는 것입니다. 그러나 이 동작은 이전 화면에서 수행하도록 선택한 작업에 따라 달라집니다. 기본적으로는 기준으로 사용하려는 서버에 SCW를 설치하는 것이 최선의 방법으로서 권장됩니다. 대상 서버에 SCW가 설치되지 않으면 정책을 완료하는 데 사용되는 정보가 누락됩니다. 따라서 작업을 수월하게 하려면 기준으로 사용하려는 서버에서 SCW를 설치하고 실행하십시오.

다음을 누르면 SCW는 사용자의 ISA Server 분석을 시작합니다. 이 분석에는 서버에 설치된 역할, 서버에 설치될 가능성이 높은 역할, 설치된 서비스, 그리고 기본적인 네트워킹 정보 확인이 포함됩니다. 처리가 완료되면 구성 데이터베이스 보기를 선택하여 데이터베이스를 볼 수 있습니다. 구성 데이터베이스에는 모든 지원되는 서버 역할, 클라이언트 기능 및 포트를 포함하여 많은 정보가 포함됩니다.

그런 다음 SCW는 역할 단위 서비스 구성의 단계별 안내를 시작합니다. 다음을 눌러 다음 화면으로 이동하면 그림 3과 같이 서버 역할을 선택할 수 있습니다. SCW가 수행하는 초기 검사는 신뢰할 수 있으며 올바른 서버 역할이 식별되어 있음을 알 수 있을 것입니다. 그러나 충분히 확인하고 불필요한 역할을 모두 제거하는 것이 매우 중요합니다. 그리고 서버가 여러 역할을 수행하는 경우에는 해당하는 역할이 모두 선택되어 있는지 확인합니다.

fig03.gif

그림 3 서버 역할 지정 (더 크게 보려면 이미지를 클릭하십시오.)

ISA Server 2006 Enterprise Edition을 실행하는 경우에는 구성 저장소 서버에 대해서도 고려해야 합니다. ISA Server로 작동하는 서버에 구성 저장소 서버를 설치한 경우 구성 저장소 서버 역할도 선택해야 합니다. 이것은 권장되는 최선의 방법에는 위배되지만 이러한 사례는 자주 볼 수 있습니다. 실제로는 ISA Server 2006 역할만 있는 서버의 두 역할을 호스트하는 서버의 기준 검사를 사용해서는 안 됩니다.

다음은 서버의 클라이언트 기능을 선택하라는 메시지가 표시됩니다. 다른 말로 하면 서버에서 요구되는 서비스를 지정해야 합니다. 예를 들어 거의 모든 서버에 DNS 클라이언트가 필요하며 서버가 도메인의 구성원인 경우 도메인 구성원 기능이 필요합니다.

여기까지 수행하면 관리 및 기타 옵션 화면이 표시됩니다. 여기에서는 서비스를 사용하거나 네크워크 연결에 의존하는 응용 프로그램, 관리 및 운영 체제 옵션을 지정합니다. 이 시점까지 선택되지 않는 서비스는 해제됩니다. 선택하고 다음을 누른 후에는 허용하려는 추가 서비스를 선택할 수 있는 옵션이 제공됩니다.

다음은 지정되지 않은 서비스가 처리되는 방법을 지정하는 단계입니다. 여기에서는 기본 데이터베이스에 포함되지 않거나 기준 서버에 설치되지 않은 서비스가 정책을 적용할 때 발견된 경우 어떻게 처리할지 정의합니다. 일반적으로는 최선의 방법에 따라 지정되지 않은 서비스를 해제하여 예상하지 못한 공격 방향을 제한해야 합니다. 아쉽게도 이 옵션은 사용자의 서버가 서로 상당히 다른 경우에는 좋지 않은 결과를 초래합니다. 향후에 응용 프로그램이나 네트워크 서비스를 추가할 때도 이 설정에 대해 기억해야 합니다.

그림 4에 나와 있는 마법사의 다음 섹션에서는 SCW에 의해 수정된 서비스를 검토할 수 있습니다. 이 비교 화면에서는 현재 상태와 정책을 적용한 후의 수정된 서비스 상태를 비교하여 보여 줍니다.

fig04.gif

그림 4 서비스 변경 내용 검토 및 확인 (더 크게 보려면 이미지를 클릭하십시오.)

변경될 서비스를 확인한 다음에는 네트워크 보안 섹션으로 진행합니다. 이곳은 SCW에서 사용자가 Windows 방화벽과 IPsec 설정을 수정할 수 있도록 해 주는 위치입니다. 그러나 여기에서는 ISA Server 2006을 구성하는 것이므로 그림 5에 나와 있는 것처럼 이 섹션을 건너 뛰어야 합니다.

fig05.gif

그림 5 네트워크 보안 설정 건너뛰기 (더 크게 보려면 이미지를 클릭하십시오.)

마법사는 이제 네트워크 인증 방법과 보안에 초점을 맞추는 레지스트리 설정 구성으로 이동합니다. 이 섹션의 첫 번째 화면은 서버 메시지 블록(SMB) 서명과 연관되어 있습니다. SMB 프로토콜은 핵심 Microsoft 네트워킹 프로토콜이며 서명된 통신에 이러한 설정을 사용하여 메시지 가로채기(man-in-the-middle) 공격 위험을 완화할 수 있습니다.

그림 6에 나와 있는 기본 설정은 ISA Server SMB 통신에 대한 높은 수준의 보안을 제공합니다. 그러나 모든 통신을 서명하는 데 따르는 영향을 고려해야 합니다. 여유 CPU 사이클이 없는 경우 두 번째 옵션은 해제해야 합니다. 또한 이 정책이 적용될 모든 서버에 대해서도 생각해야 합니다. 서버의 워크로드가 다양한 경우에는 이 옵션을 선택할지에 대한 지침으로 CPU 사용률이 가장 높은 서버를 사용해야 합니다.

fig06.gif

그림 6 서명된 통신이 필요한지 여부 지정 (더 크게 보려면 이미지를 클릭하십시오.)

다음 화면 집합에서는 ISA Server가 사용할 LMCompatibility 수준을 처리합니다. 이러한 화면 중 첫 번째 화면에서는 세 가지 선택을 제공합니다. Windows 95나 Windows 98과 같은 레거시 Windows 클라이언트가 있거나 액세스 제어에 로컬 계정을 사용하는 경우가 아니라면 도메인 계정이 선택된 기본 선택을 유지해야 합니다.

LMCompatibility 수준을 다루는 두 번째 화면에서는 도메인 컨트롤러에 대한 정보를 제공합니다. Windows NT® 4.0 도메인이 없다면 기본 선택(Windows NT 4.0 서비스 팩 6a 이상 OS)을 그대로 사용할 수 있습니다. 이 대화 상자에서는 또한 시계가 선택한 서버의 시계 옵션과 동기화되도록 선택해야 합니다. 다음을 선택하면 그림 7과 같이 인바운드 LAN Manager(LM) 통신을 위한 몇 가지 추가 구성 옵션이 제공됩니다.

fig07.gif

그림 7 인바운드 인증 방법 지정 (더 크게 보려면 이미지를 클릭하십시오.)

LM­Compatibility 수준과 연관된 세 번째 화면에서는 Windows NT LAN Manager(NTLM) 버전 2가 필요한지 여부와 LM 해시가 저장될지 여부를 결정합니다. 사용자의 환경이 이 구성을 지원하는 경우에는 이 두 옵션을 해제하여 보안을 크게 개선할 수 있으므로 이 두 옵션을 해제해야 합니다. 다음에는 레지스트리 설정 요약이 제공됩니다. 각 항목을 검토하고 정책 설정이 올바른지 확인합니다.

다음은 마법사의 마지막 섹션인 감사로 이동합니다. 이 섹션의 구성 옵션에 대한 한 가지 중요한 사실은 옵션을 롤백할 수 없다는 것입니다. 그러나 감사는 시스템의 기능에는 영향을 주지 않으므로 이 섹션을 건너뛰지 않도록 해야 합니다.

기본 선택인 "성공 작업 감사"는 로그온 실패에 대한 이벤트 로그 항목은 제공하지 않습니다. 그러나 로그온 실패에 대한 정보는 침입 시도에 대한 매우 중요한 단서를 제공하므로 "성공 및 실패 작업 감사"를 선택하는 것이 일반적인 최선의 방법입니다.

이제는 감사 구성을 검토하고 다음을 두 번 눌러 보안 정책을 저장할 수 있습니다. 그림 8에 나와 있는 것처럼 이 화면에 필요한 것은 파일 이름 하나이지만 간단한 설명을 제공할 수도 있습니다. 이 설명은 여러 다른 관리자가 보안 책임을 공유하는 대규모 환경에서 유용하게 사용될 수 있습니다.

fig08.gif

그림 8 보안 정책에 대한 이름 및 설명 제공 (더 크게 보려면 이미지를 클릭하십시오.)

파일을 저장한 다음에는 정책을 즉시 적용하거나 나중에 적용하는 옵션이 제공됩니다. 정책을 나중에 적용하도록 선택하면 프로세스가 완료됩니다. 정책 구성에 문제가 있는 것을 발견하면 감사 설정을 제외하고 정책을 롤백할 수 있습니다.

관리자 역할

ISA Server의 노출 영역을 줄이는 것은 외부 원본으로부터의 위반 가능성을 줄이기 위한 핵심적인 단계입니다. 그러나 ISA Server 내에서 관리자 역할 할당을 검토하여 내부 원본으로부터의 손상 가능성을 제한하는 것 역시 중요합니다. 그림 910에는 관리자 역할 및 연관된 공통 작업의 목록 일부가 나와 있습니다.

그림 9 Standard Edition과 연관된 역할 및 작업

작업 모니터링 감사자 감사자 전체 관리자
대시보드, 경고, 연결, 세션 및 서비스 보기 허용됨 허용됨 허용됨
경고 승인 허용됨 허용됨 허용됨
로그 정보 보기 허용됨 허용됨
경고 정의 만들기 허용됨
보고서 만들기 허용됨 허용됨
세션 및 서비스 중지 및 시작 허용됨 허용됨
방화벽 정책 보기 허용됨 허용됨
방화벽 정책 구성 허용됨
캐시 구성 허용됨
VPN(가상 사설망) 구성 허용됨

그림 10 Enterprise Edition과 연관된 역할 및 작업

작업 배열 모니터링 감사자 배열 감사자 배열 관리자
대시보드, 경고, 연결 및 세션 보기 허용됨 허용됨 허용됨
경고 승인 및 다시 설정 허용됨 허용됨 허용됨
로그 정보 보기 허용됨 허용됨
경고 정의 만들기 - 허용됨
보고서 만들기 허용됨 허용됨
세션 및 서비스 중지 및 시작 허용됨 허용됨
방화벽 정책 보기 허용됨 허용됨
방화벽 정책 구성 허용됨
캐시 구성 허용됨
VPN(가상 사설망) 구성 허용됨
NLB 드레이닝/중지 수행 허용됨 허용됨
로컬 정보 보기(배열 구성원의 레지스트리에서) 허용됨 허용됨
로컬 정보 변경(배열 구성원의 레지스트리에서)

여기에서 알 수 있듯이 ISA Server와 연관된 관리자 작업은 상당히 세분화되어 있습니다. 이를 통해서 사용자의 조직 내에서 수월하게 사용자에게 올바른 역할을 할당할 수 있습니다.

이 밖에도 최소 권한의 개념을 적용하여 역할을 할당하는 것이 최선의 방법이라는 것을 기억해야 합니다. 말하자면 사용자가 작업을 수행하는 데 필요한 최소한의 권한을 부여해야 합니다.

중요한 것은 ISA Server 2006 Standard Edition의 로컬 관리자 그룹의 구성원은 ISA Server 전체 관리자와 같은 권한을 가진다는 것입니다. Enterprise Edition의 경우에는 구성 저장소 관리자 역할이 있는 서버의 로컬 관리자 그룹 구성원은 Enterprise 구성에 대한 완전한 제어를 가집니다. 이것은 ISA Server가 도메인의 구성원인 경우 ISA Server 로컬 관리자 그룹의 구성원인 다른 그룹은 물론이고 Domain Admins 그룹의 구성원을 주의 깊게 검토해야 한다는 것을 의미합니다.

Alan Maddison은 Brocade의 부서인 Strategic Business Systems에서 Microsoft 기술을 전문적으로 담당하는 수석 컨설턴트입니다.