Ciscoルータのパスワードを忘れた時のリカバリー方法(特権モード、ログイン、コンソール、telnet、ssh含む)

cisco_router_password_recovery
目次

はじめに

久しぶりにCiscoルータなどを触る場合、特権モードログインパスワードtelnetssh接続時のパスワードを忘れたということが多いかと思います。

特権モードのパスワードを失念した場合は、実機にて電源をOFF、ONし、設定レジスタを変更する必要があります。

特権モードに入りさえすれば、他のパスワード変更はできますので、今回のやり方を覚えれば大丈夫だと思います。

パスワードのリカバリー手順は、型番等により異なります。

ログインパスワードtelnetssh接続時のパスワード変更は、目次から遷移してください。

特権モードのパスワードを変更する際の全体的な流れ

詳しい手順等は後程記載しますが、大まかな流れは以下になります。

STEP
ルータを再起動

手動で電源OFFにし、再度ONにします。

STEP
ROMmomモードに入る

Alt + B を押下し、ROMmomモードに入ります。

STEP
設定レジスタを変更

confreg 0x2142と入力し、Enter。

rommon 1 > confreg 0x2142
STEP
ルータを再起動

resetと入力し、Enter。

You must reset or power cycle for new config to take effect
rommon 2 > reset
STEP
特権モードやログイン、telnet、ssh用のパスワードを変更

パスワードなしで特権モードまで昇格できるので、今回パスワードを変更したい箇所をそれぞれ変更します。

ログインパスワードやtelnet、sshのパスワードを変更したい場合は、この箇所からご参照ください。

STEP
設定を保存

パスワードの変更が終わったら、設定を保存します。

# write memory
STEP
設定レジスタを元に戻す

レジスタの値を元に戻します。

(config)# config-register 0x2102
STEP
ルータを再起動

以下のコマンドで、再起動します。

# reload
STEP
変更後のパスワードでログインできることを確認

設定が変更されていることを確認します。

特権モードのパスワードリカバリー手順

Ciscoルータのパスワードリカバリは、ルータの設定レジスタを変更し、設定を一時的に無視して起動することで、特権モードのパスワードを再設定できるようにします。

特権モードのパスワードを変更する場合、Ciscoルータの実機にコンソールケーブルを接続し、電源OFF/ONができる環境である必要があります。

検証用や勉強用のルータであれば手元にあるので問題ないと思いますが、ラック内にマウントしている場合はそこまで行く必要があります。

ルータを再起動

まずは、手動にてCiscoルータの電源をOFFにし、再度ONにして再起動します。

ROMmomモードに入る

ルータが再起動した直後にAlt + B を押して、ROMmonモードに入ります。

Teratermの場合は、メニューから [Control] → [Send Break] を選択します。

設定レジスタを変更

ROMmonモードで以下のコマンドを入力し、設定レジスタを 0x2142 に変更します。この設定により、ルータが再起動時に startup-config(設定ファイル)を無視して起動します。

rommon 1 > confreg 0x2142

ルータを再起動

設定レジスタの変更が完了したら、以下の通りresetコマンドでルータを再起動します。

You must reset or power cycle for new config to take effect
rommon 2 > reset

これで、startup-config を無視した状態でルータが起動し、パスワードなしでアクセスできるようになります。

特権モードにアクセス

ルータが再起動したら、初期状態のように通常のユーザーモード(Router>)で起動します。この状態で特権モード(Router#)に昇格します。

Router> enable

この操作で、パスワード入力なしに特権モード(Router#)に入れます。

設定ファイル(startup-config)の読み込み

以前の設定を読み込むために、startup-config running-config にコピーします。

Router# copy startup-config running-config
Destination filename [running-config]? 

「Destination filename [running-config]?」と聞かれますが、そのままEnterキーを押下します。

これで、ルータに以前の設定が反映されます。ただし、この状態だと忘れたパスワードがそのまま反映されているので、今から別のパスワードに変更したいと思います。

特権モードのパスワードを変更:(config)# enable secret

新しい特権モードパスワードを設定

特権モードパスワードを再設定します。暗号化されたパスワードを使用するため、enable secret コマンドを使います。

MyRouter# conf t
Enter configuration commands, one per line.  End with CNTL/Z.
MyRouter(config)# enable secret NewPassword123

設定を保存

新しいパスワード設定が再起動後も適用されるよう、現在の設定を保存します。

MyRouter# write memory
Building configuration...
[OK]
MyRouter#

特権モードのパスワード変更は以上です。

あとは、レジスタの値を元に戻してから再起動する必要があります。

コンソール接続時のログインパスワード設定or変更:(config)# line console 0

コンソール接続時のユーザモード用パスワードの設定or変更は、以下になります。

MyRouter(config)# line console 0
MyRouter(config-line)# password <新しいユーザモードパスワード>
MyRouter(config-line)# login

この設定により、コンソールからログインする際にユーザモード用のパスワードが必要になります。

設定を保存

現在の設定を保存します。

MyRouter# write memory
Building configuration...
[OK]
MyRouter#

telnetやssh接続時のログインパスワードを変更:(config)# line vty 0 4

リモート接続(TelnetやSSH)時のパスワードをリセットするには、line vty 0 4 コマンドを使います。

MyRouter(config)# line vty 0 4
MyRouter(config-line)# password <新しいvtyパスワード>
MyRouter(config-line)# login

この設定により、リモート接続時にvtyライン用のパスワードが求められるようになります。

SSH接続用にlogin local を使用する場合

SSH接続でユーザー認証を使用したい場合は、次のように設定します。これにより、vty接続時にローカルユーザーで認証を行います。

MyRouter(config)# username <ユーザー名> secret <ユーザーパスワード>
MyRouter(config)# line vty 0 4
MyRouter(config-line)# login local
MyRouter(config-line)# transport input ssh

設定を保存

現在の設定を保存します。

MyRouter# write memory
Building configuration...
[OK]
MyRouter#

設定レジスタを元に戻す

設定レジスタを通常の起動設定0x2102に戻し、次回再起動時に startup-config が読み込まれるようにします。

MyRouter(config)# config-register 0x2102

最新のconfigを取得(バックアップ)

各種設定を変更したので、最新のconfig(running-config)をファイルにバックアップします(# show run)。

バックアップはTeratermのログで取得すれば十分です。

ルータを再起動

最後にルータを再起動し、通常の動作に戻します。再起動時に「System configuration has been modified. Save? [yes/no]」と表示される場合は、yes を入力してEnterキーを押し、設定を保存して再起動します。

MyRouter# reload

System configuration has been modified. Save? [yes/no]: yes
Building configuration...
[OK]
Proceed with reload? [confirm]

「Proceed with reload? [confirm]」と聞かれたら、そのままEnterキーを押下して再起動を完了させます。

変更後のパスワードでログインできることを確認

Ciscoルータの再起動が完了したら、変更後のパスワードでログインできることを確認します。

動作確認に問題がなければ、作業は以上です。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次