Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
이 페이지의 내용
 

액세스 제어 목록(방화벽 필터)

요약 이 주제를 읽고 클라우드 네이티브 라우터의 레이어 3 레이어 4 액세스 제어 목록(방화벽 필터)에 대해 알아보십시오.

주니퍼 클라우드 네이티브 라우터 릴리스는 상태 비저장 방화벽 필터를 지원합니다. 방화벽 필터는 라우터를 네트워크 대상으로 전송하거나 라우팅 엔진으로 향하는 과도한 트래픽으로부터 클라우드 네이티브 라우터를 보호하는 수단을 제공합니다. 액세스 제어 목록(ACL)이라고도 하는 상태 비저장 방화벽 필터는 트래픽을 상태 저장으로 검사하지 않습니다. 대신 패킷 내용을 정적으로 평가하고 네트워크 연결 상태를 추적하지 않습니다. 상태 비저장 방화벽 필터의 기본 목적은 패킷 필터링을 사용하여 보안을 강화하는 것입니다. 패킷 필터링을 사용하면 들어오거나 나가는 패킷의 구성 요소를 검사한 다음 지정한 기준과 일치하는 패킷에 대해 지정한 작업을 수행할 수 있습니다. 스테이트리스 방화벽 필터의 일반적인 용도는 악의적이거나 신뢰할 수 없는 패킷으로부터 라우팅 엔진 프로세스 및 리소스를 보호하는 것입니다.

시스템을 전송할 수 있는 패킷에 영향을 미치고 필요에 따라 패킷에 특수 작업을 적용하기 위해 필터 용어라고 하는 하나 이상의 패킷 필터링 규칙 시퀀스를 구성할 수 있습니다. 필터 용어는 일치 및 일치 패킷에 대해 수행할 작업을 결정하는 데 사용할 일치 조건을 지정합니다. 스테이트리스 방화벽 필터를 사용하면 레이어 3 및 레이어 4 헤더 필드의 평가를 기반으로 단편화된 패킷을 포함하여 특정 프로토콜 제품군의 모든 패킷을 조작할 수 있습니다. 자세한 내용은 상태 비저장 방화벽 필터 개요 항목을 검토하십시오.

메모:

JCNR에서는 수신 인터페이스에만 스테이트리스 방화벽 필터를 적용할 수 있습니다. 지원되는 인터페이스 유형에는 패브릭 인터페이스, 하위 인터페이스, Pod 인터페이스 및 irb 인터페이스가 포함됩니다.

메모:

JCNR은 제품군당 최대 16개의 필터와 필터당 16개의 용어를 지원합니다.

JCNR은 표에 제공된 일치 조건 및 작업을 통해 IPv4 및 IPv6 표준 방화벽 필터를 지원합니다. JCNR은 레이어 2 액세스 제어 목록(브리지 제품군에 대한 방화벽 필터)도 지원합니다.

표 1: IPv4 트래픽에 대한 방화벽 필터 일치 조건

일치 조건

묘사

대상 주소 address

IPv4 대상 주소 필드를 일치시킵니다. 선택적 서브넷 마스크와 함께 접두사를 제공할 수 있습니다.

목적지 포트 number

UDP 또는 TCP 대상 포트 필드를 일치시킵니다.

일치 조건에 기반하여 포트를 구성할 때 동일한 필터 용어에 protocol udp 또는 protocol tcp 일치 명령문도 구성해야 합니다. 포트 값만 일치시키면 예기치 않은 일치가 발생할 수 있습니다.

숫자 값 대신 (1483), afs bgp (179), biff (512), bootpc (68), bootps (67), cmd (514), cvspserver (2401), dhcp (67 domain ), (53), eklogin (2105), ekshell (2106), exec (512), finger (79), ftp (21 ftp-data ), (20), http (80), https (443), ident (113), imap (143), kerberos-sec (88), klogin (543), kpasswd (761), krb-prop (754), krbupdate (760), kshell (544 ldap ), (389), ldp (646 login ), (513), (513), mobileip-agent (434), mobilip-mn (435), msdp (639), netbios-dgm (138), netbios-ns (137), netbios-ssn (139), nfsd (2049), nntp (119), ntalk (518), ntp (123), pop3 (110), pptp (1723), printer (515), radacct (1813), radius (1812), rip (520), rkinit (2108), smtp (25), snmp (161), snmptrap (162), snpp (444), socks (1080), ssh (22), sunrpc (111), syslog (514), tacacs (49), tacacs-ds (65), talk (517), telnet (23), tftp (69), timed (525), who (513), 또는 xdmcp (177).

소스 주소 address

패킷을 전송하는 소스 노드의 IPv4 주소를 일치시킵니다. 선택적 서브넷 마스크와 함께 접두사를 제공할 수 있습니다.

소스 포트 number

UDP 또는 TCP 소스 포트 필드를 일치시킵니다.

일치 조건에 기반하여 포트를 구성할 때 동일한 필터 용어에 protocol udp 또는 protocol tcp 일치 명령문도 구성해야 합니다. 포트 값만 일치시키면 예기치 않은 일치가 발생할 수 있습니다.

숫자 값 대신, 일치 조건과 함께 destination-port number 나열된 텍스트 동의어 중 하나를 지정할 수 있습니다.

프로토콜 number

IP 프로토콜 유형 필드를 일치시킵니다. 숫자 값 대신 (51), dstopts (60), egp (8), esp (50), fragment (44), gre (47), hop-by-hop (0), icmp (1), icmp6 (58), (58), icmpv6 igmp (2), ipip (4), (41 ipv6 ), ospf (89), pim (103), rsvp (46), sctp (132), tcp (6), udp (17) 또는 (112) 텍스트 vrrp 동의어(필드 값도 나열됨 ah ) 중 하나를 지정할 수 있습니다.

tcp-플래그 value

TCP 헤더의 8비트 TCP 플래그 필드에서 하나 이상의 저순서 6비트를 일치시킵니다.

개별 비트 필드를 지정하기 위해 다음 텍스트 동의어 또는 16진수 값을 지정할 수 있습니다.

  • fin (0x01)

  • syn (0x02)

  • rst (0x04)

  • push (0x08)

  • ack (0x10)

  • urgent (0x20)

TCP 세션에서 SYN 플래그는 전송된 초기 패킷에서만 설정되는 반면 ACK 플래그는 초기 패킷 이후에 전송된 모든 패킷에 설정됩니다.

비트 필드 논리 연산자를 사용하여 여러 플래그를 함께 묶을 수 있습니다.

이 일치 조건을 구성하는 경우, 동일한 용어에 일치 문을 구성 protocol tcp 하여 TCP 프로토콜이 포트에서 사용되도록 지정하는 것이 좋습니다.

ICMP형 number

ICMP 메시지 유형 필드를 일치시킵니다.

숫자 값 대신 (0), echo-request (8), info-reply (16), info-request (15), mask-request (17), mask-reply (18), parameter-problem (12), redirect (5), router-advertisement (9), router-solicit (10), source-quench (4), time-exceeded (11), timestamp (13), timestamp-reply (14) 또는 unreachable (3) 텍스트 동의어(필드 값도 나열됨) echo-reply 중 하나를 지정할 수 있습니다.

표 2: IPv6 트래픽에 대한 방화벽 필터 일치 조건

일치 조건

묘사

대상 주소 address

IPv6 대상 주소 필드를 일치시킵니다. 선택적 서브넷 마스크와 함께 접두사를 제공할 수 있습니다.

목적지 포트 number

UDP 또는 TCP 대상 포트 필드를 일치시킵니다.

일치 조건에 기반하여 포트를 구성할 때 동일한 필터 용어에 protocol udp 또는 protocol tcp 일치 명령문도 구성해야 합니다. 포트 값만 일치시키면 예기치 않은 일치가 발생할 수 있습니다.

숫자 값 대신 (1483), afs bgp (179), biff (512), bootpc (68), bootps (67), cmd (514), cvspserver (2401), dhcp (67 domain ), (53), eklogin (2105), ekshell (2106), exec (512), finger (79), ftp (21 ftp-data ), (20), http (80), https (443), ident (113), imap (143), kerberos-sec (88), klogin (543), kpasswd (761), krb-prop (754), krbupdate (760), kshell (544 ldap ), (389), ldp (646 login ), (513), (513), mobileip-agent (434), mobilip-mn (435), msdp (639), netbios-dgm (138), netbios-ns (137), netbios-ssn (139), nfsd (2049), nntp (119), ntalk (518), ntp (123), pop3 (110), pptp (1723), printer (515), radacct (1813), radius (1812), rip (520), rkinit (2108), smtp (25), snmp (161), snmptrap (162), snpp (444), socks (1080), ssh (22), sunrpc (111), syslog (514), tacacs (49), tacacs-ds (65), talk (517), telnet (23), tftp (69), timed (525), who (513), 또는 xdmcp (177).

소스 주소 address

패킷을 전송하는 소스 노드의 IPv6 주소를 일치시킵니다. 선택적 서브넷 마스크와 함께 접두사를 제공할 수 있습니다.

소스 포트 number

UDP 또는 TCP 소스 포트 필드를 일치시킵니다.

일치 조건에 기반하여 포트를 구성할 때 동일한 필터 용어에 protocol udp 또는 protocol tcp 일치 명령문도 구성해야 합니다. 포트 값만 일치시키면 예기치 않은 일치가 발생할 수 있습니다.

숫자 값 대신, 일치 조건과 함께 destination-port number 나열된 텍스트 동의어 중 하나를 지정할 수 있습니다.

tcp-플래그 value

TCP 헤더의 8비트 TCP 플래그 필드에서 하나 이상의 저순서 6비트를 일치시킵니다.

개별 비트 필드를 지정하기 위해 다음 텍스트 동의어 또는 16진수 값을 지정할 수 있습니다.

  • fin (0x01)

  • syn (0x02)

  • rst (0x04)

  • push (0x08)

  • ack (0x10)

  • urgent (0x20)

TCP 세션에서 SYN 플래그는 전송된 초기 패킷에서만 설정되는 반면 ACK 플래그는 초기 패킷 이후에 전송된 모든 패킷에 설정됩니다.

비트 필드 논리 연산자를 사용하여 여러 플래그를 함께 묶을 수 있습니다.

ICMP형 message-type

ICMP 메시지 유형 필드를 일치시킵니다.

숫자 값 대신 (149), certificate-path-advertisement certificate-path-solicitation (148), destination-unreachable (1), (129 echo-reply ), echo-request (128), home-agent-address-discovery-reply (145), home-agent-address-discovery-request (144), inverse-neighbor-discovery-advertisement (142), inverse-neighbor-discovery-solicitation (141), membership-query (130), membership-report (131), membership-termination (132), mobile-prefix-advertisement-reply (147), mobile-prefix-solicitation (146), neighbor-advertisement (136), neighbor-solicit (135), node-information-reply (140), node-information-request (139), packet-too-big (2), parameter-problem (4), private-experimentation-100 (100), private-experimentation-101 (101), private-experimentation-200 (200), private-experimentation-201 (201), redirect (137), router-advertisement (134), router-renumbering (138), router-solicit (133) 또는 time-exceeded (3).

표 3: 방화벽 필터 동작

작업 유형

묘사

지원되는 작업

종료

특정 패킷에 대한 방화벽 필터의 모든 평가를 중지합니다. 라우터(또는 스위치)는 지정된 작업을 수행하며 패킷을 검사하는 데 추가 용어가 사용되지 않습니다.

방화벽 필터 용어에서 하나의 종료 작업만 지정할 수 있습니다. 필터 용어 내에 둘 이상의 종료 동작을 지정하려고 하면 최신 종료 동작이 기존 종료 동작을 대체합니다. 그러나 단일 용어에서 하나 이상의 비 종료 작업과 함께 하나의 종료 작업을 지정할 수 있습니다. 예를 들어, 용어 내에서 및 로 count 지정할 accept 수 있습니다syslog. 종료 동작을 포함하는 용어 수에 관계없이, 시스템이 용어 내에 종료 동작을 처리하면 전체 방화벽 필터의 처리가 중단됩니다.

accept - 패킷을 수락합니다

discard - ICMP(Internet Control Message Protocol) 메시지를 보내지 않고 조용히 패킷을 버립니다. 폐기된 패킷은 로깅 및 샘플링에 사용할 수 있습니다.

종료되지 않음

패킷에 대한 다른 기능(예: 카운터 증가, 패킷 헤더에 대한 정보 로깅, 패킷 데이터 샘플링 또는 시스템 로그 기능을 사용하여 원격 호스트로 정보 전송)을 수행하지만 패킷을 검사하는 데 추가 용어가 사용됩니다.

참고: JCNR은 종료 작업과 함께 추가된 경우에만 비종료 작업으로 지원됩니다 count .

세다 counter-name

구성 예시

메모:

configlet 리소스를 사용하여 cRPD Pod를 구성합니다.

계층 구조에서 상태 비저장 방화벽 필터를 사용하여 JCNR 컨트롤러를 구성할 수 있습니다 firewall . IPv4 제품군의 구성 예는 다음과 같습니다.

IPv6 제품군의 구성 예는 다음과 같습니다.

필터는 수신 인터페이스에 적용됩니다. 지원되는 인터페이스에는 패브릭 인터페이스, 하위 인터페이스, 포드 인터페이스 및 irb 인터페이스가 포함됩니다. 필터는 인터페이스의 입력에만 적용할 수 있습니다.

문제 해결

JCNR 컨트롤러 명령

JCNR 컨트롤러에서 다음 명령을 사용하여 방화벽 정보를 볼 수 있습니다.

패밀리 inet(IPv4)에 대한 모든 방화벽 필터 표시

패밀리 inet에 대한 특정 방화벽 필터 표시

family inet의 방화벽 필터에 대한 특정 카운터 표시

제품군 inet6(IPv6)에 대한 모든 방화벽 필터 표시

다음 명령을 사용하여 카운터 통계를 지울 수 있습니다.

vRouter 명령

vRouter에서 다음 명령을 사용하여 방화벽 구성을 볼 수 있습니다.

추가 acl 명령은 다음과 같습니다.

명령을 사용하여 인터페이스와 연결된 필터를 볼 수 있습니다.vif --get