Cisco IOS CLI Mode
Cisco IOS(시스코 라우터/스위치 운영체제)는 사용자가 할 수 있는 일을 권한 단계에 따라 여러 모드(mode)로 나눠 둔다. 지금 어떤 모드에 있는지는 화면에 표시되는 mode indicator — 호스트 이름 뒤에 붙는 >, #, (config)# 같은 기호 — 로 확인한다.
모드 계층 구조
Cisco IOS에는 크게 세 가지 모드가 있고, 각 모드는 서로 다른 모드 인디케이터로 표시된다.
| 모드 인디케이터 | 모드 이름 | 권한 | 할 수 있는 일 |
|---|---|---|---|
> | User EXEC | 낮음 (privilege 1) | ping, show version 같은 기본 조회만 가능 |
# | Privileged EXEC | 높음 (privilege 15) | 모든 show 명령, 재부팅, 저장, 디버깅 등 가능 |
(config)# | Global Configuration | 설정 | 실제 설정 변경(인터페이스, VLAN 등) 가능 |
> 상태는 단순 조회만 가능한 단계이고, #로 올라가야 실제 운영에 영향을 주는 명령을 실행할 수 있다. 설정 변경은 한 단계 더 들어간 (config)#에서 이루어진다.
User EXEC(>) 상태에서 Privileged EXEC(#)로 권한을 올리려면 enable secret 설정을 해야한다. 다만 예외는 존재한다.
| 접속 경로 | enable secret 미설정 시 동작 |
|---|---|
| 콘솔(Console) | 보통 비밀번호 없이 바로 #로 진입 가능 |
| Telnet / SSH (VTY) | 기본적으로 차단 (No password set 에러) |
원격 접속(VTY)에서는 비밀번호가 설정되지 않은 상태로는 enable을 허용하지 않지만, 직접 케이블을 꽂아 콘솔로 접속한 경우에는 비밀번호 없이도 권한 상승이 가능하다. 그래서 운영 환경에서는 enable secret을 거의 반드시 설정한다.
진입 흐름
SSH, Telnet, 콘솔 중 어떤 방식으로 접속하든 일반적으로 처음에는 User EXEC 모드(>)로 들어온다. 여기서 enable 명령으로 Privileged EXEC로 올라가고, 다시 configure terminal을 입력하면 Global Configuration 모드로 들어간다.
SW1> enable ← Privileged EXEC로 올라가는 명령
Password: ****** ← enable secret 입력
SW1# ← 권한 상승 성공
SW1# configure terminal
SW1(config)# ← 설정 모드 진입
SW1(config)# interface vlan 10
SW1(config-if)# ip address 10.10.10.1 255.255.255.0
설정 모드에서 특정 인터페이스나 VLAN으로 진입하면 모드 인디케이터는 (config-if)#, (config-vlan)#처럼 한 단계 더 세분화된다. 이 역시 "지금 어떤 대상에 대해 설정하고 있는지"를 사용자에게 알려주는 표시이다.