目的
毎回、「あとは、あの設定して・・・どこから設定するんだっけ?」みたいなことを繰り返さないために記録を残す。
Kali Linuxの入手〜インストール
Kali Linuxのダウンロード
Kali LinuxのダウンロードページからisoファイルをDLする。
今回はVMware Fusionを使うが、あえてVMwareやVirtual Boxイメージは使用しない。(理由は後述)
チェックサム確認
以下のコマンドを実行。(環境はMacです)
grepにヒットすれば一致してるってことでOK。
$ shasum -a 256 kali-linux-2020.1-vmware-amd64.7z | grep (sha256sumの値)
VMware Fusion上にKali Linuxをインストール
isoファイルをドラッグしてインストール開始。
OSの種類はUbuntu 64bitを選択。
インストール完了〜初期設定
キーボードレイアウト変更(JISキーボード使用時)
isoからインストールした際に日本語を選択していれば、設定済み。(飛ばして次へ)
日本語キーボードを使っているのに、なぜかカッコつけて英語でインストールしちゃった方は以下を参考に設定を変更したほうがいい。
ターミナルで以下を実行
$ sudo dpkg-reconfigure keyboard-configuration
以降の選択肢。
- 「Generic 105-key (Intl) PC」を選択
- 「Japanese」を選択
- 「Japanese」を選択
- 「The default for the keyboard layout」を選択
- 「No compose key」を選択で終了。
【余談】 isoからインストールするメリット
インストールOSがわかっているなら、isoからインストールすることをおすすめします。
VMwareやVirtual Boxイメージからインストールでもいいですが、isoからなら、キーボード設定、日本語表示設定(ロケール設定)、タイムゾーン設定を省略できます。
ロケール設定
isoインストールの場合、設定済み。
キーボードレイアウト同様、設定変更する。
$ sudo apt install task-japanese task-japanese-desktop
※上記を実行するには、ネットワーク設定を先に実施する必要があるので、
設定が必要な人は、先にネットワーク設定をしてください。
以降の選択肢。
- 「ja_JP.UTF-8 UTF-8」を選択
- 「ja_JP.UTF-8」を選択
一度ログアウトし、再度ログイン。設定が変わっているか確認。
$ sudo locale
・・・が、たぶん変わっていないと思うので、もう一度ログアウト・ログイン。
(なぜか2回ログアウト・ログインしないと日本語表示に変わらない)
タイムゾーン設定
isoインストールの場合、設定済み。
今までと同じ。選択肢は…省略。
$ sudo dpkg-reconfigure tzdata
反映されているか確認。(JSTになっていればOK)
$ date
ネットワーク設定
VMware Fusion側の設定
基本的に、ネットワークアダプタは2つ用意します。
1つ(NAT用)だけでも問題ないのですが、後から、Kaliの攻撃/診断対象となるマシンをVMware上に用意すると思うので、この時点で内部ネットワーク用のアダプタも用意してしまいます。
ネットワークアダプタの設定を確認します。
Macのターミナルを開いて以下を実行。
$ vi /Library/Preferences/VMware\ Fusion/networking
以下のような設定になっていると思います。
VERSION=1,0
answer VNET_1_DHCP yes
answer VNET_1_DHCP_CFG_HASH C4AA1E564E56AFD6906C5EDBADE6C28B4F5EC85B
answer VNET_1_HOSTONLY_NETMASK 255.255.255.0
answer VNET_1_HOSTONLY_SUBNET 192.168.XXX.0
answer VNET_1_VIRTUAL_ADAPTER yes
answer VNET_8_DHCP yes
answer VNET_8_DHCP_CFG_HASH 72BF73E93DA2CBA122706D341E691B19EF8037B9
answer VNET_8_HOSTONLY_NETMASK 255.255.255.0
answer VNET_8_HOSTONLY_SUBNET 172.XXX.XXX.0
answer VNET_8_NAT yes
answer VNET_8_VIRTUAL_ADAPTER yes
固定IPにしたい方は、DHCPを切るなり、サブネットを変えるなりすればいいと思います。
特にこだわりもないので、あとで追加するであろう攻撃/診断対象の仮想マシンは「DHCPでIPが割り当てられること」という前提のものが多いと想定されるので、このままにします。
ここでは、
- vnet1: 内部ネットワーク用アダプタ(ホストオンリーアダプタ)
- vnet8: NAT用アダプタ
ということが確認できればOK。特に編集もせず閉じる。
Kali(ゲストOS)側の設定
ネットワーク・インターフェースの設定を編集します。
$ sudo vi /etc/network/interfaces
インターフェース設定を追記します。
ここでは、内部ネットワーク側はDHCPですが、Kali自身のIPが急に変わったりするのは嫌なので、固定IP払い出しとしました。
allow-hotplug eth0
iface eth0 inet dhcp
allow-hotplug eth1
iface eth1 inet dhcp
address 192.168.XXX.2
netmask 255.255.255.0
反映されているか確認。
sudo ifconfig
反映されていない場合は、NICを再起動してみる。
$ sudo ifdown eth0 eth1 && sudo ifup eth0 eth1
日本語入力設定
IMEをインストール。
$ sudo apt install ibus-anthy
IMEの設定で、ibus-anthyを選択。
$ sudo im-config
IME切り替えのキー割り当て
キー割り当てタブで、以下の割当を追加
- latin_mode:
[Eisu_toggle]
- hiragana_mode:
[Hiragana_Katakana]
右上の常駐アイコンのIMEの設定で、選択で日本語 - Anthy
を選択
パッケージアップデート
初期設定の最後にapt-updateを実行。
コマンドをいちいち打つのは面倒だし、今後も定期的に実施するので、シェルを作成。
$ sudo su -
# vi apt-update.sh (シェル名はお好きなように)
内容はこんな感じ。
それぞれのコマンドの詳細は、以下のリンクの記事がわかりやすいです。
apt update
apt full-upgrade
apt autoremove
apt autoclean
実行権限を付与。一応確認。rootユーザにだけ実行権限(x)がついていることを確認。
# chmod 744 apt-update.sh
# ls -l
実行。
# ./apt-update.sh
isoでインストールしているなら、一瞬で終了。
VMwareやVirtual Boxイメージでインストールしている場合は、それぞれのイメージファイルを作成した時点で、パッケージの更新が止まっているはずなので、かなり時間がかかるので、ここでコーヒーブレイク。
VMware Toolsのセットアップ
インストール
VMwareでもVirtual Boxでも、ホストOSとのフォルダ共有やクリップボード共有に必要なツール類をインストールする。
以下を参考にすれば、迷うことはないと思う。
VMware Fusion側でやること
VMware Tools のインストール方法 (1014294)
Kali(ゲストOS)側でやること
Ubuntu 仮想マシンに VMware Tools をインストールする (1022525)
共有フォルダを設定する
検証等でなにかと、ゲストOSとホストOS間でファイル共有したいことがあるので、有効化しておく。
(VMware Toolsを導入しただけでは、フォルダ共有はデフォルトでは未設定)
VMware Fusion側でやること
共有フォルダを有効にする
のチェックボックスにチェックを入れ、共有するフォルダを設定する。
Kali(ゲストOS)側でやること
何も起きない。。。ので、調べた。
VMwareツールを使用してUbuntuで共有フォルダーをマウントするにはどうすればよいですか?
一時的にマウントするだけの場合
$ sudo vmhgfs-fuse -o allow_other -o auto_unmount .host:/ /mnt/hgfs
常にマウントしておきたい場合
/etc/fstabに以下を書き込んで再起動する
.host:/ /mnt/hgfs/ fuse.vmhgfs-fuse defaults,allow_other,auto_umount 0 0
正常にマウントされていたら、シンボリックリンクを作っておく(と便利)
$ ln -s /mnt/hgfs/ ~/デスクトップ
スクリーンロックをしない
VMがいちいち画面ロックするのは煩わしいので電源管理
の設定で、画面をロックしないようにする。
おわりに
最後のパッケージの更新も含めると、isoインストールした場合、インストールに時間はかかるけど、パッケージ更新は一瞬。
仮想マシンイメージでインストールした場合は、インストールは一瞬だけど、パッケージ更新に時間がかかる。
体感としては、どちらも作業時間はあまり変わらない。
それならば、途中の設定を省略(インストール時の選択で設定が完了)できる、isoイメージからのインストールが、操作数が減るという意味でオススメと思う。