ParrotSecurity 4.2: 仮想化のKVMをインストールする

KVMをインストールする手順を記載します。

1 qemu-kvmとlibvirtのインストール

qemu-kvmとKVM設定用のパッケージをインストールします。

$ sudo apt install -y qemu-kvm libvirt0 virt-manager libguestfs-tools

2 ユーザをlibvirtグループに追加

libvirtグループに所属しているとsudoなしでvirt-managerやvirshを実行できます。

$ sudo gpasswd libvirt -a username
$ cat <<EOF | tee -a ~/.profile
export VIRSH_DEFAULT_CONNECT_URI=qemu:///system
EOF
$ sudo reboot

3 SSHを利用してリモートアクセス

SSH経由でlibvirtにアクセスすることができます。

SSH公開鍵を使えばパスワード入力が不要です。クライアント側でSSH鍵を作成します。

$ ssh-keygen -t rsa -f ~/.ssh/id_rsa -N ""
Generating public/private rsa key pair.
Your identification has been saved in /home/hiroom2/.ssh/id_rsa.
Your public key has been saved in /home/hiroom2/.ssh/id_rsa.pub.
<snip>
$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB... username@clientname

KVMをインストールしたサーバ側の~/.ssh/authorized_keysに公開鍵を追加します。

$ cat ~/.ssh/authorized_keys
ssh-rsa AAAAB... username@clientname

クライアント側で-cオプションでKVMがインストールされたサーバを指定します。

$ virsh -c qemu+ssh://username@servername/system

VIRSH_DEFAULT_CONNECT_URI変数を使えば-cオプションで指定した場合と同様になります。.bashrcに書いておくと良いでしょう。

$ export VIRSH_DEFAULT_CONNECT_URI=qemu+ssh://username@servername/system
$ virsh

4 ISOファイル用のプール追加

ISOファイルをダウンロードし、iso用のディレクトリ /var/lib/libvirt/isosを作成します。

$ sudo mkdir /var/lib/libvirt/isos
$ virsh pool-define-as isos dir - - - - /var/lib/libvirt/isos
$ virsh pool-autostart isos
$ virsh pool-start isos