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-access 를 구성합니다.manager-ip 이렇게 하면 접두사 목록에 나열된 IP 주소만 디바이스를 관리할 수 있습니다.

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

그림 1: 네트워크 토폴로지 Network diagram showing an Authorized Remote Management Station at 10.0.0.1 connecting to Gateway R1 at 10.0.0.254 and DUT R2 at 172.16.0.253.

디바이스에 대한 관리 액세스 제한을 위한 IP 주소 목록 구성

절차

CLI 빠른 구성

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

참고:

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

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

팁:

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

단계별 절차

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

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

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

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

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

    동작 수정자의 사용 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 서브넷 연결된 호스트에서 명령을 사용하여 ssh 172.16.0.253 DUT에 대한 연결을 시작합니다. 기본적으로 R1 디바이스는 대상에 도달하는 데 사용되는 송신 인터페이스의 트래픽을 소스합니다. 결과적으로, 테스트 트래픽은 R1의 172.16.0.254 주소에서 조달됩니다. 이 트래픽은 참조된 접두사 목록과 일치하는 주소에 대한 작업 수정자 때문에 except 필터 용어와 block_non_manager 일치하지 않습니다. 이 트래픽은 허용되는 필터 용어와 accept_everything_else 일치합니다

    참고:

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

  3. R2 디바이스의 CLI에서 로그아웃하여 SSH 세션을 닫습니다.

    참고:

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

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

의미

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

기록 및 거부된 패킷 확인

목적

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

작업

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

    참고:

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

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

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

의미

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

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