Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

예: 주니퍼 네트워킹 디바이스에서 관리 액세스 제어

주:

당사 콘텐츠 테스트 팀은 이 예제를 검증하고 업데이트했습니다.

이 예는 허용된 특정 IP 주소 집합을 기반으로 주니퍼 네트워킹 디바이스에 대한 관리 액세스를 제한하는 방법을 보여줍니다. 이러한 유형의 기능을 종종 액세스 제어 목록(ACL)이라고 하며, Junos OS에서 상태 비저장 방화벽 필터로 구현됩니다.

요구 사항

관리 네트워크에 연결된 주니퍼 네트워킹 디바이스. 구성을 검증하려면 테스트 대상 디바이스(DUT)에 대한 SSH 또는 Telnet 연결을 시작할 수 있는 관리 네트워크에 액세스할 수 있는 디바이스가 하나 이상 있어야 합니다. 이 예제를 구성하기 전에 기본 디바이스 초기화(관리 인터페이스 및 관련 정적 경로, 시스템 서비스, 사용자 로그인 계정 등) 이외의 특별한 구성은 필요하지 않습니다.

개요

방화벽 필터를 구성하여 디바이스를 관리할 수 있는 IP 주소를 제한할 수 있습니다. 이 방화벽 필터에는 디바이스를 관리할 수 있는 IP 주소를 제외한 모든 트래픽을 거부하는 용어가 포함되어야 합니다. 루프백 인터페이스(lo0)에 방화벽 필터를 적용하여 관리 트래픽, 즉 디바이스 자체로 전송된 트래픽만 필터링되도록 해야 합니다.

예제 토폴로지

그림 1 은(는) 이 예의 토폴로지를 보여줍니다. R1 디바이스는 172.16.0.0/24 서브넷이 할당된 관리 네트워크의 기본 게이트웨이 역할을 합니다. R2 디바이스에 대한 관리 액세스를 제한하는 필터를 적용하여 이 예시에서 DUT로 만듭니다. 원격 워크스테이션은 DUT를 관리할 권한이 있으며 10.0.0.1/32 주소가 할당되었습니다.

이 예제에서는 다음을 수행합니다.

  • 라는 접두사 목록을 구성합니다.manager-ip 이 목록은 디바이스를 관리할 수 있는 IP 주소 집합을 정의합니다. 이 예에서 목록에는 관리 서브넷 자체(172.16.0.0/24)와 인증된 원격 사용자의 IP 주소(10.0.0.1/32)가 포함됩니다.

  • 접두사 목록에 정의된 특정 주소 집합을 제외한 모든 소스 주소를 거부하는 방화벽 필터를 구성합니다.limit-mgmt-accessmanager-ip 이렇게 하면 접두사 목록에 나열된 IP 주소만 디바이스를 관리할 수 있습니다.

  • 루프백 인터페이스에 필터를 적용합니다.limit-mgmt-access 로컬 디바이스로 주소가 지정된 패킷이 인터페이스에 도착할 때마다 루프백 인터페이스는 필터를 적용하여 허용된 주소로만 관리 액세스를 제한합니다.limit-mgmt-access

그림 1: 네트워크 토폴로지 예시네트워크 토폴로지 예시

장치에 대한 관리 액세스를 제한하도록 IP 주소 목록 구성

절차

CLI 빠른 구성

이 예를 빠르게 구성하려면 필요에 따라 다음 명령을 편집하고 계층 수준에서 R2 디바이스의 CLI에 붙여넣습니다 .[edit] 완전성을 위해 구성에는 SSH(비사용자용) 및 텔넷 시스템 서비스를 구성하는 명령이 포함됩니다. 또한 관리 인터페이스 및 관련 고정 경로의 컨피그레이션도 제공합니다. 디바이스에 이미 이 기능이 구성되어 있는 경우에는 이러한 명령이 필요하지 않습니다.

주:

Telnet은 주니퍼 네트웍스 디바이스에서 루트 로그인을 지원하지 않습니다. 루트 사용자에 대한 SSH 로그인은 이 예에서 구성되지 않습니다. 장치에는 원격 로그인을 허용하도록 구성된 루트가 아닌 사용자가 있어야 합니다. 또는 SSH를 사용한 루트 사용자 로그인을 허용하도록 문에 인수를 추가할 수 있습니다.root-login allowsystem services ssh

구성 모드에서 을 (를) 발행하여 변경 사항을 활성화해야 합니다.commit

팁:

디바이스에 대한 액세스를 제한하는 필터를 적용할 때는 를 사용하는 것이 좋습니다.commit confirmed 이 옵션은 지정된 시간 내에 다른 커밋을 실행할 수 없는 경우 구성을 자동으로 롤백합니다.

단계별 절차

다음 단계에서는 구성 계층의 다양한 수준을 탐색해야 합니다. 이를 수행하는 방법에 대한 지침은 CLI 사용자 가이드구성 모드에서 CLI 편집기 사용을 참조하십시오.

  1. 관리 및 루프백 인터페이스를 구성하고 Telnet 및 SSH 시스템 서비스가 활성화되어 있는지 확인합니다.

  2. 접두사 목록에서 허용되는 호스트 주소 집합을 정의합니다. 이 목록에는 관리 서브넷 및 권한이 부여된 단일 원격 관리 스테이션에 대한 접두사가 포함됩니다.

    접두사 목록은 방화벽 필터에서 참조됩니다. 접두사 목록을 사용하면 디바이스에 액세스할 수 있는 주소를 쉽게 업데이트할 수 있습니다. 접두사 목록만 업데이트해야 하기 때문입니다. 허용된 접두사를 추가하거나 제거할 때 방화벽 필터 자체를 편집할 필요가 없습니다.

  3. 접두사 목록에 정의된 IP 주소를 제외한 모든 IP 주소에서 Telnet 및 SSH 트래픽을 거부하도록 방화벽 필터를 구성합니다.

    action 한정자를 사용할 수 있습니다.except 첫 번째 용어는 가능한 모든 소스 주소에서 일치합니다. 다음 용어는 지정된 접두사 목록에서 해당 소스 주소에 대한 일치를 반전합니다. 그 결과 지정된 프로토콜 및 포트로 향하는 관리 트래픽은 트래픽이 목록의 주소에서 오는 경우에만 허용됩니다. 다른 모든 소스 접두사에서 동일한 프로토콜 및 포트 조합으로의 트래픽은 삭제됩니다. 이 예에서는 필터 디버깅 및 확인을 지원하기 위해 로깅 작업이 추가됩니다.

  4. 다른 모든 트래픽을 허용하도록 기본 용어를 구성합니다. 이렇게 하면 ping, BGP 또는 OSPF와 같은 다른 서비스 및 프로토콜이 필터의 영향을 받지 않습니다.

    팁:

    예제 필터는 의도적으로 허용됩니다. 이전 필터 용어에 의해 거부되거나 삭제되지 않은 모든 트래픽을 명시적으로 허용한다는 점을 감안할 때 보안 위협을 나타낼 수 있습니다. 수락해야 하는 모든 프로토콜 및 서비스를 명시적으로 나열하고 암시적 또는 명시적으로 모든 거부 용어로 필터를 종료하여 더 강력한 보안 필터를 구성할 수 있습니다. 제한적 필터의 단점은 지원되는 서비스가 추가되거나 제거될 때마다 편집해야 한다는 것입니다.

  5. 스테이트리스 방화벽 필터를 루프백 인터페이스에 입력 필터로 적용합니다. 로컬 디바이스에서 전송된 트래픽은 이 예에서 필터링되지 않습니다.

결과

구성 모드에서 다음 명령을 입력하여 작업을 확인합니다.show configuration 출력이 의도된 구성을 표시하지 않으면, 이 예의 구성 지침을 반복하여 수정합니다.

작업이 만족스러우면 구성 모드에서 시작합니다 .commit

팁:

디바이스에 대한 액세스를 제한하는 필터를 적용할 때는 를 사용하는 것이 좋습니다.commit confirmed 이 옵션은 지정된 시간 내에 다른 커밋을 실행할 수 없는 경우 구성을 자동으로 롤백합니다.

무상태 방화벽 필터 확인

관리 액세스를 제한하는 방화벽 필터가 제대로 작동하고 있는지 확인합니다.

수락된 패킷 확인

목적

트래픽이 172.16.0.0/24 서브넷 또는 원격 관리 스테이션과 연결된 10.0.0.1 호스트 접두사에서 공급될 때 방화벽 필터가 SSH 및 Telnet을 올바르게 허용하는지 확인합니다.

작업

  1. 라우터 또는 스위치에서 방화벽 로그를 삭제합니다.

  2. R1 디바이스와 같이 172.16.0.0/24 서브넷에 연결된 호스트에서 명령을 사용하여 DUT에 대한 연결을 시작합니다.ssh 172.16.0.253 기본적으로 R1 디바이스는 대상에 도달하는 데 사용되는 송신 인터페이스의 트래픽을 소싱합니다. 결과적으로 테스트 트래픽은 R1의 172.16.0.254 주소에서 소싱됩니다. 이 트래픽은 참조된 접두사 목록과 일치하는 주소에 대한 작업 수정자 때문에 필터 용어와 일치하지 않습니다.block_non_managerexcept 이 트래픽은 수락되도록 하는 필터 용어와 일치 합니다accept_everything_else

    주:

    이것이 디바이스 간의 첫 번째 SSH 로그인이 user인 경우 SSH 호스트 키를 저장하라는 메시지가 표시됩니다.

  3. SSH 세션을 닫으려면 R2 디바이스의 CLI에서 로그아웃합니다.

    주:

    명령을 사용하여 이 단계를 반복합니다.telnet 텔넷 연결이 성공해야 합니다.

  4. R2 디바이스에서 명령을 사용하여 R2 디바이스의 방화벽 로그 버퍼에 172.16.0.0/24 서브넷의 소스 주소를 가진 항목이 포함되어 있지 않은지 확인합니다.show firewall log 즉, 이 트래픽에 대한 패킷 헤더 정보는 방화벽 필터 로그에 기록 되지 않습니다 . 이 예에서는 용어와 일치하는 트래픽만 기록됩니다.block_non_manager

의미

출력은 관리 네트워크에서 소싱될 때 SSH(및 Telnet) 연결이 허용됨을 확인합니다. 또한 용어와 일치하지 않는 패킷은 기록되지 않음을 보여줍니다.block_non_manager 10.0.0.1 주소가 할당된 원격 관리 스테이션에서 SSH 또는 Telnet 트래픽을 생성하는 경우에도 동일한 결과가 예상됩니다.

기록 및 거부된 패킷 확인

목적

방화벽 필터가 접두사 목록의 접두사 중 하나에서 시작되지 않은 SSH 및 Telnet 트래픽을 올바르게 삭제하는지 확인합니다.manager-ip

작업

  1. 접두사 목록에 지정되지 않은 주소에서 소싱된 SSH 트래픽을 생성합니다.manager-ip R1 디바이스의 루프백 주소에서 세션을 소싱하여 승인되지 않은 IP를 시뮬레이션할 수 있습니다. 또는 관리 서브넷에 연결되어 있지 않고 IP 주소 10.0.0.1이 할당되지 않은 원격 디바이스에서 연결을 시작합니다. 이 SSH 세션에 대한 패킷은 삭제되어야 하며 패킷 헤더 정보는 방화벽 필터 로그 버퍼에 기록되어야 합니다.

    주:

    오류 메시지나 회신을 기대해서는 안 됩니다. 연결 시도 시간이 초과됩니다. 이는 샘플 필터가 동작이 아닌 을 사용하기 때문입니다.discardreject

    출력은 SSH 연결이 성공하지 못했음을 보여줍니다. 이렇게 하면 허용되지 않는 소스 주소에서 전송될 때 필터가 SSH 트래픽을 올바르게 차단함을 확인할 수 있습니다. 인증되지 않은 IP 소스 주소에 의해 시작된 텔넷 세션에 대해서도 동일한 결과가 예상됩니다.

  2. 명령을 사용하여 R2 디바이스의 방화벽 로그 버퍼에 이제 승인되지 않은 소스 주소를 가진 패킷에 대한 항목이 포함되어 있는지 확인합니다.show firewall log

의미

출력은 10.0.0.119 소스 주소의 트래픽이 필터의 로깅 용어 와 일치했음을 확인합니다.limit-mgmt-access 이 예에서는 용어에만 로그 동작이 있습니다.block_non_manager 열은 패킷이 삭제되었음을 나타내는 a를 표시합니다.ActionD 필터링된 트래픽의 수신 인터페이스는 디바이스의 관리 포트 로 확인됩니다.fxp0.0 필터링된 패킷의 전송 프로토콜 및 IP 주소도 표시됩니다.TCP 이 트래픽의 소스 주소는 접두사 목록에 나열 되지 않습니다.10.0.0.119manager-ip

이러한 결과는 방화벽 필터가 이 예제에서 제대로 작동하고 있음을 확인합니다.