cisco IOS
generate password hash by linux
radius,tacacsを使っていない環境で新規にユーザーを追加する際に、追加したいメンバーにパスワードの入力をしに来てもらうのも面倒だし、かといって後でパスワードを変えるということで一時的なパスワードを振っても、後ですべての機材でパスワードを更新してもらうという作業をしたくない時に役立つ。認証サーバーを立てろという正論はNG。
Cisco IOS,NXOSでuser設定をするときにusernameコマンドでpasswordの設定時にsecret(type 5)を指定して設定する場合、
下記のような適当な4文字のsaltを使用してパスワードをmd5でhashした文字列がコンフィグ上には保存される。
code: ios confing
# ちなみにハッシュ文字列は$で意味が区切られている。$hashid$salt$encryptedとなる
# 下記例だとhashid 1、つまりmd5であり、M6YMがsaltであり、saltとpasswordをハッシュ化したのがencryptedである。
username tanisobe password 5 $1$M6YM$DRyP00Kdk1JqmF0LCTj2w0 role network-admin
要はこの文字列さえわかれば、こちらで追加メンバーが望むパスワードを設定してあげられるのでこのハッシュ値をlinuxで生成できると便利という話。
具体的には次のコマンドでlinux側でもusername設定用の文字列は生成可能。
code: bash
$ openssl passwd -salt openssl rand -base64 3 -1
なおMD5はもはや完全に安全とは言いがたいものなので積極的には使わないものではある。
その点からハッシュ化したからむやみに晒していいというものでもない点には注意。
現時点ではhashを晒したから直ちに元のパスワードがわかる、任意のハッシュを生成する文字列を好きに生成できるというほどのレベルにはなってない。つまり弱衝突耐性はある、強衝突耐性はないレベル。
近い未来に弱衝突に関して突破され破られる可能性がありそうという雰囲気。
Difference bandwidth shping average
CIsco IOSのQosで利用するbandwithとshaping averageの二つの方法があるがその違いについて。これ bandwidthは対応する最低帯域(kbps)の設定をする。
shaping averageは最大帯域値(bps)を設定する。
EEM
Embedded Event Managerというイベントにフックして何かする機能。
ios,nxosで対応。ローエンドモデルですら対応しているのでたいだいのルーターで対応しているかも。
特定コマンドの実行にフックする形で、特定のコマンドを自動実行とかできる。
よくある例としてはcopy run startにフックしてcopy startup tftp://xxxのように自動でサーバーにコンフィグをバックアップするとか。
rollback comand
copy startup runだと設定の全コマンドが順次適用されてしまい、コンフィグを戻す際に副作用がおきる。
configure replace startup-configだと求めていたロールバック(差分だけもとに戻るイメージ)ができる
古いSSH key exchange
ssh -oKexAlgorithms=diffie-hellman-group-exchange-sha1 HOGE
ssh -c aes128-cbc -oKexAlgorithms=diffie-hellman-group-exchange-sha1 -oHostKeyAlgorithms=+ssh-rsa admin@192.168.1.2