Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Ansible을 사용하여 Junos 디바이스를 공장 기본 구성 설정으로 복원

요약 주니퍼 네트웍스 Ansible 모듈을 사용하여 Junos 디바이스를 공장 기본 구성 설정으로 복원합니다.

Ansible을 사용하여 공장 기본 구성 설정을 복원하는 방법

주니퍼 네트웍스는 Ansible을 사용한 Junos 디바이스 관리를 지원하며, 디바이스를 공장 기본 구성 설정으로 복원할 수 있는 모듈을 제공합니다. 표 1 에는 모듈이 요약되어 있습니다.

표 1: 디바이스를 영점화하는 모듈

콘텐츠 집합

모듈 이름

juniper.device 컬렉션

system

Juniper.junos 역할

juniper_junos_system

또는 juniper_junos_system 모듈을 사용하여 system 디바이스를 공장 기본 구성 설정으로 복원하려면 모듈의 action 인수를 로 'zeroize'설정합니다. 디바이스를 공장 기본 구성 설정으로 복원한 후 디바이스에 액세스하려면 콘솔을 통해 루트로 로그인해야 합니다.

참고:

릴리스 2.0.0부터 Juniper.junos 모듈은 및 junos_zeroize 모듈의 기능을 대체합니다junos_shutdown.juniper_junos_system

인수는 action: "zeroize" 모듈이 대상 호스트에서 작동 명령을 실행 request system zeroize 하도록 합니다. 이 명령은 지정된 라우팅 엔진에서 모든 구성 정보를 제거하고, 디바이스의 모든 키 값을 재설정한 다음, 디바이스를 재부팅하고 공장 기본 구성 설정으로 재설정합니다. zeroize 작업은 디렉터리에서 파일의 연결을 해제하여 사용자 지정 구성 및 로그 파일을 포함한 모든 데이터 파일을 제거하며, SSH, 로컬 암호화, 로컬 인증, IPsec, RADIUS, TACACS+ 및 SNMP에 대한 모든 일반 텍스트 암호, 비밀 및 개인 키를 포함하여 시스템에서 사용자가 생성한 모든 파일도 제거합니다. 자세한 내용은 시스템 영점 조정 요청을 참조하세요.

다음 Ansible 플레이북은 juniper.device 컬렉션의 system 모듈을 action: "zeroize" 사용하여 인벤토리 그룹의 각 호스트에 있는 모든 라우팅 엔진을 공장 기본 구성 설정으로 재설정합니다.

기본적으로 이 action: "zeroize" 작업은 듀얼 라우팅 엔진 또는 버추얼 섀시 설정의 모든 라우팅 엔진을 공장 기본 구성 설정으로 재설정합니다. 또한 어플리케이션이 연결된 라우팅 엔진에서만 작업을 수행하도록 모듈에 지시할 수 있습니다.

듀얼 라우팅 엔진 또는 버추얼 섀시 설정의 모든 라우팅 엔진에서 작업을 수행해야 함을 명시적으로 나타내려면, 기본값인 인수를 포함합니다 all_re: True .

애플리케이션이 연결된 라우팅 엔진에서만 요청된 작업을 수행하려면 인수를 all_re: False 포함합니다.

모듈에 모든 구성 및 로그 파일을 제거하는 것 외에도 모든 메모리와 미디어를 스크러빙하도록 지시하려면 인수를 media: True 포함합니다. 인수를 media: True 포함하는 것은 작동 모드 명령을 실행하는 request system zeroize media 것과 같습니다. 이 media 옵션은 디스크, 플래시 메모리 장치, 이동식 USB 등을 포함하여 시스템에 연결된 모든 저장 장치를 스크러빙합니다. 스크러빙 프로세스의 지속 시간은 지워지는 미디어의 크기에 따라 다릅니다.

예: Ansible을 사용하여 공장 기본 구성 설정 복원

이 예는 컬렉션의 system juniper.device 모듈을 사용하여 Junos 디바이스를 공장 기본 구성 설정으로 복원하는 방법을 보여줍니다. 모든 유형의 연결을 사용하여 모듈을 실행할 수 있습니다. 그러나 디바이스를 재설정한 후에는 콘솔 서버 또는 CONSOLE 포트를 통해서만 루트로만 다시 액세스할 수 있습니다. 이 예는 콘솔 서버를 통해 디바이스에 연결합니다.

요구 사항

이 예에서 사용되는 하드웨어 및 소프트웨어 구성 요소는 다음과 같습니다.

  • 컬렉션이 juniper.device 설치된 Ansible 2.10 이상을 실행하는 구성 관리 서버

  • 콘솔 서버를 통해 콘솔 포트에 액세스할 수 있고 적절한 권한으로 구성된 사용자 계정이 있는 Junos 디바이스

  • 필수 호스트가 정의된 기존 Ansible 인벤토리 파일

개요

이 예에서는 모듈을 사용하여 system 인벤토리 그룹의 각 호스트를 공장 기본 구성 설정으로 재설정하는 Ansible 플레이북을 제공합니다. 모듈의 action 인수 값은 호스트에서 실행할 작업을 정의합니다. 로 "zeroize" 설정하면 action 각 호스트에서 명령이 실행됩니다request system zeroize. 이 명령은 라우팅 엔진에서 모든 구성 정보를 제거하고, 디바이스의 모든 키 값을 재설정한 다음, 디바이스를 재부팅하고 공장 기본 구성 설정으로 재설정합니다.

참고:

request system zeroize 명령은 디렉터리에서 파일의 연결을 해제하여 사용자 지정된 구성 및 로그 파일을 포함한 모든 데이터 파일을 제거합니다. 또한 이 명령은 SSH, 로컬 암호화, 로컬 인증, IPsec, RADIUS, TACACS+ 및 SNMP에 대한 모든 일반 텍스트 암호, 비밀 및 개인 키를 포함하여 시스템에서 모든 사용자 생성 파일을 제거합니다.

플레이북에서 모듈을 호출할 때 대화형 프롬프트를 사용하여 사용자가 디바이스를 재설정할 것인지 확인하는 것이 좋습니다. 사용자가 의도치 않게 플레이북을 실행하고 확인이 없으면 실수로 디바이스를 공장 기본 구성으로 되돌리고 해당 디바이스가 필요한 모든 네트워크를 방해할 수 있습니다. 예방 조치로 이 플레이북은 대화형 프롬프트를 사용하여 사용자가 디바이스를 재설정할 것인지 확인하고 모듈을 실행하기 위해 명령줄에 'yes'를 수동으로 입력해야 합니다. Confirmation check 작업이 실패하면 Ansible 제어 노드는 해당 디바이스에 대한 플레이 중인 다른 작업을 건너뜁니다.

호스트를 공장 기본 구성으로 복원하는 작업은 확인 확인에 system 성공한 경우 모듈을 실행합니다. 및 port: 23 인수는 mode: "telnet" 모듈이 콘솔 서버의 포트 23에 텔넷하도록 지시합니다. password 매개 변수는 변수 값으로 설정되며, 이 값은 password 실행 중에 플레이북에 표시됩니다. 재부팅 후 디바이스에 액세스하려면 콘솔을 통해 루트로 로그인해야 합니다.

구성

Ansible 플레이북 생성 및 실행

단계별 절차

모듈을 사용하여 system Junos 디바이스를 공장 기본 구성 설정으로 복원하는 플레이북을 생성하려면 다음을 수행합니다.

  1. 플레이북에 대한 상용구와 모듈을 로컬에서 실행하는 이 플레이를 포함합니다.

  2. 사용자 자격 증명이 아직 다른 방법을 통해 전달되지 않은 경우 변수에 대한 password 대화형 프롬프트를 만듭니다.

  3. 모듈의 우발적인 실행을 방지하기 위해 대화형 프롬프트를 만듭니다.

  4. 사용자 의도를 확인하는 작업을 만듭니다.

  5. 디바이스의 모든 라우팅 엔진을 공장 기본 구성 설정으로 재설정하는 작업을 생성합니다.

  6. (선택 사항) 응답을 인쇄할 작업을 만듭니다.

결과

Ansible 제어 노드에서 완료된 플레이북을 검토합니다. 플레이북에 의도한 코드가 표시되지 않으면 이 예제의 지침을 반복하여 플레이북을 수정하십시오.

플레이북 실행

플레이북을 실행하려면:

  • ansible-playbook 제어 노드에서 명령을 실행하고 플레이북 경로와 원하는 옵션을 제공합니다.

확인

플레이북 실행 확인

목적

Junos 디바이스가 공장 기본 구성으로 재설정되었는지 확인합니다.

작업

콘솔 포트를 통해 루트로 디바이스에 액세스합니다. 이제 장치가 기억 상실 상태여야 합니다.

의미

프롬프트는 Amnesiac 공장 기본 구성에서 부팅되고 호스트 이름이 구성되지 않은 디바이스를 나타냅니다.

릴리스 기록 테이블
릴리스
설명
2.0.0
릴리스 2.0.0부터 Juniper.junos 모듈은 및 junos_zeroize 모듈의 기능을 대체합니다 junos_shutdown. juniper_junos_system