웹을 향한 Windows 서버를 보호하는 데 필요한“할 일”은 무엇입니까?


17

현재 웹을 향한 Windows 서버를 배포하기 시작했습니다.

서버를 보호하는 방법이 무엇인지 알고 싶습니다. 어떤 소프트웨어를 사용하고 있습니까?

Linux에서 나는 Fail2ban을 사용하여 bruteforce와 Logwatch가 내 서버에서 일어나는 일에 대한 일일 보고서를 얻지 못하게합니다. Windows에 해당 소프트웨어와 동등한 것이 있습니까? 그렇지 않은 경우 서버를 보호하기 위해 무엇을 사용하도록 권장합니까?


4
아래의 Vlad의 대답은 좋은 출발점입니다. 또한 회사와 웹에 어떤 서비스를 제공하고 있는지 확인하십시오. 규정 / 법은 제쳐두고, 만약 당신이 dinko 웹 앱을 가진 작은 정비소라면 당신은 아주 적은 보안으로 도망 갈 수 있습니다. 중국 사람들이 코드를 얻고 싶어하는 대규모 개발자 상점이라면 사실이 아닙니다
TheCleaner

답변:


19

우선 네트워크 디자인에 대해 생각해야합니다. 내부 네트워크를 보호하기 위해 적어도 하나의 DMZ를 사용하는 것이 좋습니다. 새 2012 서버를 구매하지 않으려는 경우 Windows Server 2008 R2를 공개적으로 사용하는 것이 좋습니다. 2008 R2를 기반으로 웹 서버로 완벽하게 작동하는 Windows 기반 웹 서버가 4 대 이상 있습니다. 다음을 수행하십시오.

  • DMZ 사용 (1 또는 2)
  • 사용하지 않는 서버 역할을 설치하지 마십시오
  • 필요하지 않은 서비스를 중지하십시오
  • 내부 네트워크로만 RDP 포트를 열어야합니다 (필요한 경우).
  • 사용하지 않는 모든 포트를 닫아 두십시오
  • 서버 앞에서 Cisco, Juniper 또는 Checkpoint와 같은 적절한 방화벽 솔루션을 사용하십시오.
  • 서버를 최신 상태로 유지 (적어도 월별 업데이트)
  • 중복 구성 (백업용 서버 2 대 이상 사용)
  • 좋은 모니터링 : Nagios (I like it ;-))

(선택 사항) 웹 서버 및 백업 시스템에 Hyper-V를 사용하십시오. 업데이트가 웹 서비스를 방해하지 않는지 확인하고 업데이트하는 것이 훨씬 쉽습니다. 이 경우 하드웨어 오류가 발생할 경우 중복성을 갖도록 동일한 두 개의 하드웨어 시스템이 필요합니다. 그러나 그것은 아마도 꽤 비쌉니다.

그것이 당신을 돕는 희망!


7

이 공개 Windows 박스에서 어떤 서비스를 제공하고 싶은지 알려 주시면 더 자세한 답변을 드릴 수 있습니다. 예를 들어 IIS, OWA, DNS 등?

박스 자체를 잠 그려면 박스에서 필요하지 않은 추가 서비스 / 역할을 제거하거나 설치하지 말고 vlad의 답변으로 시작하십시오. 여기에는 서버에서 사용해서는 안되는 타사 소프트웨어 (Acrobat Reader, Flash 등 없음)가 포함됩니다. 물론 모든 것을 패치로 유지하십시오.

실행중인 서비스에 적합한 포트로의 트래픽 만 허용하도록 방화벽 정책을 구성하십시오.

실행중인 서비스와 관련된 규칙으로 IDS / IPS를 구성하십시오.

자산의 위험 / 가치에 따라 다른 공급 업체의 경계 IPS 외에 호스트 기반 IPS를 설치하는 것이 좋습니다.

웹 사이트를 호스팅하는 것이 주된 목적이라고 가정하면 IIS를 잠그면 7.5 (2008 R2)의 문제가 훨씬 줄어들지 만 여전히 다음과 같은 몇 가지 작업을 수행해야합니다.

  • 웹 사이트 파일을 OS 파일과 다른 볼륨에 저장
  • Microsoft, NSA 등의 XML 보안 템플릿을 기준으로 사용
  • NTFS를 통해 모든 스크립트를 제거하거나 잠그십시오. \InetPub\AdminScripts
  • appcmd, cmd.exe 등과 같은 위험한 exe를 잠급니다.
  • IPSec을 사용하여 DMZ와 승인 된 내부 호스트 간의 트래픽을 제어하십시오.
  • AD가 필요한 경우 DMZ에서 내부 네트워크와 다른 포리스트를 사용하십시오.
  • 모든 사이트에 호스트 헤더 값이 필요한지 확인하십시오 (자동 검색을 방지하는 데 도움이 됨)
  • 디렉터 서비스 액세스, 프로세스 추적 및 시스템 이벤트와 같은 성공 이벤트를 제외한 모든 실패 및 성공 이벤트에 대한 Windows 감사를 활성화합니다.
  • 파일 시스템에서 NTFS 감사를 사용하여 Everyone 그룹의 실패한 작업을 기록하고 백업을 기반으로 보안 로그의 크기를 적절한 크기 (500Mb 정도)로 늘려야합니다
  • 루트 폴더에 HTTP 로깅 사용
  • 앱 풀을 실행하는 사용자 계정에 불필요한 권한을 부여하지 마십시오.
  • 필요하지 않은 경우 ISAPI 및 CGI 모듈을 제거하십시오.

이 글을 너무 길게 작성하고 싶지 않으므로 특정 글 머리 기호에 대한 자세한 정보가 필요하면 의견을 남겨주세요.



5

여기에있는 기존 답변은 좋지만 중요한 측면을 놓칩니다. 서버 가 수행 할 때 발생하는 상황 손상 ?

사람들이 요청할 때 ServerFault에 대한 대답은 거의 항상 내 서버의 복제본 이 긴급한 것처럼 질문을 끝내는 것입니다! 상단 답변의 지침은 손상의 원인 / 방법을 찾는 방법과 백업에서 복원하는 방법을 설명합니다.

이러한 지침을 따르려면 광범위한 로깅 및 정기적 백업이 있어야합니다. 공격자가 수행 한 작업과시기를 결정하는 데 사용할 수있는 충분한 로깅이 있어야합니다. 이를 위해서는 다른 시스템의 로그 파일을 상관시키는 방법이 필요하므로 NTP가 필요합니다. 아마도 일종의 로그 상관 엔진을 원할 것입니다.

일반적으로 손상된 시스템에서는 로깅과 백업을 모두 사용할 수 없어야합니다.

서버가 손상되었다는 것을 알면 오프라인으로 전환하여 조사를 시작하십시오. 공격자가 언제 어떻게 공격을 받았는지 알면 예비 시스템의 결함을 패치하여 온라인 상태로 만들 수 있습니다. 예비 시스템이 데이터를 손상시킨 경우 (라이브 시스템과 동기화되어 있기 때문에) 데이터를 온라인 상태로 만들기 전에 손상보다 오래된 백업에서 데이터를 복원해야합니다.

위의 링크 된 답변을 통해 실제로 작업하고 실제로 단계를 수행 할 수 있는지 확인한 다음 가능할 때까지 항목을 추가 / 변경하십시오.


2

이 서버의 역할 / 응용 프로그램을 설치, 구성 및 테스트 한 후 SCW (보안 구성 마법사)를 실행하십시오.


2

위의 모든 권장 사항을 수행 한 후 DoD에서 게시 한 "STIG (Security Technical Implementation Guide)"를 따르십시오. 1- Windows Server (버전 찾기) 2- IIS (버전 찾기) 3- Website (버전 찾기)

STIG의 전체 목록은 다음과 같습니다.

http://iase.disa.mil/stigs/az.html

문안 인사.


수행해야 할 긴 보안 규칙 목록이 있습니다!. 당신은 인내심을 가져야합니다.
hassan.monfared
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.