VMware Fusion(M1 Mac)にKali Linuxをインストール

VMware FusionKali Linux をインストールする手順の解説です。

前回の「M1 MacにVMware Fusionをインストール」の続きです。

環境

  • MacBook Pro / M1 Pro チップ (Apple Silicon)
  • macOS Monterey (12.6.6)
  • VMware Fusion Player (13.0.2)
  • Kali Linux (2023.2) – Apple Silicon (ARM64)

Kali Linux のダウンロード

Kali Linux のサイトのダウンロードページにアクセスします。

Kali Linux > download 1

左の”Installer Images” をクリックします。

  • Installer Images
    • インストーラーのイメージファイル(ISO ファイル
  • Virtual Machines
    • 仮想マシンのパッケージファイル(.vmwarevm ファイル)
    • こちらにはApple Silicon 対応版はありませんでした(2023.6.17時点)
Kali Linux > download 2

“Kali Linux 2023.2 Changelog” の”Apple Silicon (ARM64)” を選択し、Recommended となっている”Installer” をクリックしてISO ファイルをダウンロードします。

2023.6.17の時点ではkali-linux-2023.2a-installer-arm64.iso というファイルがダウンロードされました。

ダウンロードしたファイルに破損などがないか、チェックサムを確認します。

Kali Linux > download 3

“Installer” の枠内の”sum” をクリックするとSHA256 のチェックサムが表示されます。

% shasum -a 256 kali-linux-2023.2a-installer-arm64.iso
94ce3f6b81be33e2f80de157d69222efbfe6c404491b25292a8058a62096c594 kali-linux-2023.2a-installer-arm64.iso

ターミナルで上記コマンドを実行して出力された文字列と、画面に表示されているSHA256sum の文字列が一致しているか確認します。

Kali Linux のインストール

1. VMware Fusion を起動

VMware Fusion アイコン

Launchpad のVMware Fusion アイコンをダブルクリックします。

2. 新しい仮想マシンの作成

VMware Fusion のウィンドウが表示されました。

VMware Fusion 起動

左上の[+] をクリックして表示されるメニューの中から[新規…] をクリックします。

VMware Fusion > インストール方法を選択

ディスクまたはイメージからインストール” の枠内に、ダウンロードしたISO ファイルをドラッグ&ドロップします。

VMware Fusion > 新しい仮想マシンを作成

インストールディスクとしてドラッグ&ドロップしたISO ファイルのファイル名が表示され選択されているので、[続ける] をクリックします。

VMware Fusion > オペレーティングシステムの選択

Linx > Debian 12.x 64ビット ARM を選択し、[続ける] をクリックします。

VMware Fusion > 仮想マシンの構成が完了

仮想マシンの概要が表示されています。
今回は構成の一部を変えるので[設定のカスタマイズ] をクリックします。

ここで、仮想マシンをファイルで保存するため、ファイル名の入力を求められます。

VMware Fusion > 仮想マシンのファイル保存

任意のファイル名を入力して[保存] をクリックします。

今回は、インストールで使ったISO ファイルが後で分かるように、ISO ファイルのファイル名の一部をファイル名に指定しました。

  • ファイルの拡張子は .vmwarevm です
  • 保存先のデフォルトはユーザーの仮想マシン フォルダです

3. 仮想マシンの構成の設定変更

VMware Fusion > 仮想マシンの設定変更

仮想マシンの構成を設定するウィンドウが表示されました。
今回はメモリのサイズを増やすので、”プロセッサとメモリ” をクリックします。

VMware Fusion > 仮想マシンの設定変更(プロセッサとメモリ)

メモリを2048 MB から4096 MB に変更して、上の”すべてを表示” をクリックします。
元のウィンドウに戻るので、他の設定も必要に応じて変更し、すべての変更が終わったらウィンドウを閉じます。

4. 仮想マシンの起動

作成した仮想マシンのウィンドウが既に開いています。

VMware Fusion > 仮想マシンの起動

大きい再生ボタンをクリックすると、Kali LinuxISO ファイルを使ったインストールが開始します。

インストーラのウィザードが表示されました。

Kali Linux > インストール > Graphical install

ここでは、インストールするモードを選択します。

今回は、”Graphical install” を選択してEnter を押下します。

  • Install” を選択すると青黒画面のUI になるので、マウス操作したい場合は”Graphical install” の方がよさそうです
  • Graphical install” では、青黒ではないグラフィカルなUI 上で操作することができ、マウスの操作も可能です
  • この青黒の画面ではキーボードでの操作しかできないので、上下で選択してEnter 押下で確定します
  • キーボードとマウス操作がゲストOS 側(仮想マシン内)にある状態になるので、ホストOS 側(macOS)に戻したい場合は[control]+[command] を押下します

5. 言語を選択 – Select a language

インストール手順で表示される言語を選択します。ここで選択した言語はインストールするOS のデフォルト言語として設定されます。

Kali Linux > インストール > Select a language

今回は”English” を選択して[Continue] をクリックします。

選択肢に”Japanese – 日本語” もありますが、Kali Linuxに関する情報はウェブ上では英語の方が日本語よりも多く存在するので、調査や検索で都合の良い英語を選択しました。

6. 所在地を選択 – Select your location

タイムゾーンとして設定する場所を選択します。

Kali Linux > インストール > Select your location 1

今回は日本を設定するので、”other” を選択して[Continue] をクリックします。

Kali Linux > インストール > Select your location 2

Asia” を選択して[Continue] をクリックします。

Kali Linux > インストール > Select your location 3

Japan” を選択して[Continue] をクリックします。

7. ロケールを選択 – Configure locales

ロケールを選択します。

Kali Linux > インストール > Configure locales

United States – en_US.UTF-8” を選択して[Continue] をクリックします。

8. キーボードの設定 – Configure the keyboard

キーボードレイアウトを選択します。

Kali Linux > インストール > Configure the keyboard

日本語配列キーボードを使っているので”Japanese” を選択して[Continue] をクリックします。

英語配列はたぶん”American English” です。

9. ネットワークの設定 – Configure the network

仮想マシンのホスト名とドメイン名を設定します。

Kali Linux > インストール > Configure the network 1
Hostname:

まずはホスト名を入力します。
ホスト名はネットワーク上で仮想マシンを識別する名前として使われます。
任意の名前(今回は”m1-kali”)を入力し、[Continue] をクリックします。

Kali Linux > インストール > Configure the network 2
Domain name:

次はドメイン名を入力します。
ドメイン名はインターネット上の識別子となるドメイン名を指定します。
公開しないので何も入力せず[Continue] をクリックします。

10. ユーザとパスワードの設定 – Setup users and passwords

rootユーザの代わりに使うroot 権限のないユーザを作成します。
インストールしたKali Linux に初回ログインする際に使うユーザです。

Kali Linux > インストール > Set up users and passwords 1
Full name for the new user:

まずは、ユーザのフルネームを入力します。
フルネームはユーザの名称として画面に表示される際に使われます。
任意の名称(今回は”capybara”)を入力し、[Continue] をクリックします。

Kali Linux > インストール > Set up users and passwords 2
Username for your account:

次に、ユーザのユーザ名を入力します。
ユーザ名はログイン画面でパスワードと組み合わせて入力する際に使うものです。
先頭文字(半角英小文字)+ 2文字目以降(半角英小文字、数字)にする必要があります。
任意の名称(今回は”capybara”)を入力し、[Continue] をクリックします。

Kali Linux > インストール > Set up users and passwords 3

パスワードを2箇所に入力し、[Continue] をクリックします。

11. ディスクのパーティショニング – Partition disks

ディスクのパーティショニングを行います。

Kali Linux > インストール > Partition disks 1
Partitioning method:

パーティショニングは、案内に従って行う方法と、手動で行う方法を選択することができます。

  • Guided – use entire disk
  • Guided – use entire disk and set up LVM
  • Guided – use entire disk and set up encrypted LVM
  • Manual

今回は”Guided – use entire disk” を選択して[Continue] をクリックします。

Kali Linux > インストール > Partition disks 2
Select disk to partition:

パーティショニングするディスクを選択します。
/dev/nvme0n1 – 21.5GB VMware Virtual NVMe Disk” のみ表示され選択されているので、[Continue] をクリックします。

Kali Linux > インストール > Partition disks 3
Partitioning scheme:

パーティショニングのスキームを選択します。

  • All files in one partition
  • Separate /home partition
  • Separate /home, /var, and /tmp partitions

今回は、初心者に推奨となっている”All files in one partition” を選択して[Continue] をクリックします。

Kali Linux > インストール > Partition disks 4

これまで設定してきたパーティションとマウントポイントの概要が表示されます。
このまま進めるので、”Finish partitioning and write changes to disk” を選択して[Continue] をクリックします。

Kali Linux > インストール > Partition disks 5

ディスクに書き込んでよいか確認が求められています。
[Yes] を選択して[Continue] をクリックします。

12. ソフトウェアを選択 – Software selection

Kali Linux にインストールするソフトウェアを選択します。
デフォルトで標準的なデスクトップ環境とツール類が選択された状態になっている、とのことです。

Kali Linux > インストール > Software selection

今回はデフォルトの状態で[Continue] をクリックします。

Kali Linux のインストールが開始されます。
インストールが完了するまで、そのまま待機します。

13. インストール完了 – Finish the installation

Kali Linux > インストール > Finish the Installation

Kali Linux のインストールが完了しました。

続けて、Kali Linux をインストールした仮想マシンを起動します。
インストールメディアを外すように求められていますが、VMware が自動でやってくれるようなので、このまま[Continue] をクリックします。

14. Kali Linux 起動・ログイン

Kali Linux の仮想マシンが起動します。

Kali Linux > 起動

Kali Linux の起動画面が表示され、”Kali GNU/Linux” が選択されています。
そのままで数秒後に自動で進みますが、Enter を押下して進めることもできます。

Kali Linux > ログイン

ログイン画面が表示されるので、登録したユーザ名パスワードを入力して[Log in] をクリックします。

Kali Linux > デスクトップ

Kali Linux のデスクトップが表示されました。

とりあえず正常にインストールできているようです。

インストール直後の状態の確認

ターミナルで確認します。

$ cat /etc/default/locale
LANG="en_US.UTF-8"
LANGUAGE="en_US:en"

$ cat /etc/timezone
Asia/Tokyo

$ cat /etc/default/keyboard
XKBMODEL="pc105"
XKBLAYOUT="jp"

$ cat /etc/hosts           
127.0.1.1       m1-kali

$ hostname
m1-kali

$ domainname -d


$ cat /etc/passwd | grep capybara
capybara:x:1000:1000:capybara,,,:/home/capybara:/usr/bin/zsh

$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=128 time=13.7 ms

あとがき

OS の初期設定

インストールが完了したので、このあと以下のような作業をする予定です。(解説する予定なし)

  • パッケージの更新
    • sudo apt update
    • sudo apt upgrade
  • SSH Server の自動起動設定
  • 日本語のローマ字入力の設定

失敗談

最初、間違えて”Apple Silicon (ARM64)” のイメージファイルではなく、”Pre-built Virtual Machines” の方にあるVMware 向けの仮想マシンのパッケージファイルをダウンロードして、仮想マシンを作り起動するとStart PXE over IPv4 というエラーになり原因を調べても分からず時間を浪費するという状況に陥ってしまいました。

同じ状況に陥った人がStart PXE over IPv4 をキーワードで検索し、このページに辿り着いて早期解決ができたら幸いです。

VirtualBox(M1 Mac)にKali Linuxのインストールを試みた結果

VirtualBox のApple Silicon 対応は、VirtualBox 7.0.8 BETA (Developer preview for macOS / Arm64 (M1/M2) hosts) が2023.6.18時点で提供されていますが、”Apple Silicon (ARM64)” のイメージファイルを使ったインストールを試したところ失敗しました。(”Linux 2.6/3.x/4.x/5.x/(64-bit)”、”Debian 11 Bullseye(64-bit)”)

VirtualBox > Kali Linux > Installation failed
VirtualBox でKali Linux のISOファイルを起動するとすぐ表示されるメッセージ

参照

M1 MacにVMware Fusionをインストール

M1 Mac にVMware 社が提供するMac 用デスクトップ ハイパーバイザーのVMware Fusion をインストールする手順の解説です。

VMware Fusion について

VMware Fusion はVMware 社が提供するソフトウェアで、macOS にインストールすることで、macOS 上でWindows やLinux などのOS を仮想マシンとして起動させることができるようになります。

仮想化ソフトウェアは、ホスト型、ハイパーバイザ型、コンテナ型の3つに分類分けされますが、VMware Fusion はホストOS(macOS)上で動作し、その上で仮想マシンを作成・実行するのでホスト型に分類されます。

現在の最新のバージョンであるFusion 13 のシステム要件は以下のようになっています。

  • プロセッサ(Intel プロセッサー、Apple Silicon
  • OS(macOS 12 Monterey、13 Ventura)

VMware Fusion は、Fusion Pro とFusion Player の2種類があります。
Pro はビジネル利用、Player はゲームや学習目的での利用を想定していて、備えている機能が異なっています。

Pro とPlayer はともに有償の商用利用ライセンスとして提供されていますが、Player は非商用目的の個人利用ライセンスに登録することで無償で使用することが可能となっています。

手順

今回解説する手順は、VMware Fusion Player の個人利用ライセンスの登録からインストール、初回起動までの手順になります。

なお、使ったMac はM1 Pro チップMacBook Pro 、OSはmacOS Monterey です。

1. アカウント登録

VMware のサイトにアクセスします。

VMware ダウンロード 1

上のメニューの[製品] をクリックし、”デスクトップハイパーバイザー” の[Mac 用のFusion] をクリックします。

VMware ダウンロード 2

[無償評価] をクリックします。

VMware ダウンロード 3

“Fusion 13 Player (macOS 12 以降)” の[個人利用ライセンスの登録 >] をクリックします。

VMware ダウンロード 4

Customer Connect のページが表示されます。
“Installation & Configuration” というタブが選択された状態になっています。

右上の[Create an Account] をクリックします。

VMware ダウンロード 5

アカウントの情報を登録するRegister のページが表示されます。
以下の情報を入力し、利用規約のチェックをON 、商品・サービスの案内を受け取るかどうかのチェックを希望する場合はON にして、[Register] をクリックします。

  • 登録するアカウントのログイン情報(Email address, Password)
  • ユーザー情報(First name, Last name)
  • 所属企業の情報(社名、役職、住所、郵便番号、国、電話番号)
VMware ダウンロード 6

登録したメールアドレスに6桁のワンタイムパスワードが届くので、画面に入力して[Verify Code] をクリックします。

VMware ダウンロード 4

アクティベートされたと表示された後、自動で元のページ(Customer Connect の最初のページ)に戻るので、右上の[I Have an Account] をクリックします。

VMware ダウンロード 7

ログイン画面が表示されるので、メールアドレスとパスワードを入力し、[Sign In] をクリックします。

2. ダウンロード

ログインが成功すると、Customer Connect のページが表示されます。
“License & Download” タブが選択された状態になっています。

VMware ダウンロード 8

“License Information” に、VMware Fusion Player 13 – Personal Useライセンスキーが表示されています。後でVMware Fusion の初回起動時に入力するので控えておきます。

“Download Packages” に、VMware Fusion Player – Personal Use License – Binaries の[Manually Download] ボタンがあるのでクリックしてdmg ファイルをダウンロードします。

5月15日の時点では「VMware-Fusion-13.0.2-21581413_universal.dmg」というファイルがダウンロードされました。

ダウンロードしたファイルに破損などがないか、チェックサムを確認します。

% shasum -a 256 VMware-Fusion-13.0.2-21581413_universal.dmg
c86b40823b97334f20b4e6b475b488ec23faf06c986e291965b9e56f7b44c042 VMware-Fusion-13.0.2-21581413_universal.dmg

ターミナルで上記コマンドを実行して出力された文字列と、画面に表示されているSHA256SUM の文字列が一致しているか確認します。

3. VMware Fusion のインストール

ダウンロードしたdmg ファイルをダブルクリックします。
以下のウィンドウが表示されます。

VMware Fusion インストール 1

“VMware Fusion.app” のアイコンをダブルクリックします。

VMware Fusion インストール 2

エンドユーザー使用許諾書を確認し、[同意する] をクリックします。

VMware Fusion インストール 3

VMware Fusion 13 のライセンスキーを持っています” が選択された状態で、前述の手順で控えておいたライセンスキーを入力して[続ける] をクリックします。

VMware Fusion インストール 4

ご利用ありがとうございます” の画面が表示されたら[完了] をクリックします。

VMware Fusion のインストールはこれで完了です。

4. VMware Fusion の初回起動

続けて、インストールしたVMware Fusion を起動します。

VMware Fusion アイコン

Launchpad のVMware Fusion アイコンをダブルクリックします。

VMware Fusion 初回起動 5

アクセシビリティにアクセスできません” というメッセージが表示されるので[OK] をクリックします。

システム環境設定を開き、プライバシーのアクセシビリティを開きます。

VMware Fusion 初回起動 2
VMware Fusion 初回起動 3

VMware Fusion.app” のチェックがOFF になっているのでON にします。

VMware Fusion 初回起動 4

VMware Fusion.app が SystemEvents.app を制御するアクセスを要求しています” というメッセージが表示されていたら、[OK] をクリックします。

VMware Fusion 初回起動 5

“インストール方法を選択” という画面が表示されました。
VMware Fusion の初回起動はこれで完了です。

この画面から、ISO ファイルを使ったOS のインストールや、仮想ディスクのファイル(.vmdk)を使った仮想マシンの作成をすることができます。

あとがき

あとでライセンスキーを確認したくなった時に、VMware Customer Connect のライセンスキーが表示されているページを見つけづらそうだったので記載しておきます。

  1. VMware Customer Connect にログインする
    • https://customerconnect.vmware.com/home
  2. 右上の9点リーダーから”Trial and Free Products” をクリック
  3. “VMWare Fusion” の”Get Fusion Player for Free” をクリック
  4. “VMware Fusion Player – Personal Use License” のページが表示される

次回、VMware FusionKali Linux の仮想マシンをインストールする手順を解説する予定です。
2023.6.18 に投稿しました(↓)

参照

Excelで10進数→16進数の変換

はじめに

Excelで10進数を16進数に変換する方法を整理してみました。

3つの方法がありましたが、使い方や変換できる10進数の範囲が異なっていたので、意識して使い分けするとよさそうです。

関数名10進数(最小)10進数(最大)
ExcelDec2Hex-549,755,813,888549,755,813,887
VBAhex-2,147,483,6482,147,483,647
PowerShell[convert]::ToString-9,223,372,036,854,775,8089,223,372,036,854,775,807

3つ目のConvert クラスのToString メソッドは、Excel VBA のPowerShell コマンドを使って呼び出して使います。
指定する10進数はInt64(64ビット符号付き整数)で、3つの中で一番大きい数値を変換することができます。

使い方

Excel のDec2Hex 関数

Dec2Hex 関数に10進数の値を指定します。例えば、10進数の値が1234567890 の場合、セルに以下のように入力します。

=Dec2Hex(1234567890)

Excel VBA のhex 関数

Excel VBA のエディタ上で以下のようにコードを記述して使います。

Dim lngDec As Long
Dim strHex As String
lngDec = 1234567890
strHex = hex(lngDec)

PowerShell のConvert クラスのToString メソッド

Excel VBA のエディタ上で以下の関数を作り、呼び出して使います。

Function Dec2HexCustom(pDec As Currency) As String
  Dim objShell As Object
  Dim strCmd As String
  Dim strHex As String

  strCmd = "[convert]::ToString(" & pDec & ",16)"
  Set objShell = CreateObject("WScript.Shell").Exec("powershell -Command " & strCmd)
  strHex = objShell.StdOut.ReadAll
  Dec2HexCustom = Left(strHex, Len(strHex) - 2)
End Function
  • (6行目) PowerShell のコマンドは [convert]::ToString(1234567890, 16)
  • (7行目) PowerShell のコマンドを呼び出して変換している
  • (9行目) PowerShell のコマンドの実行結果を標準出力で受け取ると末尾に改行(CRLF)が付加されるので、改行(CRLF)に該当する右2文字を除去している

あとがき

Excel VBA でPowerShell のコマンドを実行すると、処理がもたついてあまりパフォーマンスがよくなかったです。
Excel の表から複数行を読み込んで繰り返し実行する場合は、小さい数値はhex 関数にやらせて、大きい数値のみPowerShell のConvert クラスのToString メソッドを使うように実装した方がよさそうです。

その他、注意事項として、変換後の16進数の値をセルに貼り付ける場合、変換後の16進数の値が「数字 + “E” + 数字」だと、値が指数表記と誤認されて正しくセットされなかったりします。
例えば、「12345678E90」の場合は「1.2345678E+97」に変換され、「1234567E890」の場合は変換されずそのままセットされるなど、何かと厄介です。
貼り付け先のセルの書式を文字列にすれば解消できるので、元から文字列にしておくか、値を貼り付ける直前に文字列にする処理「.Cells(x, y).NumberFormatLocal = “@”」を入れてから貼り付けるようにすればよさそうです。

参考