Oracle® Solaris 11.2의 네트워크 보안

인쇄 보기 종료

업데이트 날짜: 2014년 8월
 
 

IP 필터의 패킷 필터링 기능 사용

패킷 필터링 규칙 세트를 사용하여 패킷 필터링을 설정합니다. ipf 명령을 사용하여 패킷 필터링 규칙 세트와 관련된 작업을 수행할 수 있습니다. ipf 명령에 대한 자세한 내용은 ipf(1M) 명령을 참조하십시오.

명령줄에서 ipf 명령을 사용하거나 패킷 필터링 구성 파일에서 패킷 필터링 규칙을 만들 수 있습니다. 구성 파일을 로드하려면 파일을 만든 다음 IP 필터 서비스에 해당 경로 이름을 제공해야 합니다.

IP 필터를 사용하여 두 개의 패킷 필터링 규칙 세트(활성 규칙 세트 및 비활성 규칙 세트)를 유지 관리할 수 있습니다. 대부분의 경우 활성 규칙 세트와 관련된 작업을 수행합니다. 하지만 ipf -I 명령을 사용하여 비활성 규칙 목록에 명령 작업을 적용할 수 있습니다. 비활성 규칙 목록을 선택하지 않을 경우 해당 목록은 IP 필터에 사용되지 않습니다. 비활성 규칙 목록은 활성 패킷 필터링에 영향을 끼치지 않고 규칙을 저장할 수 있는 위치를 제공합니다.

IP 필터는 패킷을 전달하거나 차단하기 전에 구성된 규칙 목록의 처음부터 규칙 목록의 끝까지 규칙 목록에 있는 규칙을 처리합니다. IP 필터는 패킷 전달 여부를 결정하는 플래그를 유지 관리합니다. 전체 규칙 세트를 확인하고 마지막 일치 규칙을 기반으로 패킷을 전달할지 아니면 차단할지 결정합니다.

이 프로세스에는 두 가지 예외가 있습니다. 첫번째 예외는 패킷이 quick 키워드를 포함하는 규칙과 일치하는 경우입니다. 규칙에 quick 키워드가 포함되면 해당 규칙에 대한 작업이 수행되고 후속 규칙이 확인되지 않습니다. 두번째 예외는 패킷이 group 키워드를 포함하는 규칙과 일치하는 경우입니다. 패킷이 그룹과 일치되면 그룹 태그가 지정된 규칙만 확인됩니다.

패킷 필터링 규칙 구성

다음 구문을 사용하여 패킷 필터링 규칙을 만들 수 있습니다.

action [in|out] option keyword, keyword...
  1. 각 규칙은 작업으로 시작합니다. IP 필터는 패킷이 규칙과 일치하는 경우 패킷에 작업을 적용합니다. 다음은 패킷에 적용되는 가장 일반적으로 사용되는 작업을 나열한 것입니다.

    block

    패킷이 필터를 통과하지 못하도록 합니다.

    pass

    패킷이 필터를 통과할 수 있도록 합니다.

    log

    패킷을 기록하되 패킷 차단 또는 통과를 결정하지 않습니다. ipmon 명령을 사용하여 로그를 확인할 수 있습니다.

    count

    필터 통계에 패킷을 포함합니다. ipfstat 명령을 사용하여 통계를 확인할 수 있습니다.

    skip number

    필터가 number개의 필터링 규칙을 건너 뛸 수 있도록 합니다.

    auth

    패킷 정보를 검증하는 사용자 프로그램이 패킷 인증을 수행하도록 요청합니다. 프로그램에서 패킷 전달 또는 차단을 결정합니다.

  2. 작업 뒤에 오는 단어는 in 또는 out이어야 합니다. 선택한 단어에 따라 패킷 필터링 규칙이 수신 패킷에 적용될지 아니면 송신 패킷에 적용될지 결정됩니다.

  3. 그런 다음 옵션 목록에서 옵션을 선택할 수 있습니다. 옵션을 두 개 이상 사용할 경우 여기에 표시되는 순서를 따라야 합니다.

    log

    규칙이 마지막 일치 규칙인 경우 패킷을 기록합니다. ipmon 명령을 사용하여 로그를 확인할 수 있습니다.

    quick

    패킷 일치가 있을 경우 quick 옵션이 포함된 규칙을 실행합니다. 모든 후속 규칙 확인이 중지됩니다.

    on interface-name

    패킷이 지정된 인터페이스 내부 또는 외부로 이동되고 있는 경우에만 규칙을 적용합니다.

    dup-to interface-name

    패킷을 복사하고 interface-name의 중복 출력을 선택적으로 지정된 IP 주소로 보냅니다.


    주 - 규칙의 dup-to 옵션을 사용하면 네트워크 관리자가 네트워크 탭을 만들 수 있습니다. 이 옵션은 Oracle Solaris에서 여전히 지원되지만 대체로 덜 중요해졌습니다. 네트워크 탭을 수행할 포트를 직접 구성할 수 있는 최신 스위치가 제공되므로, 규칙에서 이 함수를 정의할 필요가 없습니다. 네트워크를 탭할 포트를 구성하는 방법은 스위치 설명서를 참조하십시오.
    to interface-name

    패킷을 interface-name의 아웃바운드 대기열로 이동합니다.

  4. 옵션을 지정한 후 패킷이 규칙과 일치하는지 여부를 확인하는 다양한 키워드를 선택할 수 있습니다. 다음 키워드는 여기에 표시된 순서대로 사용해야 합니다.


    주 - 기본적으로 구성 파일의 규칙과 일치하지 않는 패킷은 필터를 통해 전달됩니다.
    tos

    16진수 또는 십진수 정수로 표시되는 type-of-service 값을 기준으로 패킷을 필터링합니다.

    ttl

    time-to-live 값을 기준으로 패킷을 일치시킵니다. 패킷에 저장된 time-to-live 값은 패킷을 폐기하기 전에 네트워크에 보관할 수 있는 기간을 나타냅니다.

    proto

    특정 프로토콜을 일치시킵니다. /etc/protocols 파일에 지정된 프로토콜 이름을 사용할 수도 있고, 십진수를 사용하여 프로토콜을 나타낼 수도 있습니다. tcp/udp 키워드를 사용하여 TCP 또는 UDP 패킷을 일치시킬 수 있습니다.

    from/to/all/any

    소스 IP 주소, 대상 IP 주소, 포트 번호 중 일부 또는 전체와 일치시킵니다. all 키워드는 모든 소스에서 수신되고 모든 대상으로 송신되는 패킷을 승인할 수 있습니다.

    with

    패킷과 연관되어 있는 지정된 속성을 일치시킵니다. 옵션이 없는 경우에만 패킷을 일치시키려면 키워드 앞에 not 또는 no 단어를 삽입하십시오.

    flags

    설정된 TCP 플래그를 기준으로 필터링할 TCP에 사용됩니다. TCP 플래그에 대한 자세한 내용은 ipf(4) 매뉴얼 페이지를 참조하십시오.

    icmp-type

    ICMP 유형에 따라 필터링합니다. 이 키워드는 proto 옵션이 icmp로 설정된 경우에만 사용되며 flags 옵션이 설정된 경우 사용되지 않습니다.

    keep keep-options

    패킷에 대해 보관되는 정보를 결정합니다. 사용 가능한 keep-options로는 state 옵션이 있습니다. state 옵션은 세션에 대한 정보를 보관하며 TCP, UDP 및 ICMP 패킷에 대해 보관될 수 있습니다.

    head number

    number 번호로 표시되는 필터링 규칙에 대한 새 그룹을 만듭니다.

    group number

    기본 그룹 대신 그룹 번호 number에 규칙을 추가합니다. 지정된 다른 그룹이 없을 경우 모든 필터링 규칙이 그룹 0에 배치됩니다.

다음 예에서는 규칙을 만드는 패킷 필터링 규칙 구문을 배치하는 방법을 보여줍니다. IP 주소 192.168.0.0/16의 수신 트래픽을 차단하려면 규칙 목록에 다음 규칙을 포함합니다.

block in quick from 192.168.0.0/16 to any

패킷 필터링 규칙을 작성하는 데 사용되는 전체 문법 및 구문은 ipf(4) 매뉴얼 페이지를 참조하십시오. 패킷 필터링과 관련된 작업은 IP 필터에 대한 패킷 필터링 규칙 세트 관리를 참조하십시오. 예에 표시된 IP 주소 체계(192.168.0.0/16)에 대한 설명은 Oracle Solaris 11.2의 네트워크 배치 계획 의 1 장, 네트워크 배치 계획을 참조하십시오.