仮想化通信

日本仮想化技術株式会社の公式エンジニアブログ

RHEL7.1のKVM用公式QCOW2イメージにパスワードを設定する

RHEL7.1のKVMを試してみようと思い、インストール用ISOイメージのほか、公式QCOW2形式イメージをダウンロード。早速VMを作って喰わせてみたけど、パスワードが設定されていない!

色々と探してみたけど、やはり設定されていないのは間違いなく、シングルユーザーモード(実際にはrescue.target)にしてみようと思ったけどうまくいかないので、guestfishをインストールして、/etc/shadowを直接書き換えるという方法を試してみました。参考にしたのはこちら

はまりポイントとしては、とりあえず今回は評価目的なので、RHNのサブスクリプションを登録しておらず、yumコマンドが使えないこと。とりあえず自力解決だ、ということでインストールメディアをマウントして、rpmコマンドで手動依存関係解消です。そうすると、やたらとPerlモジュールを要求するので、1つずつperl-Sys-Guestfsだなんだとモジュール名を-区切りに読み替えていくわけですが、1つだけperl(Locale::Textdomain)というモジュールがいます。このモジュールはperl-Locale-Textdomainパッケージではなく、perl-libintlパッケージに含まれているので注意が必要です。

というわけでうまくguestfishが入ったら、QCOW2形式のイメージを作業手順に従って読めるようにして、/etc/shadowにある!!の部分をopensslコマンドで生成したハッシュ値に置き換えてあげます。

仮想マシンを起動して、rootでログインできたらOKです。

まあ、セキュリティの問題だとは思いますが、なかなか難易度高めですね。