102.6標準
稼働中Linuxを停止して汎用VMテンプレートを作る。
そのテンプレートから起動する各VMが、元VMと同じホスト固有識別情報を引き継がないようにする。
テンプレート化前の対応として最も適切なのはどれか。
× 不正解
VMテンプレートではSSHホスト鍵や/etc/machine-idなどの個体固有情報をそのまま複製しない。初回起動処理で各インスタンス固有に生成する。
詳細解説
誤り全VMで同じMACアドレスを固定する
ネットワーク識別が衝突するため逆効果である。
MACアドレスが衝突する。
誤り全VMで同じホスト名を永続設定する
個体識別を重複させるため目的に合わない。
ホスト名が重複する。
誤り元VMのSSHホスト秘密鍵を読み取り専用にする
複製先でも同じ秘密鍵を使うことになり、鍵の一意性を確保できない。
同じ秘密鍵を温存してしまう。
正しいSSHホスト鍵とmachine-idを複製先で再生成できる状態にする
ホスト認証鍵とD-Bus/systemdの機械識別子を各インスタンス固有にできる。
正解。複製先ごとに一意化する。
実際に確かめる
一時的な検証環境で実行できる例です。
test -s /etc/machine-id && wc -c /etc/machine-id; find /etc/ssh -maxdepth 1 -name 'ssh_host_*_key' -print期待される結果
稼働中ゲストではmachine-idとSSHホスト秘密鍵が存在する。削除や再生成は行わない理解のポイント
- SSHホスト鍵を共有しない
- machine-idを一意化
- 初回起動で生成
確認時の注意
- 確認環境: systemd系Linux/OpenSSH
- 稼働中の本番ゲストから鍵やmachine-idを不用意に削除しない。
基礎のおさらい
テンプレート準備
固有値を未初期化状態にし、基盤や初回起動処理が安全に生成できるようにする。
SSHの影響
同じホスト鍵を共有すると異なるVMが同じサーバー識別鍵を提示する危険がある。
問題IDKP-102-224
確認環境systemd系Linux/OpenSSH
最終技術確認2026-08-12
誤り・権利侵害を報告