UTMにKali Linux 2024.1(ARM64)をISOイメージからインストールする方法

# はじめに #

Appleシリコン搭載のMacで仮想マシンを利用可能にするソフトウェアの[UTM](https://mac.getutm.app)で[Kali Linux](https://www.kali.org)を利用するには[UTMギャラリー](https://mac.getutm.app/gallery/)からダウンロードできる[Kali Linux 2022](https://mac.getutm.app/gallery/kali-2023)を利用するか、Kali Linuxのサイトで配布されている[Appleシリコン(ARM64)用のISOイメージのインストーラ](https://www.kali.org/get-kali/#kali-installer-images)を利用するかのいずれかである。

最新バージョンのKali Linuxを利用するにはISOイメージからインストールすることになるがISOイメージでインストールを開始すると仮想マシンのウィンドウな真っ黒なままでインストーラのメッセージがいっさい表示されない。[UTMのKali Linux 2022のガイド](https://docs.getutm.app/guides/kali/)に対処法が記されていて``仮想マシンの設定``で``新しいシリアルデバイス``を作り、シリアルデバイスの画面を操作してインストールすることになる。

# インストール手順 #

Kali LinuxをISOイメージからUTMにインストールする手順は下記の操作を行なう。

1. 仮想マシンの作成
2. 仮想マシンにシリアルデバイスを追加
3. Kali Linuxインストーラの起動
   1. 言語とキーボードの指定
   2. ネットワークの設定
   3. ユーザ名とパスワードの作成
   4. ディスクパーティションの設定
   5. インストールするソフトウェアの選択
4. ISOイメージの取り出し
5. 再起動
6. シリアルデバイスの削除

# インストールの操作 #

## 仮想マシンの作成 ##

UTMアプリで仮想マシンを作り、ISOイメージを指定する。

1. **新規仮想マシンの作成**を選択する。
![UTM-新規仮想マシンを作成.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/5ad9409c-bb90-8186-27a5-596d02849607.png)
2. タイトル「開始」のダイアログではで**仮想化**を選択する。
![UTM-仮想化を選択.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/c7d984ec-6214-dd0f-4009-b1a842afebd9.png)
3. タイトル「オペレーティングシステム」のダイアログではで**Linux**を選択する。
![UTM-Linuxを選択.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/ca538472-9dc2-a619-9e81-4732b52bada6.png)
4. タイトル「Linux」のダイアログでは起動ISOイメージの**選択ボタン**を押し、ダウンロードしたISOイメージファイルを指定する。
![UTM-Kali-起動ISOイメージ選択-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/37ccd881-babd-3704-adbf-c3913fa99346.png)
2024.1の場合は``kali-linux-2024.1-installer-arm64.iso``を選択し、続けるボタンを押す。
![UTM-Kali-起動ISOイメージ選択-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/9db71a57-8829-620a-860b-0793545006de.png)
5. タイトルが「ハードウェア」、「ストレージ」、「共有ディレクトリ」の各ダイアログでは設定を変更せず、**続けるボタン**を押す。
![UTM-Kali-ハードウェア.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/ab207519-3e66-bef0-e8fe-5703ce719910.png)
![UTM-Kali-ストレージ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/209a3e1a-e09f-20e0-1c94-68460a558c01.png)
![UTM-Kali-共有ディレクトリ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/fb7b2d38-800d-e48c-699f-83198b1607f6.png)
6. タイトル「概要」のダイアログでは名前をKali Linux 2024とし、**仮想マシン設定を開く**をチェックし、**保存ボタン**を押す
![UTM-Kali-概要.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/dc29a441-ab65-facb-416a-afda5cb6d539.png)

## シリアルデバイスの追加 ##

設定ウィンドウの左側の``デバイス``の中の**＋新規**を開き、**シリアル**を選択する。
![UTM-Kali-デバイス追加.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/f8788dfa-7112-2222-912c-f9257271a45e.png)

デバイスの一覧にシリアルが追加されたのを確認し、**保存ボタン**を押す。
![UTM-Kali-デバイス-シリアル-確認.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/befcc9b3-b768-cbe8-6b2b-df386f02707d.png)

## ISOイメージからインストーラを起動 ##

1. 追加した仮想マシンを起動する
![UTM-仮想マシン起動.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/91661890-8a3d-7452-61b8-6408c5b32f3a.png)

2. ISOイメージからの起動が始まり、ウィンドウが2枚開く。
3. タイトルにターミナル1と表示される``小さいほうのウィンドウ(シリアル回線のウィンドウ)``を選択し、``returnキー``を押す。大きいウィンドウの表示は真っ黒になる。
![Kaki_Linux_2024_1__ターミナル1）_と_Kaki_Linux_2024_1_と_UTM.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/a0a2b2bf-4887-719c-39dc-38e9be7160bd.png)

### 言語とキーボード選択 ###

1. ``Select a Language``では``C - No localization``を``tabキー``を押して選択し、``returnキー``を押す
![Kali_Linux_言語設定.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/f858c5a7-8f8e-6187-8c4e-cc8b54bd38d6.png)
2. ``Select your location``ではカーソルキーを操作して``Asia``に合わせ、``returnキー``を押す
![Kali_Linux_地域設定.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/aa51581d-7e10-3d91-f0ef-497834d88969.png)
3. 国や地域を選択する``Country, territory or area``画面に変わるので``Jキー``を押して``Japan``を選択し、``returnキー``を押す。
![Kali_Linux_国の選択.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/8df6ebc1-ab8f-4e31-4b9b-ddd6ab9abd1f.png)
4. キーマップ``Keymap to use:``の選択画面では利用しているキーボードに合うキーマップを選択する。私はUSキーボードを使っているので``American English``のままにしたが、日本語キーボードを使っていれば``Jキー``を押し、``Japanese``に合わせる。
![Kali_Linux_キーマップ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/b3acb5ce-ca23-51fe-affb-d0a46a75b815.png)

### ネットワークの設定(``Configuration the network``) ###

言語設定が終わるとタイトル``Configuration the network``のウィンドウが表示される。ここで仮想マシンのホスト名とドメイン名を設定する。

1. 最初はホスト名設定で``Hostname``が``kali``と表示されている。変更なければ``returnキー``を押す
![Kali_Linux_Hostname.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/8cf8bc03-d974-260a-e0bd-346378aef7ae.png)
2. つぎにドメイン名``Domain name:``の設定ではインターネットに接続しているのであれば適切なドメイン名を入力する。家庭内であればどんな名前でもよい。何も入力せずに``returnキー``を押してもよい
![Kali_Linux_DomainName.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/5452742b-2f38-3fe1-2897-a467b28e8754.png)

### ユーザ名とパスワード設定(``Set up users and passwords``) ###

続いてKali Linuxを利用するユーザとそのパスワードを登録する。ここではユーザ名とパスワードをともに``kali``に設定する。

1. 最初にユーザのフルネームを入力します。``Full name for the new user:``では登録するユーザのフルネームを入力し、``returnキー``を押す。何も入力しなくても問題ない。
![Kali_Linux_fullname.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/af5d17e2-b6e0-e31f-5842-66d6f45b2674.png)

2. ``Username for your account``ではログインするユーザの名前を入力する。
![Kali_Linux_username.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/e151f962-5d7e-9b4c-dc69-7b03c75f3e86.png)
3. ``Choose a password for the new user:``では登録するユーザのパスワードを入力する。
![Kali_Linux_password.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/f8bb7336-b795-f8a7-911e-ca97320fd245.png)
4. ``Re-enter password to verify``では直前に入力したパスワードを確認のため再入力する。
![Kali_Linux_password_verify.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/2e492bed-565f-6ee5-c783-c23aea7e5a90.png)

### ディスクパーティション設定(``Patition disks``) ###

次に仮想マシンのディスクのパーティションを設定する。ここではインストーラの指示のままで設定するのですべての画面で``returnキー``を押すだけとする。

1. 最初の画面(``Partitioning method``)では選択されている``Guided - use entire disk``のままで``returnキー``を押す。
![Kali_Linux_Partitioning_Method.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/d7134431-79fe-132a-3171-4ae0e0dfcf38.png)
2. 次の画面(``Select disk to partition``)では``Virtual disk 1 (vda) - 68.7 GB Virtio Block Device``でも``returnキー``を押す
![Kali_Linux_select_partition.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/0129430e-7db2-fecc-c9c8-45942a9eeada.png)
3. 次の画面(``Partitioning scheme``)では``All files in one partition (recommended for new users)``が選ばれた状態で``returnキー``を押す
![Kali_Linux_Partitioning_scheme.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/d6b55311-3d13-4ed1-74b4-d4d130254378.png)
4. 次の画面でも(``Finish partitioning and write changes to disk``)を選択したままで``returnキー``を押す
![Kali_Linux_partitioning_finish.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/cfd3a559-ec35-5e62-0a72-7bcfb44d44e1.png)
5. 最後の``Write the changes to disks?``では``tabキー``を押して``<Yes>``を選択し、``returnキー``を押し、パーティション設定をディスクに書き込む。
![Kali_Linux_Write_to_disk.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/33befb57-aaa5-10ba-ec7f-323f930aeade.png)

### ソフトウェアの選択(``Sofrware selection``) ###

仮想ディスクのパーティションを作成が完了するとインストールするソフトウェアの選択画面が表示される。ここではそのまま``returnキー``を押す。
![UTM-Kali_Software_selection.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/e86fe01e-56cd-aa6e-2062-54a2fa1c5f28.png)

選択されたソフトウェアのパッケージのインストールが始まるので終了するのを待つ。

## ISOイメージの取外し ##

ソフトウェアのインストールが完了するとタイトル``[!!] Finish the installation``のウィンドウが表示される。

ISOイメージがCD/DVDとして接続されたままなので再起動するとインストーラーが起動するのでISOイメージを取外しておく。

1. タイトルバーにあるCD/DVDのアイコンをクリックする。
![Kali_Linux_reboor.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/75fd70ff-d5f4-075b-33c4-eb992b615add.png)
2. ``CD/DVD(ISO)イメージ(USB):kali-linux-2024.1-installer-arm64.ios>``をクリック、``取り出す``を選択する。
![Kaki_Linux_ISO取り出し.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/670dc1e0-4340-b143-7c8f-b426987ccfb2.png)

3. ``returnキー``を押して再起動する。

## シリアルデバイスを削除する ##

インストール時に使用したシリアルデバイスはインストール完了後には使用しないので削除する。

1. ログイン画面で右上の電源ボタンを押し、``ShutDown``を選択する。
![Kaki_Linux_shutdown-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/1a3910fa-ea32-9735-b900-4d78b2ad9b53.png)
2. ``Shut Down``のダイアログが表示されるので``Shut Down``ボタンを押す。
![Kaki_Linux_shutdown-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/d96764a1-25ae-636f-7517-aef860cd6855.png)
3. UTMのウィンドウ右上の``編集ボタン``を押し、仮想マシンの編集画面を表示する。
![UTM-設定編集.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/4bd55e8f-4be1-6faa-43e5-3bf393a462a8.png)
3. 左側のデバイス内の**シリアル**を右クリックし、削除を選択する。削除できたら右下の**保存ボタン**を押す。
![UTM-kali-シリアル削除.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72921/1154a1be-cb14-bf72-bc1b-dfdc66d76b52.png)

以上で、ISOイメージからKali LinuxをUTMにインストール完了となる。

ログイン後にアップデートを実行するといい。

# 参考サイト #

- [Guides / Kali Linux 2022](https://docs.getutm.app/guides/kali/)