■前提条件
- IDCFクラウド提供テンプレートを使用した Linux OS の仮想マシン作成時に [SSH Key] 設定項目にて SSH 鍵を指定して作成した。
- 仮想マシン上で /root/.ssh/authorized_keys 内の、該当 SSH 鍵の公開鍵登録を削除またはコメントアウトした。
- 当該 SSH 鍵の秘密鍵を使用して、root にて SSH ログインができない状態になっている。
■発生タイミング
仮想マシンの再起動
■前提仕様
- IDCFクラウド提供テンプレートを使用した Linux OS には、仮想マシン作成時に登録された SSH 鍵を authorized_keys に登録するスクリプトが搭載されています。場所: /opt/idcf/sbin/cloud-set-guest-sshkey.in
- このスクリプトは仮想マシン起動時に実行され、authorized_keys に当該公開鍵がない場合、末尾に公開鍵を挿入します。
■発生原因
仮想マシン作成時にSSH 鍵を指定して作成し関連付けされた場合、
仮想マシン上で該当 SSH 鍵の公開鍵を削除またはコメントアウトをしても関連が消えない挙動になっております。
※IDCFクラウドコンソール[SSH Key] 画面のリストから削除をした場合も、その後作成される仮想マシンへの関連付けができなくすることを表しており、既に関連付けされている仮想マシンに対しては消えません。
■対策
- 仮想マシン上で /root/.ssh/authorized_keys 内の、該当 SSH 鍵の公開鍵登録を削除します。
- 以下のコマンドを実行し authorized_keys 変更スクリプトの実行を停止させます。
# chkconfig cloud-set-guest-sshkey.in off (CentOS6)
# systemctl disable cloud-set-guest-sshkey.service (CentOS7)