SNMP 커뮤니티
SNMP 커뮤니티는 구성원에게 부여된 권한 수준을 정의합니다. 즉, 사용 가능한 관리 정보 베이스 개체, 해당 개체에 대해 유효한 작업(읽기 전용 또는 읽기-쓰기), 소스 IP를 기반으로 승인된 SNMP 클라이언트 등과 같이 구성원에게 부여된 권한 부여 수준을 정의합니다.
SNMP 커뮤니티 구성
Junos OS에서 SNMP 에이전트를 구성하는 것은 네트워크의 다른 관리되는 장치와 익숙한 설정을 공유하는 간단한 작업입니다. 예를 들면, SNMP 커뮤니티 문자열과 트랩의 대상을 사용하여 Junos OS를 구성해야 합니다. 커뮤니티 문자열은 장치 및 장치에서 실행 중인 에이전트 컬렉션을 공통 관리 도메인으로 그룹화하는 관리 명칭입니다. 관리자와 에이전트가 동일한 커뮤니티를 공유하는 경우, 서로 통신할 수 있습니다.
SNMP 커뮤니티 문자열은 SNMP 서버 시스템과 클라이언트 시스템 간의 관계를 정의합니다. 이 문자열은 서버에 대한 클라이언트의 액세스를 제어하는 암호입니다.
읽기 전용 SNMP 커뮤니티를 만들려면:
읽기-쓰기 SNMP 커뮤니티를 만들려면:
-
네트워크에서 사용되는 SNMP 커뮤니티를 입력합니다.
[edit groups global] user@host# set snmp community name
이 예에서는 디바이스에서 실행 중인 SNMP 에이전트에 대해 읽기-쓰기 액세스 권한을 부여한 커뮤니티를 식별하기 위한 표준 커뮤니티 문자열
private
을(를) 보여 줍니다.[edit groups global] user@host# set snmp community private
-
커뮤니티 인증 수준을 정의합니다.
[edit groups global snmp community name] user@host# set authorization authorization
이 예에서는 공용 커뮤니티를 읽기 전용 액세스로 제한합니다. 공용 커뮤니티에 속하는 SNMP 클라이언트(예: SNMP 관리 시스템)는 관리 정보 베이스(MIB) 변수를 읽을 수 있지만 MIB 변수를 설정(변경)할 수는 없습니다.
[edit groups global snmp community public] user@host# set authorization read-write
-
Junos OS에서 SNMP 에이전트를 변경할 권한이 있는 커뮤니티의 클라이언트 목록을 정의합니다.
IP 주소 및 프리픽스별로 클라이언트를 나열합니다.
[edit groups global snmp community name] user@host# set clients address
예:
[edit groups global snmp community private] user@host# set clients 192.168.1.15/24 user@host# set clients 192.168.1.18/24
-
커뮤니티 내에서 인증되지 않은 클라이언트의 IP 주소를 지정하고 나서
restrict
명령문을 정의합니다.[edit groups global snmp community name] user@host# set clients address resrict
다음 명령문에서는 다른 모든 호스트가 공용 커뮤니티에서 제한되는 것으로 정의됩니다.
[edit groups global snmp community private] user@host# set clients 0/0 restrict
-
구성의 최상위 수준에서 구성 그룹을 적용합니다.
구성 그룹을 사용하는 경우 해당 구성 그룹을 적용해야 합니다.
[edit] user@host# set apply-groups global
-
구성을 커밋합니다.
user@host# commit
SNMP 커뮤니티에 클라이언트 그룹 추가
Junos OS는 하나 이상의 클라이언트 그룹을 SNMP 커뮤니티에 추가할 수 있도록 해줍니다. [edit snmp community community-name]
계층 수준에서 client-list-name name
명령문을 포함해 클라이언트 목록 또는 접두사 목록의 모든 구성원을 SNMP 커뮤니티에 추가할 수 있습니다.
클라이언트 목록을 정의하려면 클라이언트의 IP 주소 뒤의 set snmp client-list client-list-name
명령문을 사용합니다.
[edit policy options]
계층 수준에서 접두사 목록을 구성할 수 있습니다. SNMP 커뮤니티 구성에서 접두사 목록을 지원하는 것은 단일 목록을 사용하여 SNMP 및 라우팅 정책을 구성할 수 있도록 해줍니다. prefix-list
명령문에 대한 자세한 내용은 라우팅 정책, 방화벽 필터 및 트래픽 폴리서 사용자 설명서를 참조하세요.
SNMP 커뮤니티에 클라이언트 목록이나 접두사 목록을 추가하려면 set snmp commmunity community-name client-list-name
명령문을 사용합니다.
클라이언트 목록 및 접두사 목록은 같은 이름을 가져서는 절대 안됩니다.
다음 예는 클라이언트 목록을 정의하는 방법을 보여줍니다.
[edit] snmp { client-list clentlist1 { 10.1.1.1/32; 10.2.2.2/32; } }
다음 예는 클라이언트 목록을 SNMP 커뮤니티에 추가하는 방법을 보여줍니다.
[edit] snmp { community community1 { authorization read-only; client-list-name clientlist1; } }
다음 예는 접두사 목록을 SNMP 커뮤니티에 추가하는 방법을 보여줍니다.
[edit] policy-options { prefix-list prefixlist { 10.3.3.3/32; 10.5.5.5/32; } } snmp { community community2 { client-list-name prefixlist; } }
SNMP 커뮤니티 문자열 구성
SNMP 커뮤니티 문자열은 SNMP 서버 시스템과 클라이언트 시스템 간의 관계를 정의합니다. 이러한 문자열은 서버에 대한 클라이언트의 액세스를 제어하는 암호와 같은 역할을 합니다.
Junos OS 구성에서 커뮤니티 문자열을 구성하려면 set snmp community
명령문을 사용합니다.
커뮤니티 이름에 공백이 있으면 따옴표(" ")로 묶습니다
커뮤니티의 기본 인증 수준은 read-only
입니다. 커뮤니티 내에서 Set
요청을 허용하려면 해당 커뮤니티를 authorization read-write
(으)로 정의하십시오. Set
요청의 경우 view
명령문을 사용하여 읽기-쓰기 권한으로 액세스할 수 있는 특정 관리 정보 베이스(MIB) 개체도 포함시켜야 합니다. 기본 보기에는 읽기 전용 권한으로 액세스할 수 있는 지원되는 모든 관리 정보 베이스(MIB) 개체가 포함되어 있습니다. 읽기-쓰기 권한으로 액세스할 수 있는 MIB 개체는 없습니다. view
명령문에 대한 자세한 내용은 MIB 보기 구성을 참조하세요.
이러한 커뮤니티를 사용할 수 있는 클라이언트(커뮤니티 구성원)의 IP 주소가 clients
명령문에 나열됩니다. clients
명령문이 없는 경우, 모든 클라이언트가 허용됩니다. address
의 경우 호스트 이름이 아닌 IPv4 주소를 지정해야 합니다. 액세스가 허가되지 않은 모든 SNMP 클라이언트에 대한 액세스를 거부하려면 default restrict
옵션을 포함시키십시오. 로컬 스위치에 대한 SNMP 클라이언트 액세스를 제한하려면 항상 default restrict
옵션을 포함하는 것이 좋습니다.
커뮤니티 이름은 각 SNMP 시스템 내에서 고유해야 합니다.
참조
예: SNMP 커뮤니티 문자열 구성
모든 클라이언트에 읽기 전용 액세스를 부여합니다. 다음 구성인 경우 시스템은 커뮤니티 문자열 public
(을)를 포함하는 SNMP Get
, GetNext
및 GetBulk
요청에 응답합니다.
[edit] snmp { community public { authorization read-only; } }
모든 클라이언트에게 핑 관리 정보 베이스(MIB) 및 jnxPingMIB
에 대한 읽기 쓰기 액세스를 부여합니다. 다음 구성인 경우 시스템은 커뮤니티 문자열 private
을(를) 포함하는 SNMP Get
, GetNext
, GetBulk
및 Set
요청에 응답하고, 핑 관리 정보 베이스(MIB) 또는 jnxPingMIB
계층에 포함된 OID를 지정합니다.
[edit] snmp { view ping-mib-view { oid pingMIB include; oid jnxPingMIB include; community private { authorization read-write; view ping-mib-view; } } }
다음 구성을 사용하면 범위 1.2.3.4/24
내의 IP 주소를 가진 클라이언트에 읽기 전용 액세스를 허용하고 fe80::1:2:3:4/64
범위 내의 시스템에 대한 액세스를 거부합니다.
[edit] snmp { community field-service { authorization read-only; clients { default restrict; # Restrict access to all SNMP clients not explicitly # listed on the following lines. 1.2.3.4/24; # Allow access by all clients in 1.2.3.4/24 except fe80::1:2:3:4/64 restrict;# fe80::1:2:3:4/64. } } }
SNMPv3 커뮤니티 구성
SNMP 커뮤니티는 SNMP 서버 시스템과 클라이언트 시스템 간의 관계를 정의합니다. 이 문은 선택 사항입니다.
SNMP 커뮤니티를 구성하려면 [edit snmp v3]
계층 수준에서 snmp-community
문을 포함합니다.
[edit snmp v3] snmp-community community-index;
community-index
는 SNMP 커뮤니티의 인덱스입니다.
SNMP 커뮤니티 속성을 구성하려면 [edit snmp v3 snmp-community community-index]
계층 수준에서 다음 문을 포함합니다.
[edit snmp v3 snmp-community community-index] community-name community-name; context context-name; security-name security-name; tag tag-name;
다음은 snmp v3 snmp-community
구성에 필요한 최소 샘플 구성 세트입니다.
set snmp v3 vacm security-to-group security-model v2c security-name NOSNMPV3 group SNMPV3GROUP set snmp v3 vacm access group SNMPV3GROUP default-context-prefix security-model any security-level none read-view SNMPVIEW set snmp v3 vacm access group SNMPV3GROUP default-context-prefix security-model any security-level none write-view SNMPVIEW set snmp v3 snmp-community SNMPV3COMMUNITY community-name JTACCOMMUNITY set snmp v3 snmp-community SNMPV3COMMUNITY security-name NOSNMPV3 set snmp view SNMPVIEW oid .1 include
SNMPv3를 지원하지 않는 사용자가 사용하는 커뮤니티는 계속해서 SNMPv2를 사용합니다.
자세한 내용은 다음 구성을 참조하십시오.
snmpget -v 2c -c JTACCOMMUNITY 10.52.170.100 sysUpTime.0
이 섹션은 다음 주제를 포함합니다.
커뮤니티 이름 구성
커뮤니티 이름은 SNMP 커뮤니티를 정의합니다. SNMP 커뮤니티는 SNMPv1 또는 SNMPv2c 클라이언트에 권한을 부여합니다. 구성된 보안 이름과 연결된 액세스 권한은 사용 가능한 MIB 개체와 해당 개체에 허용되는 작업(읽기, 쓰기, 또는 알림)을 정의합니다.
SNMP 커뮤니티 이름을 구성하려면 [edit snmp v3 snmp-community community-index]
계층 수준에서 community-name
문을 포함합니다. 이 명령문에 대한 자세한 내용은 community-name을(를) 참조하십시오.
컨텍스트 구성
SNMP 컨텍스트는 SNMP 엔티티에 액세스할 수 있는 관리 정보 집합을 정의합니다. 일반적으로 SNMP 엔티티는 여러 컨텍스트에 액세스할 수 있습니다. 컨텍스트는 물리적 또는 논리적 시스템, 여러 시스템의 집합, 또는 시스템의 하위 집합일 수 있습니다. 관리 도메인의 각 컨텍스트에는 고유 식별자가 있습니다.
SNMP 컨텍스트를 구성하려면 [edit snmp v3 snmp-community community-index]
계층 수준에서 context context-name
문을 포함합니다. 이 명령문에 대한 자세한 내용은 context (SNMPv3)을(를) 참조하십시오.
라우팅 인스턴스 또는 논리 시스템을 쿼리하려면
보안 이름 구성
보안 이름에 커뮤니티 문자열을 할당하려면 [edit snmp v3 snmp-community community-index]
계층 수준에서 security-name
문을 포함합니다.
[edit snmp v3 snmp-community community-index] security-name security-name;
security-name
은 액세스 제어를 설정할 때 사용합니다. [edit snmp v3 vacm]
계층 수준의 security-to-group
구성은 그룹을 나타냅니다.
이 보안 이름은 트랩을 구성할 때 [edit snmp v3 target-parameters target-parameters-name parameters]
계층 수준에서 구성된 보안 이름과 일치해야 합니다.
태그 구성
태그를 구성하려면 [edit snmp v3 snmp-community community-index]
계층 수준에서 tag
문을 포함합니다. 이 명령문에 대한 자세한 내용은 tag을(를) 참조하십시오.
예: SNMPv3 커뮤니티 구성
이 예제는 SNMPv3 커뮤니티를 구성하는 방법을 보여줍니다.
요구 사항
이 예를 구성하기 전에 디바이스 초기화를 제외한 특별한 구성은 필요하지 않습니다.
개요
이 예제는 SNMPv3 커뮤니티를 만드는 방법을 보여줍니다. SNMP 커뮤니티 이름을 정의하고, 액세스 제어를 수행하기 위해 보안 이름을 지정하고 커뮤니티 문자열을 사용하도록 허용된 관리자의 주소를 식별하는 태그 이름을 정의합니다. 대상 주소는 알림 전송에 사용되는 관리 응용 프로그램의 주소와 매개 변수를 정의합니다.
디바이스가 인식된 커뮤니티 문자가 있는 패킷을 수신하고 태그가 해당 패킷에 연결되어 있으면 Junos 소프트웨어는 이 태그가 있는 모든 대상 주소를 조사하고 이 패킷의 소수 주소가 구성된 대상 주소 중 하나와 일치하는지 확인합니다.
트랩을 전송하려는 곳을 지정하고 어떤 SNMPv1 및 SNMPv2c 패킷이 허용되는지를 정의합니다. 대상 주소를 식별하는 대상 주소 이름을 지정하고, 대상 주소, 주소의 마스크 범위, 포트 번호, 태그 리스트 및 대상 매개 변수를 정의합니다.
구성
CLI 빠른 구성
이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 바꾸고 [edit snmp v3]
계층 수준에서 명령을 CLI로 복사해 붙여 넣은 다음, 구성 모드에서 commit
을 입력합니다.
set snmp-community index1 community-name "public" set snmp-community index1 security-name john set snmp-community index1 tag router1 set target-address ta1 address 10.1.1.1 set target-address ta1 address-mask 255.255.255.0 set target-address ta1 port 162 set target-address ta1 tag-list router1 set target-address ta1 target-parameters tp1
절차
단계별 절차
다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. 이를 수행하는 방법에 대한 지침은 Junos OS CLI 사용자 가이드의 구성 모드에서 CLI 편집기 사용을 참조하십시오.
SNMP 커뮤니티 이름을 설정합니다.
[edit snmp v3] user@host# set snmp-community index1 community-name "public"
주:SNMP 커뮤니티 이름은 고유해야 합니다.
액세스 제어를 수행하기 위해 보안 이름을 설정합니다.
[edit snmp v3] user@host# set snmp-community index1 security-name john
태그 이름을 정의합니다. 태그 이름은 커뮤니티 문자열 사용이 허용된 관리자의 주소를 나타냅니다.
[edit snmp v3] user@host# set snmp-community index1 tag router1
SNMP 대상 주소를 설정합니다.
[edit snmp v3] user@host# set target-address ta1 address 10.1.1.1
커뮤니티 문자열 액세스 제어를 위한 주소의 마스크 범위를 설정합니다.
[edit snmp v3] user@host#set target-address ta1 address-mask 255.255.255.0
SNMPv3 대상 포트 번호를 설정합니다.
[edit snmp v3] user@host#set target-address ta1 port 162
대상 주소를 선택하기 위한 SNMPv3 태그 목록을 설정합니다.
[edit snmp v3] user@host#set target-address ta1 tag-list router1
대상 파라미터 테이블의 SNMPv3 대상 파라미터 이름을 설정합니다.
[edit snmp v3] user@host#set target-address ta1 target-parameters tp1
결과
구성 모드에서 show snmp v3
명령을 입력하여 구성을 확인합니다. 출력이 의도된 구성을 표시하지 않으면, 이 예의 구성 지침을 반복합니다.
[edit] user@host# show snmp v3 target-address ta1 { address 10.1.1.1; port 162; tag-list router1; address-mask 255.255.255.0; target-parameters tp1; } snmp-community index1 { community-name "$9$JOZi.QF/AtOz3"; ## SECRET-DATA security-name john; tag router1; }