CiscoルータでのSSHログインは鍵生成が必要。

CiscoルータでSSH接続するにはどうするのか?という設定が必要になって調べました。
なぜいきなり調べたのかというとこんな設定がありまして。

line vty 0 4
privilege level 15
login local
transport input telnet ssh

いったいこれはなに?と思いつつ、SSHで接続するための設定だというのは
調べて分かりました。

しかし、これが設定されているCiscoルータを修理ということで移したところ
SSHが使えなくなっていました。

#show control-plane host open-ports
Active internet connections (servers and established)
Prot Local Address Foreign Address Service State
tcp *:23 *:0 Telnet LISTEN
udp *:67 *:0 DHCPD Receive LISTEN
udp *:123 *:0 NTP LISTEN

#show ip ssh
SSH Disabled – version 1.99

#ip ssh version 2
Please create RSA keys to enable SSH.

調べると、SSHの鍵が作られていないからっていう理由の様子です。

#crypto key generate rsa general-keys label router-key exportable ※router-keyは鍵の名前なので任意。

こんなコマンドで(config モードで)作るようですが、exportableが設定した当時もわからず、
storage というオプションも付けられるようだったのですが、なにがなにやら分からなかったので
調べてみました。
あと、この鍵は保存しなくても大丈夫か?ということも気になりましたし。

すると、exportable は他のルータに持っていくことができるというものでした。

http://www.cisco.com/JP/support/public/mt/tac/100/1004540/ios-ca-concentrator.shtml#maintask1
↑これを見たほうが早いのですが、HTTPサーバの証明書だったりするので、crypto key generate rsa の部分だけ抜粋してみてもらえれば。

じゃ、storage は?と思ったら、鍵の格納場所を決めるオプションらしく、
USBメモリなどに格納することができるんだとか。
へえええええ CiscoのルータってUSBメモリを使えるようになったんだ!という点に驚いたぐらい、
最新のネットワーク機器から離れてたんだなぁと思いました。

ま、でも、基本さえ知っていれば何とかなりますね。
この辺の知識はUNIXサーバを立てるときと変わらないはずなので、どっちかというと
ApacheやSSHサーバの経験のほうが正統な気がします。

追記
http://www.cisco.com/JP/support/public/ht/tac/102/1021173/ssh_cat_switches-j.shtml

これがまとまってますね。
接続できるIPを制限する方法も載っているのでよりよい雰囲気です。