Cisco 라우터나 스위치의 enable 패스워드를 분실했을 때, 장비를 공장 초기화하지 않고도 패스워드를 복구할 수 있다. 핵심은 ROMMON 모드를 통해 NVRAM에 저장된 설정을 우회하는 것이다.

 

 

동작 원리 — Configuration Register

 

Cisco 장비는 부팅 시 Configuration Register 값을 참조하여 어떤 방식으로 부팅할지 결정한다. 현재 값은 show version 명령어로 확인할 수 있다.

 

Router# show version
... (생략) ...
Configuration register is 0x2102

0x2102 vs 0x2142 — 비트 비교

Register 값 중 하위 7번째 비트(bit 6)가 NVRAM 로드 여부를 결정한다.

Register 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0x2102 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0
0x2142 0 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0
bit 6 = 0 → NVRAM(startup-config)을 정상적으로 불러옴 (0x2102)
bit 6 = 1 → NVRAM을 건너뛰고 부팅 (0x2142) → 패스워드 없이 진입 가능

 

 

복구 절차

 

※ 콘솔 케이블이 연결되어 있어야 하며, 물리적으로 장비에 접근 가능한 상태여야 한다.

 

1. 장비 재부팅

특권 모드에서 reload 명령어를 입력한다.

 

2. ROMMON 모드 진입

재부팅 직후 부팅 메시지가 뜨는 순간 Ctrl + Shift + Pause Break를 입력하면 ROMMON 프롬프트로 진입한다.

 

3. Configuration Register 변경

NVRAM을 우회하도록 Register 값을 변경한다.

rommon 1 > confreg 0x2142

 

4. 장비 재시작

reset 명령어로 재부팅한다. 이번엔 NVRAM을 거치지 않고 Mini-IOS로 부팅된다.

rommon 2 > reset

 

5. 기존 설정 불러오기

NVRAM에 저장된 기존 설정(startup-config)을 running-config로 복사한다. 이 단계를 거쳐야 기존 설정을 유지하면서 패스워드만 변경할 수 있다.

Router# copy startup-config running-config

※ 이 단계를 생략하면 기존 설정(IP 주소, 라우팅 프로토콜 등)이 모두 날아가므로 반드시 수행해야 한다.

 

6. 패스워드 변경

설정 모드로 진입해 새 패스워드를 설정한다.

Router# configure terminal
Router(config)# enable secret NEW_PASSSWORD

 

7. Configuration Register 원상복구

show version으로 확인하면 아직 0x2142 상태다. 반드시 정상값으로 되돌려야 다음 부팅 시 설정을 정상적으로 불러온다.

Router(config)# config-register 0x2102

 

8. 설정 저장

변경 사항을 NVRAM에 저장한다.

Router# write

 

 

 

 

 

"본 문서는 Classic IOS / IOS XE 기반 ISR 라우터 및 Catalyst 2960·3750 스위치 기준입니다. Catalyst 9000 시리즈나 SD-WAN 장비는 절차가 다를 수 있습니다."

+ Recent posts