'IPSec Filter'에 해당되는 글 3건

  1. 2007.01.30 IPSec 필터 가중치(#3/#3)
  2. 2007.01.29 IPSec 필터 가중치(#2/#3)
  3. 2007.01.27 IPSec 필터 가중치(#1/#3)

Windows 2000부터는 IPSec(IP Security)라는 새로운 보안 기술이 적용되어 있으며, 현재에도 서버에 간단한 방화벽의 대용으로 TCP/IP 트래픽 필터링보다 더 나은 성능으로 애용되고 있습니다.

IPSec 필터를 작성하면서 느끼는 것 중 하나가, 어느 필터가 우선시 되는지, 거부가 우선인지, 허용이 우선인지 한번쯤 고민해 본 적이 있을 것입니다.

이 글은 MS Technet 사이트의 CableGuy에서 발취하여 직접 번역한 글입니다.

목차는 다음과 같습니다.

1. 개념
2. 모니터링
3. 가중치



3. 가중치

이제 IPSec 정책을 세부적으로 나눠서 살펴보자. 이 글에서는 세부적인 각 항목에 대해서는 자세히 설명하지는 않는다.

 

1) ‘IPSec 정책은 여러 개의 ‘IP 보안 규칙들로 구성된다.

2) ‘IPSec 보안 규칙‘IP 필터 목록’, ‘필터 동작’, ‘인증 방법’, ‘터널 설정’, ‘연결 형식으로 구성된다.

3) ‘IP 필터원본 주소’, ‘대상 주소’, ‘프로토콜’, ‘원본 포트’, ‘대상 포트’, ‘미러됨등으로 구성된다.

4) 필터 동작허용’, ‘거부’, ‘보안 협상등으로 구성된다.

5) 인증 방법커버로스 V5’, ‘인증서’, ‘미리 공유된 키등으로 구성된다.

6) 터널 설정은 터널링 구현시 해당 IP 주소를 입력한다.

7) 연결 형식은 인터넷에 랜 어댑터가 어떤 방식으로 연결되어 있는지 구성한다.

 

복잡하다고 생각되면 IPSec 정책을 하나 열어서 찬찬히 살펴보면 된다. 이 내용을 설명한 이유는 바로 가중치를 계산하기 위해 필요한 부분이 무엇인지 알아보기 위함이다.

 

가중치를 계산하기 위해서는 다음의 7가지 요소가 우선 순위를 가지게 되며, 이 요소의 구성에 따라 가중치가 다르게 결정된다. 이러한 가중치의 계산은 IPSec Policy Agent가 알아서 처리하게 된다.

 

l 원본 주소

l 원본 주소(서브넷 마스크) : 원본 주소가 한 개가 아닌 여러 개.

l 대상 주소

l 대상 주소(서브넷 마스크) : 대상 주소가 한 개가 아닌 여러 개.

l IP 프로토콜 필드 값

l TCP/UDP 프로토콜인 경우 원본 포트

l TCP/UDP 프로토콜인 경우 대상 포트

 

원본 주소를 놓고 살펴 보자. IPSec 정책 구성시 원본 주소 IP 주소’, ‘모든 IP 주소’, ‘특정 DNS 이름’, ‘특정 IP 주소’, ‘특정 IP 서브넷등에서 고를 수 있다. 가중치를 계산할 때는 좀더 세밀한 항목이 높은 가중치를 가지게 된다. 따라서 가중치 순서대로 나열해 보면 다음과 같다.

 

특정 IP 주소 > 특정 IP 서브넷 > 모든 IP 주소의 순서로 계산된다.

아래 표는 여러 가지 규칙을 가중치 값을 기준으로 나열한 것으로 자세히 살펴보면, 가중치가 어떤 방식으로 산출되는지 쉽게 이해할 수 있다. 따라서 이 표를 가지고 독자가 계획한 IP 보안 규칙을 대조하여 보면, 어떤 규칙이 가중치를 높게 가지고 있는지 낮은지 쉽게 판별할 수 있다.

 

원본주소

원본 서브넷 마스크

대상주소

대상 서브넷 마스크

프로토콜

원본포트

대상포트

특정 IP 주소

255.255.255.255

(32비트 서브넷 마스크)

특정 IP 주소

255.255.255.255

특정 IP 프로토콜

특정 원본 포트

특정 대상 포트

특정 IP 주소

255.255.255.255

특정 IP 주소

255.255.255.255

특정 IP 프로토콜

아무 포트에서

특정 대상 포트

특정 IP 주소

255.255.255.255

특정 IP 주소

255.255.255.255

특정 IP 프로토콜

특정 원본 포트

아무 포트로

특정 IP 주소

255.255.255.255

특정 IP 주소

255.255.255.255

특정 IP 프로토콜

아무 포트에서

아무 포트로

특정 IP 주소

255.255.255.255

특정 IP 주소

255.255.255.255

모두

아무 포트에서

아무 포트로

특정 IP 서브넷

255.255.255.254와 같이 32비트 미만

특정 IP 주소

255.255.255.255

특정 IP 프로토콜

특정 원본 포트

특정 대상 포트

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 주소

255.255.255.255

특정 IP 프로토콜

아무 포트에서

특정 대상 포트

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 주소

255.255.255.255

특정 IP 프로토콜

특정 원본 포트

아무 포트로

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 주소

255.255.255.255

특정 IP 프로토콜

아무 포트에서

아무 포트로

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 주소

255.255.255.255

모든

아무 포트에서

아무 포트로

특정 IP 주소

255.255.255.255

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 프로토콜

특정 원본 포트

특정 대상 포트

특정 IP 주소

255.255.255.255

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 프로토콜

아무 포트에서

특정 대상 포트

특정 IP 주소

255.255.255.255

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 프로토콜

특정 원본 포트

아무 포트로

특정 IP 주소

255.255.255.255

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 프로토콜

아무 포트에서

아무 포트로

특정 IP 주소

255.255.255.255

특정 IP 서브넷

32비트 미만의 서브넷 마스크

모든

아무 포트에서

아무 포트로

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 프로토콜

특정 원본 포트

특정 대상 포트

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 프로토콜

아무 포트에서

특정 대상 포트

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 프로토콜

특정 원본 포트

아무 포트로

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 프로토콜

아무 포트에서

아무 포트로

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 서브넷

32비트 미만의 서브넷 마스크

모든

아무 포트에서

아무 포트로

모든 IP 주소

0.0.0.0

특정 IP 주소

255.255.255.255

특정 IP 프로토콜

특정 원본 포트

특정 대상 포트

모든 IP 주소

0.0.0.0

특정 IP 주소

255.255.255.255

특정 IP 프로토콜

아무 포트에서

특정 대상 포트

모든 IP 주소

0.0.0.0

특정 IP 주소

255.255.255.255

특정 IP 프로토콜

특정 원본 포트

아무 포트로

모든 IP 주소

0.0.0.0

특정 IP 주소

255.255.255.255

특정 IP 프로토콜

아무 포트에서

아무 포트로

모든 IP 주소

0.0.0.0

특정 IP 주소

255.255.255.255

모든

아무 포트에서

아무 포트로

특정 IP 주소

255.255.255.255

모든 IP 주소

0.0.0.0

특정 IP 프로토콜

특정 원본 포트

특정 대상 포트

특정 IP 주소

255.255.255.255

모든 IP 주소

0.0.0.0

특정 IP 프로토콜

아무 포트에서

특정 대상 포트

특정 IP 주소

255.255.255.255

모든 IP 주소

0.0.0.0

특정 IP 프로토콜

특정 원본 포트

아무 포트로

특정 IP 주소

255.255.255.255

모든 IP 주소

0.0.0.0

특정 IP 프로토콜

아무 포트에서

아무 포트로

특정 IP 주소

255.255.255.255

모든 IP 주소

0.0.0.0

모든

아무 포트에서

아무 포트로

모든 IP 주소

0.0.0.0

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 프로토콜

특정 원본 포트

특정 대상 포트

모든 IP 주소

0.0.0.0

특정IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 프로토콜

아무 포트에서

특정 대상 포트

모든 IP 주소

0.0.0.0

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 프로토콜

특정 원본 포트

아무 포트로

모든 IP 주소

0.0.0.0

특정 IP 서브넷

32비트 미만의 서브넷 마스크

특정 IP 프로토콜

아무 포트에서

아무 포트로

모든 IP 주소

0.0.0.0

특정 IP 서브넷

32비트 미만의 서브넷 마스크

모든

아무 포트에서

아무 포트로

특정 IP 서브넷

32비트 미만의 서브넷 마스크

모든 IP 주소

0.0.0.0

특정 IP 프로토콜

특정 원본 포트

특정 대상 포트

특정 IP 서브넷

32비트 미만의 서브넷 마스크

모든 IP 주소

0.0.0.0

특정 IP 프로토콜

아무 포트에서

특정 대상 포트

특정 IP 서브넷

32비트 미만의 서브넷 마스크

모든 IP 주소

0.0.0.0

특정 IP 프로토콜

특정 원본 포트

아무 포트로

특정 IP 서브넷

32비트 미만의 서브넷 마스크

모든 IP 주소

0.0.0.0

특정 IP 프로토콜

아무 포트에서

아무 포트로

특정 IP 서브넷

32비트 미만의 서브넷 마스크

모든 IP 주소

0.0.0.0

모든

아무 포트에서

아무 포트로

모든 IP 주소

0.0.0.0

모든 IP 주소

0.0.0.0

특정 IP 프로토콜

특정 원본 포트

특정 대상 포트

모든 IP 주소

0.0.0.0

모든 IP 주소

0.0.0.0

특정 IP 프로토콜

아무 포트에서

특정 대상 포트

모든 IP 주소

0.0.0.0

모든 IP 주소

0.0.0.0

특정 IP 프로토콜

특정 원본 포트

아무 포트로

모든 IP 주소

0.0.0.0

모든 IP 주소

0.0.0.0

특정 IP 프로토콜

아무 포트에서

아무 포트로

모든 IP 주소

0.0.0.0

모든 IP 주소

0.0.0.0

모든

아무 포트에서

아무 포트로

 

이 순서 이외에 다음과 같은 세부적인 사항이 가중치를 좀더 세밀하게 나눠준다.

 

l 서브넷 마스크가 높을수록(32에 가까울수록) 가중치는 높아 진다. , 적은 수의 IP 주소들이 좀더 높다.

l 터널링이 적용되는 필터가 그렇지 않은 필터보다 약간 가중치가 높다.

l 미러됨이 사용되는 경우 원래의 필터가 미러되는 필터와 가중치가 같거나 약간 높다.

 

어떠한 경우에는 서로 다른 필터들이 동일한 가중치 값을 가질 수도 있다. 보통 두개 이상의 필터들이 서로 다른 트래픽을 구성하고 있지만 동일한 세부사항을 가지는 경우에 발생한다. 대부분의 경우 여러 개의 피터가 동일한 가중치를 가지더라도 패킷은 하나의 IPSec 필터에만 일치되기 때문에 별 문제가 발생하지 않는다.

 

또한, IPSec 필터가 동일한 주소, 포트, IP 프로토콜 필드 값을 가지지만 서로 반대되는 동작을 수행하도록  구성하는 경우 필터간의 충돌이 발생하게 된다. 이러한 경우 Windows 보안에서 항상 하는 말이지만 좀더 제한적인 권한이 우선시된다. 따라서 동일한 필터에서 거부허용두개의 필터를 구성한다면 패킷은 거부될 것이다.



지금까지 IPSec 필터 가중치에 대해 설명했다. 이 내용이 독자에게 좋은 자료가 되길 바랍니다.

reTweet
Posted by 문스랩닷컴
blog comments powered by Disqus


    Windows 2000부터는 IPSec(IP Security)라는 새로운 보안 기술이 적용되어 있으며, 현재에도 서버에 간단한 방화벽의 대용으로 TCP/IP 트래픽 필터링보다 더 나은 성능으로 애용되고 있습니다.

    IPSec 필터를 작성하면서 느끼는 것 중 하나가, 어느 필터가 우선시 되는지, 거부가 우선인지, 허용이 우선인지 한번쯤 고민해 본 적이 있을 것입니다.

    이 글은 MS Technet 사이트의 CableGuy에서 발취하여 직접 번역한 글입니다.

    목차는 다음과 같습니다.

    1. 개념
    2. 모니터링
    3. 가중치



    2. 모니터링

    이 의문점을 해결하기 위해 우리는 다음의 도구를 한번 살펴보자. 여러분도 아시다시피 Windows 2000에서 IPSec이 지원되기 시작하였고, IPSecmon.exe 라는 프로그램으로 모니터링을 할 수 있었다. 그리고 Windows XP에 이르러서야 드디어 MMC 콘솔의 스냅인으로 제공되기 시작했다.

    IPSec을 먼저 적용해야 한다. IPSec을 사용하고 있다면 이 과정을 뛰어 넘어도 되지만, 사용치 않고 있다면 다음과 같이 IPSec을 적용한다.(Windows XP, Standalone 기준)

     

    1) 시작 -> 실행 -> secpol.msc/s 를 입력하고 엔터를 친다.

    2) 아래 그림에서 왼쪽 창에서 로컬 컴퓨터의 IP 보안정책을 선택하고, 오른쪽 창에서 첫번째 보안서버(보안필요)를 마우스 오른쪽 버튼으로 클릭하고 할당을 선택한다.

    사용자 삽입 이미지

    이제 IPSec이 제대로 동작하는지 살펴보도록 하자.

    1) 시작 -> 실행 을 선택하고 ‘mmc’를 입력하고 엔터를 누르면 MMC 콘솔이 나타난다.

    사용자 삽입 이미지


        2) 파일메뉴를 클릭하고 스냅인 추가/제거를 클릭한다.

    사용자 삽입 이미지



    3) 왼쪽 아래 추가버튼을 클릭하고,

    사용자 삽입 이미지

    4) ‘IP
    보안 모니터를 선택하고 추가를 누르고 닫기를 누른다. ‘확인도 클릭한다. 이렇게 하면 IP 보안 모니터용 MMC 콘솔이 구성된다. 이제 파일메뉴에서 다른 이름으로 파일 저장을 클릭하고, 적당한 위치에 MMC 콘솔 파일을 저장해 두면 된다.

     

     

    IP 보안 모니터 콘솔을 실행하여 보자. 그러면 다음과 같이 화면에서 왼쪽 빠른 모드를 클릭하고 오른쪽 노드들을 살펴보자. 4가지 노드가 있는데 일반 필터특정 필터를 자세히 살펴보자. 마우스로 오른쪽 세부창을 스크롤하다 보면 아래 그림에서 빨간 사각형 모양과 같은 항목을 볼 수 있다.


    사용자 삽입 이미지


    한글판에서는 무게라고 번역되어 있는데, 필자 생각에는 가중치(weight)’가 적당한 단어가 아닐까 싶다. 대충 감을 잡았겠지만, 무게는 각 규칙 내에 존재하는 필터들의 우선순위를 나타낸 것이다. 후에 설명하겠지만, 좀더 세밀한 필터가 높은 우선 순위를 가지게 된다.

    가중치에 대한 자세한 내용은 다음 연재를 기대하시라~.

    reTweet
    Posted by 문스랩닷컴
    blog comments powered by Disqus

      Windows 2000부터는 IPSec(IP Security)라는 새로운 보안 기술이 적용되어 있으며, 현재에도 서버에 간단한 방화벽의 대용으로 TCP/IP 트래픽 필터링보다 더 나은 성능으로 애용되고 있습니다.

      IPSec 필터를 작성하면서 느끼는 것 중 하나가, 어느 필터가 우선시 되는지, 거부가 우선인지, 허용이 우선인지 한번쯤 고민해 본 적이 있을 것입니다.

      이 글은 MS Technet 사이트의 CableGuy에서 발취하여 직접 번역한 글입니다.

      목차는 다음과 같습니다.

      1. 개념
      2. 모니터링
      3. 가중치



      1. 개념

      방화벽에서 무슨 포트를 열고 닫아야 할지 결정하는 방식에는 블랙 리스트 방식과 화이트 리스트 방식으로 나뉜다.

       

      모든 포트를 차단한 상태에서 필요한 포트들을 열어주는 방식이 블랙 리스트 방식이고, 모든 포트를 개방한 상태에서 위험한 포트들만 차단하는 방식이 화이트리스트 방식이다.

       

      IPSec 적용할 때는 어떠한 방식이 유리할까? 이에 대한 고민을 한번 해보자. 다음과 같이 간단한 인트라넷을 예를 들어보자.

       

      l 사원용 컴퓨터             : 수십여대

      l 내부용 DB서버            : 1

      l 외부용 웹서버             : 1

       

      물론 방화벽을 적용하고 있다면, 내부용 DB 서버는 DMZ 위치시키거나 방화벽 내의 B2B 안쪽에 위치하고 있을 터이다. 하지만 글에서는 돈이 항상 딸리는 중소 회사의 단일 네트워크라고 가정하여 보자.

       

      l 사원용 컴퓨터는 여러 가지 프로그램을 이용할 것이다. 인터넷은 당연히 사용할 것이고, 메일도 읽고 보내고, 그리고 여러 메신저 프로그램도 이용할 것이다. 따라서, 컴퓨터들은 화이트 리스트 방식으로 IPSec 적용하는 것이 유리하다.

      l 내부용 DB 서버 : 당연하겠지만, 서버에는 아주아주 중요한 정보가 들어있다. 회사 기밀일 수도 있고, 고객들의 각종 정보들이 들어있을 있다. DB 서버는 웹서버에 연결되어 최소한의 연결을 제공해 주는 것이 일반적이다. 따라서, 서버는 핵심적인 SQL 포트만 웹서버로 열어주는 블랙리스트 방식이 유리하다.

      l 외부용 서버 : 서버도 위와 마찬가지로 블랙리스트 방식이 유리하다.

       

      그렇다면, 인트라넷을 위한 규칙을 만들어보자.

       

      l 사원용 컴퓨터 :  사원용 컴퓨터는 내외부 모든 컴퓨터들에 액세스할 있어야 한다.

      l 내부용 DB 서버 : 내부용 DB 서버는 외부용 웹서버에 대한 SQL 포트만 열어 둔다.

      l 외부용 웹서버 : 모든 컴퓨터들이 외부용 웹서버에 80 포트와 SSL(필요한 경우)포트만을 열어 둔다.

       

      필터 규칙을 표로 정리해 보면 다음과 같다.

      원본주소

      대상주소

      프로토콜

      원본 포트

      대상 포트

      동작

      비고

      사원용

      컴퓨터

      내부용 DB 서버

      모든

      모든

      모든

      차단

       

      모든

      모든

      모든

      모든

      허용

       

      내부용

      DB 서버

      외부용 웹서버

      TCP

      xxx

      yyy

      허용

       

      모든

      모든

      모든

      모든

      차단

       

      외부용

      웹서버

      모든

      TCP

      80

      yyy

      허용

       

      모든

      모든

      모든

      모든

      차단

       

       

      물론 위의 표에서 약간의 오류가 발생할 있다. 포트 라는 것이 보안을 위해 다르게 할당할 수도 있기 때문이다. 또한, 규칙도 나름대로 틀리게 구성할 수도 있다.

       

      위의 표를 보면, 사원용 컴퓨터의 규칙이 2개가 있는데 여기서 의문점이 하나 생기게 된다. 정확히 보자면, 두개의 규칙이 서로 충돌하게 된다. 첫번째 규칙에서는 모두 차단했는데 번째는 모두 허용하는 것이다. 이상하지 않은가?


      이에 대한 해답은 IPSecMon 도구를 통해 확인이 가능하다. 다음 연재를 기대하시라~.




      reTweet
      Posted by 문스랩닷컴
      blog comments powered by Disqus


        Web Analytics Blogs Directory