概要
このドキュメントでは、StarOSリリース20以降で.chassisidfile(シャーシID)をバックアップする方法について説明します。
背景説明
シャーシキーは、コンフィギュレーションファイル内の暗号化されたパスワードの暗号化と復号化に使用されます。複数のシャーシが同じシャーシキー値で設定されている場合、同じシャーシキー値を共有するどのシャーシでも暗号化パスワードを復号化できます。これに関連して、特定のシャーシキー値では、異なるシャーシキー値で暗号化されたパスワードを復号化できません。
シャーシキーは、ファイルに保存されているシャーシIDを生成するために使用され、コンフィギュレーションファイルの機密データ(パスワードや秘密など)を保護するためのプライマリキーとして使用されます
リリース15.0以降では、シャーシIDはシャーシキーのSHA256ハッシュです。シャーシキーは、CLIコマンドまたはクイックセットアップウィザードを使用して設定できます。シャーシIDが存在しない場合は、ローカルMACアドレスを使用してシャーシIDが生成されます。
リリース19.2以降では、ユーザはクイックセットアップウィザードまたはCLIコマンドを使用してシャーシキーを明示的に設定する必要があります。設定されていない場合は、ローカルMACアドレスを使用してデフォルトのシャーシIDが生成されます。シャーシキー(およびシャーシID)がない場合、保存されたコンフィギュレーションファイルに機密データは表示されません。
シャーシIDは、ユーザが入力したシャーシキーのSHA256ハッシュ(base36形式でエンコード)と32バイトのセキュアな乱数です。これにより、シャーシキーとシャーシIDにキーセキュリティ用の32バイトのエントロピーがあることが保証されます。
シャーシIDが使用できない場合、コンフィギュレーションファイル内の機密データの暗号化と復号化が機能しません。
問題:同じノード上で同じ構成を実行するためにシャーシキー値をバックアップするには不十分です。
リリース19.2以降の動作の変更により、同じノードで同じ設定を実行できるようにシャーシキー値をバックアップするだけでは十分ではありません。
さらに、設定されたシャーシキーに付加されたランダムな32バイトの数のために、同じシャーシキーに基づいて生成された異なるシャーシIDが常に存在します。
同じ古いキーを入力しても常に負の値を返すので、cliコマンドchassis keycheckが隠されているのはこのためです。
保存した設定からStarOSマシンを回復できるようにするには(たとえば、/flashドライブのすべての内容が失われた場合)、.chassisid(StarOSがシャーシIDを保存する場所)をバックアップする必要があります
シャーシIDは、StarOSハードドライブの/flash/.chassisidファイルに保存されます。このファイルをバックアップする最も簡単な方法は、ファイル転送プロトコルを使用してバックアップサーバにファイルを転送することです。
.chassisidファイルは隠しファイルなので、新しいリリースでは隠しファイルを使用したファイル管理操作は実行できません。たとえば、リリース20.0.1では次のエラーが表示されます。
[local]sim-lte# copy /flash/.chassisid /flash/backup
Failure: source is not valid.
[local]sim-lte#
または
[local]sim-lte# show file url /flash/.chassisid
Failure: file is not valid.
解決方法
この手順を使用してこのファイルにアクセスする方法は依然として存在します。
ステップ 1:.chassisidファイルが/flash/.chassisidにあることを確認します。
[local]sim-lte# dir /flash/.chassisid
-rw-rw-r-- 1 root root 53 Jun 23 10:59 /flash/.chassisid
8 /flash/.chassisid
Filesystem 1k-blocks Used Available Use% Mounted on
/var/run/storage/flash/part1 523992 192112 331880 37% /mnt/user/.auto/onboard/flash
ステップ 2:隠しモードでログインします。
[local]sim-lte# cli test-commands
Password:
Warning: Test commands enables internal testing and debugging commands
USE OF THIS MODE MAY CAUSE SIGNIFICANT SERVICE INTERRUPTION
[local]sim-lte#
注:隠しモードのパスワードが設定されていない場合は、次のように設定します。
[local]sim-lte(config)# tech-support test-commands password <password>
ステップ 3:デバッグシェルを起動します。
[local]sim-lte# debug shell
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Cisco Systems QvPC-SI Intelligent Mobile Gateway
[No authentication; running a login shell]
ステップ 4:/flashディレクトリに移動します。ファイルが存在するかどうかを確認します。
sim-lte:ssi#
sim-lte:ssi# ls
bin cdrom1 hd-raid param rmm1 tmp usr
boot dev include pcmcia1 sbin usb1 var
boot1 etc lib proc sftp usb2 vr
boot2 flash mnt records sys usb3
sim-lte:ssi#
sim-lte:ssi# cd flash
sim-lte:ssi# ls -a
. ldlinux.sys restart_file_cntr.txt
.. module.sys sftp
.chassisid patch staros.bin
crashlog2 persistdump syslinux.ban
crsh2 rc.local syslinux.cfg
ステップ 5:隠しファイルを隠しファイル以外のファイルにコピーします。
sim-lte:ssi# cp .chassisid chassisid.backup
sim-lte:ssi#
sim-lte:ssi#
sim-lte:ssi# ls
chassisid.backup patch staros.bin
crashlog2 persistdump syslinux.ban
crsh2 rc.local syslinux.cfg
ldlinux.sys restart_file_cntr.txt
module.sys sftp
手順 6:デバッグシェルを終了します。作成したバックアップファイルは問題なく転送できるはずです。
sim-lte:ssi# exit
Connection closed by foreign host.
[local]sim-lte#
[local]sim-lte# copy /flash/chassisid.backup /flash/chasisid.backup2
********************************************************************************
Transferred 53 bytes in 0.003 seconds (17.3 KB/sec)
[local]sim-lte#
[local]sim-lte#
[local]sim-lte# show file url /flash/chassisid.backup
1ke03dqfdb9dw3kds7vdslvuls3jnop8yj41qyh29w7urhno4ya6
Ultra-M用のUPDATEアップグレード手順
N5.1からN5.5にアップグレードすると、vpcインスタンスとOSPが破棄されます。アップグレード手順を開始する前に、vPCコンフィギュレーションファイルとシャーシIDを再利用する場合はバックアップする必要があります。
ステップ1:chassisidと最後のコンフィギュレーションファイルをバックアップします。
bash-2.05b# ls -alrt
-rwxrwxr-x 1 root root 53 Jul 11 14:43 .chassisid
-rwxrwxr-x 1 root root 381973 Jul 11 14:41 GGN-2017-07-28.cfg
from copied file :
cpedrode@CPEDRODE-xxxxx:~/Desktop$ more 2017-07-28.chassis-id
1swbwpd8fd8ca3kf33kn6qxb2h33ihfkqu1tu7x1ndf82znag1b5^@
注:設定ファイルには、.chasssisid:
[local]GGN# show configuration url /flash/GGN-2017-07-28.cfg | more
Monday July 11 14:59:34 CEST 2016
#!$$ StarOS V21.1 Chassis c95bf13f030f6f68cae4e370b2d2482e
config
ステップ 2:Ultra-Mのアップグレードを進める
ステップ 3:システムがアップグレードされ、StarOS vpc CFがブートアップしたら、chassisid(通常のファイル)とコンフィギュレーションファイル(適切なO&M IPアドレスも変更されていることを確認)を/flash/sftp(StarOS >R20)にコピーします。
ステップ 4: 隠しファイルdefault .chassisidを「test-command」モードで/flashからバックアップし、削除します。
ステップ 5:隠しモードで、/flash/sftpから/flashに「.chassisid」としてchassisidファイルをコピーします。コンフィギュレーションファイルもコピーします
注:cliを発行して導出されたキーを確認できます(show configuration url /flash/xxxxxx.cfg)。 | moreとbackup configファイルの比較
手順 6:新しいコンフィギュレーションファイルをポイントするブート優先順位を追加します
注:この時点で、StarOSは次のエラーを表示します。
[local]GGN(config)# boot system priority 6 image /flash/staros.bin config /flash/GGN-2017-07-28.cfg
Monday July 28 08:45:28 EDT 2017
Warning: Configuration was generated using a different chassis key, some encrypted information may not
be valid
正しい手順に従った場合は、設定ファイルに、バックアップコンフィギュレーションファイルと同じシャーシ派生キーと、バックアップchasssisidと同じchasssisidが含まれています。
chassisidファイルを表示すると、PS1プロンプトが追加されることに注意してください(図1を参照)。
bash-2.05b# cat .chassisid
1swbwpd8fd8ca3kf33kn6qxb2h33ihfkqu1tu7x1ndf82znag1b5bash-2.05b#
手順 7: vPCのリブート
この時点でシステムがリブートし、バックアップコンフィギュレーションファイルのログインクレデンシャルを使用できます。