Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

예: Telnet 및 SSH 액세스를 차단하는 필터 구성

요구 사항

공유 네트워크 링크가 있는 Junos OS 를 실행하는 두 개의 디바이스가 필요합니다. 이 예제를 구성하기 전에 기본 디바이스 초기화(관리 인터페이스, 원격 액세스, 사용자 로그인 계정 등) 이외의 특별한 구성이 필요하지 않습니다. 엄격한 요구 사항은 아니지만 R2 디바이스에 대한 콘솔 액세스를 권장합니다.

참고:

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

개요 및 토폴로지

이 예에서는 패킷이 192.168.1.0/30 서브넷에서 유래되지 않는 한 로컬 라우팅 엔진으로 전송된 Telnet 또는 SSH 패킷을 기록 및 거부하는 IPv4 무상태 방화벽 필터를 생성합니다. 필터는 로컬 디바이스로 향하는 트래픽만 영향을 받도록 루프백 인터페이스에 적용됩니다. 입력 방향으로 필터를 적용합니다. 출력 필터는 사용되지 않습니다. 결과적으로 로컬에서 생성된 모든 트래픽이 허용됩니다.

  • 특정 서브넷 또는 IP 접두사에서 유래한 패킷을 일치시키려면 입력 방향에 적용된 IPv4 일치 조건을 사용해야 source-address 합니다.

  • Telnet 포트 및 SSH 포트로 향하는 패킷을 일치시키려면 입력 방향에 적용된 a port telnetport ssh IPv4 일치 조건과 결합된 일치 조건을 사용합니다protocol tcp.

토폴로지 예

그림 1 은 이 예제의 테스트 토폴로지를 보여줍니다. 방화벽 필터가 R2 디바이스에 적용되어 테스트 대상 디바이스(DUT)가 됩니다. R1 및 R2 디바이스는 192.168.1.0/30의 서브넷이 할당된 링크를 공유합니다. 두 디바이스 모두 /32 서브넷 마스크를 사용하여 192.168.255.0/30 접두사에서 할당된 루프백 주소를 가지고 있습니다. 이 기본 예제에서 내부 게이트웨이 프로토콜이 구성되지 않으므로 정적 경로는 루프백 주소 사이에 도달 가능성을 제공합니다.

그림 1: 토폴로지Example Topology

구성

다음 예에서는 구성 계층에서 다양한 수준을 탐색해야 합니다. CLI 탐색에 대한 정보는 구성 모드에서 CLI 편집기 사용을 참조하십시오.

주의:

설계상 샘플 필터는 R1의 공유 서브넷에서 유래되지 않는 한 R2에 대한 Telnet 및 SSH 액세스를 제한합니다. SSH 또는 Telnet을 사용하여 R2 디바이스에 직접 액세스하는 경우 필터를 적용할 때 연결이 끊어집니다. 이 예제를 구성할 때 콘솔 액세스 권한을 갖추는 것이 좋습니다. 필요한 경우 필터를 적용한 후 점프 호스트로 R1 디바이스를 사용하여 R2에 대한 SSH 세션을 시작할 수 있습니다. 또는 샘플 필터를 수정하여 R2 디바이스에 액세스하는 데 사용하는 시스템에 할당된 IP 서브넷도 허용하는 것을 고려하십시오.

이 예제를 구성하려면 다음 작업을 수행하십시오.

CLI 빠른 구성

R1 디바이스에 대한 빠른 구성

R1 디바이스를 신속하게 구성하려면 필요에 따라 다음 명령을 편집하고 계층 수준의 CLI [edit] 에 붙여넣습니다. 구성 모드에서 a를 commit발행하여 변경 사항을 활성화해야 합니다.

R2 디바이스에 대한 빠른 구성

R2 디바이스를 신속하게 구성하려면 필요에 따라 다음 명령을 편집하고 계층 수준의 CLI [edit] 에 붙여넣습니다. 구성 모드에서 a를 commit 발행하여 변경 사항을 활성화해야 합니다.

팁:

디바이스에 대한 원격 액세스에 영향을 줄 수 있는 변경사항을 적용할 때 사용하는 commit-confirmed 것이 좋습니다. Junos OS 구성 활성화 및 확인 필요

R1 디바이스 구성

단계별 절차

R1 디바이스를 구성하려면 다음 단계를 따르십시오.

  1. 인터페이스를 구성합니다.

  2. R2 디바이스의 루프백 주소에 대한 호스트 이름과 정적 경로를 구성합니다. Telnet 및 SSH 액세스를 구성합니다.

R1 디바이스에서 구성 확인 및 커밋

단계별 절차

R1 디바이스에서 후보 구성을 확인하고 커밋하려면 다음 단계를 완료하십시오.

  1. 구성 모드 명령을 사용하여 show interfaces 인터페이스 구성을 확인합니다. 명령 출력에 의도한 구성이 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정합니다.

  2. R2 디바이스의 루프백 주소에 도달하는 데 사용하는 정적 경로와 SSH 및 Telnet 액세스가 활성화되어 있는지 확인합니다. 및 show system services 구성 모드 명령을 사용합니다show routing-options. 명령 출력에 의도한 구성이 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정합니다.

  3. R1 디바이스의 구성이 만족스러우면 후보 구성을 커밋합니다.

R2 디바이스 구성

단계별 절차

R2 디바이스를 구성하려면 다음 단계를 완료하십시오. 먼저 Telnet 및 SSH 액세스를 선택적으로 차단하는 무상태 방화벽 필터를 정의합니다.

  1. 다음 계층에 자신을 배치합니다.edit firewall family inet filter local_acl

  2. 필터 용어 terminal_access를 정의합니다. 이 용어는 지정된 소스 접두사에서 Telnet 및 SSH를 허용합니다.

  3. 필터 용어 terminal_access_denied를 정의합니다. 이 용어는 다른 모든 소스 주소에서 SSH 및 Telnet을 거부합니다. 이 용어는 용어와 일치하는 항목을 기록하고 패킷 소스에 대한 명시적 ICMP(Internet Control Message Protocol) 대상 도달 불가 응답을 다시 생성하도록 구성됩니다. 필터 로깅 옵션에 대한 자세한 내용은 방화벽 필터 로깅 동작을 참조하십시오.

    팁:

    이 작업을 사용하여 discard 소스 측에 ICMP 오류 메시지가 다시 생성되는 것을 억제할 수 있습니다. 자세한 내용은 방화벽 필터 종료 동작 을 참조하십시오.

  4. 선택 사항입니다.

    필터 용어 tcp-estab를 정의합니다. 이 용어는 인터넷에 대한 아웃바운드 액세스를 허용하여 주니퍼 Mist 클라우드에 대한 연결을 지원합니다(tcp-established 비트 필드 일치 조건 tcp-flags "(ack | rst)"으로 첫 번째 TCP 연결 패킷이 아닌 설정된 TCP 세션을 나타냅니다).

  5. 필터 용어 default-term를 정의합니다. 이 용어는 다른 모든 트래픽을 허용합니다. Junos OS 무상태 필터 끝에는 암묵적인 거부 용어가 있습니다. 는 default-term 명시적 수락 동작으로 필터를 종료하여 이 동작을 재정의합니다. 필터가 종료되면 다른 모든 트래픽이 필터에 의해 수락됩니다.

    참고:

    이 예시에서는 다른 모든 트래픽을 허용하지만 네트워크의 경우 라우팅 엔진을 보호해야 할 수도 있습니다. 자세한 내용은 라우팅 엔진 보호를 참조하십시오.

  6. 루프백 인터페이스를 구성하고 입력 방향으로 필터를 적용합니다.

  7. R1 디바이스의 루프백 주소에 대한 호스트 이름, ge-0/0/0 인터페이스, 정적 경로를 구성하고 SSH 및 Telnet을 통해 원격 액세스를 활성화합니다.

디바이스 R2의 구성 확인 및 커밋

단계별 절차

R2 디바이스에서 후보 구성을 확인하고 커밋하려면 다음 단계를 완료하십시오.

  1. 구성 모드 명령을 사용하여 show firewall 무상태 방화벽 필터의 구성을 확인합니다. 명령 출력에 의도한 구성이 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정합니다.

  2. 구성 모드 명령을 사용하여 show interfaces 인터페이스 구성 및 필터 애플리케이션을 확인합니다. 명령 출력에 의도한 구성이 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정합니다.

  3. R1 디바이스의 루프백 주소에 도달하는 데 사용하는 정적 경로를 확인하고 Telnet 및 SSH 액세스가 활성화되어 있는지 확인합니다. 및 show system services 구성 모드 명령을 사용합니다show routing-options. 명령 출력에 의도한 구성이 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정합니다.

  4. R2 디바이스의 구성이 만족스러우면 후보 구성을 커밋합니다.

    팁:

    디바이스에 대한 원격 액세스에 영향을 줄 수 있는 변경사항을 적용할 때 사용하는 commit-confirmed 것이 좋습니다.

무상태 방화벽 필터 확인

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

수락된 패킷 확인

목적

트래픽이 192.168.1.0/30 서브넷에서 유래될 때 방화벽 필터가 SSH 및 Telnet을 올바르게 허용하는지 확인합니다.

작업

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

  2. 192.168.1.0/30 서브넷 IP 주소의 호스트에서 명령을 사용하여 ssh 192.168.255.2 허용된 소스 주소에서 SSH를 사용하여 디바이스에 로그인할 수 있는지 확인합니다. 이 패킷이 수락되어야 하지만 이 패킷에 대한 패킷 헤더 정보는 패킷 포워딩 엔진의 방화벽 필터 로그 버퍼에 기록되어서는 안 됩니다. 이것이 이러한 디바이스 간의 첫 번째 SSH 로그인 user 인 경우 SSH 호스트 키를 저장하라는 메시지가 표시됩니다.

    참고:

    기본적으로 R1 디바이스는 대상에 도달하는 데 사용되는 송신 인터페이스에서 SSH 트래픽을 조달합니다. 결과적으로, 이 트래픽은 R1 디바이스의 ge-0/0/0 인터페이스에 할당된 192.168.1.1 주소에서 조달됩니다.

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

  4. 192.168.1.0/30 서브넷 IP 주소의 호스트에서 명령을 사용하여 telnet 192.168.255.2 허용된 소스 주소에서 텔넷을 사용하여 라우터 또는 스위치에 로그인할 수 있는지 확인합니다. 이 패킷이 수락되어야 하지만 이 패킷에 대한 패킷 헤더 정보는 패킷 포워딩 엔진의 방화벽 필터 로그 버퍼에 기록되어서는 안 됩니다.

  5. CLI에서 로그아웃하여 R2 디바이스에 대한 텔넷 세션을 닫습니다.

  6. 명령을 사용하여 show firewall log R2 디바이스의 패킷 포워딩 엔진(PFE)의 방화벽 로그 버퍼에 192.168.1.0/30 서브넷의 소스 주소를 갖는 항목이 포함되어 있지 않은 지 확인하십시오.

기록 및 거부된 패킷 확인

목적

방화벽 필터가 192.168.1.0/30 서브넷에서 유래 하지 않은 SSH 및 Telnet 트래픽을 올바르게 거부하는지 확인합니다.

작업

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

  2. R1 디바이스의 루프백 주소에서 조달된 SSH 트래픽을 생성합니다. 이 트래픽의 소스 주소는 허용된 192.168.1.0/30 서브넷 외부 에 있습니다. 이 소스 주소에서 SSH를 사용하여 디바이스에 로그인할 수 없는지 확인하려면 명령을 사용합니다ssh 192.168.255.2 source 192.168.255.1. 이 패킷이 거부되어야 하며 패킷 헤더 정보는 방화벽 필터 로그 버퍼에 기록되어야 합니다.

    출력은 SSH 연결이 거부되었음을 보여줍니다. 이 출력은 필터가 ICMP 오류 메시지를 생성하고 허용되지 않은 소스 주소에서 전송될 때 SSH 트래픽을 올바르게 차단함을 확인합니다.

  3. R1 디바이스의 루프백 주소에서 조달된 텔넷 트래픽을 생성합니다. 이 트래픽의 소스 주소는 허용된 192.168.1.0/30 서브넷 외부 에 있습니다. 이 소스 주소에서 Telnet을 사용하여 디바이스에 로그인할 수 없는지 확인하려면 명령을 사용합니다telnet 192.168.255.2 source 192.168.255.1. 이 패킷이 거부되어야 하며 이 패킷에 대한 패킷 헤더 정보는 PFE의 방화벽 필터 로그 버퍼에 기록되어야 합니다.

    출력은 텔넷 연결이 거부되었음을 보여줍니다. 이 출력은 필터가 ICMP 오류 메시지를 생성하고 허용되지 않은 소스 주소에서 전송될 때 Telnet 트래픽을 올바르게 차단함을 확인합니다.

  4. 이 명령을 사용하여 show firewall log R2 디바이스의 방화벽 로그 버퍼에 소스 주소가 192.168.255.1인 패킷이 거부되었음을 보여주는 항목이 포함되어 있는지 확인합니다.

    출력은 192.168.255.1 소스 주소의 트래픽이 필터의 용어와 terminal_access_denied 일치함을 확인합니다. 열에는 Action 이러한 패킷이 거부되었음을 나타내는 가 표시됩니다 R . 인터페이스, 전송 프로토콜, 소스 및 대상 주소도 나열됩니다. 이러한 결과는 방화벽 필터가 이 예에서 제대로 작동하고 있음을 확인합니다.