AppleシリコンのMacで”７日間でハッキングをはじめる本”をやって見た

# 環境
>ハード     ：MacBook Air (15インチ, M2, 2023)
ホストOS   ：MacOS Sonoma14.6.1
仮想化ソフト：UTM 4.5.4
ゲストOS   ：Kali Linux 2024.3

<font color="red">注：「野溝のみぞう著　７日間でハッキングをはじめる本」のMacユーザー向けです。</font> 

# 記録した理由（結構解決に時間をかけたから、同じように困っている人がいるのではないかと思って記録します。）
**１、”Kali Linuxのインストール”のところ**
><font color="red"> MacのAppleシリコン</font>の場合、1日目のkali Linuxのインストールから迷ったので記録しました。よく読み進めると、236ページ参照とあったので、これを見て対応案１の「VirtualVoxの代わりに<font color="red"> UTM</font>を利用する」にしましたが導入の仕方がわかりません。
 
**２、”初期設定の中の＃インストール済のパッケージを最新バージョンにアップグレードする”ところ**

```python
sudo apt upgrade -y 
```
>で訳のわからないポップアップが出る。
<font color="red">でも私の場合これ（gradeup）をすると、再起動後ログインしてもKali Linuxの画面にならず、ターミナルやサイトの画面をクリックで移動できない状況になりました。
gradeupをしなければ問題なく移動できるのですが？</font>
![スクリーンショット 2024-11-09 9.01.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/634708/5d8c5547-b063-4355-4e49-e58cdb811271.png)
こうならないで![スクリーンショット 2024-11-09 9.49.06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/634708/4fd0b8db-8b84-3b00-b368-5932fac18106.png)
こうなります。（原因不明です）
後記に記録しています。

**３、”google chromeを入れてみる”ところ**
>本の通りやったけどgoogle chromeが開かない。

**４、”VPNサーバーを選択し実際に接続する”ところ**
>何回やり直しても「Connecter」が緑色に変わらない。

**５、"tryhackme.com"へ翌日入ったら、ルームへの行き方がわからないこと**
>昨日途中までやったroomへ辿り着けない。

# 私が試した方法
***１、”Kali Linuxのインストール”のところ***

>このサイトを参照してすぐ出来ました。Windowsでやったときより簡単にできました。助かりました。
尚、後で分かったのですが、「Download」ではなく「Open in UTM」をクリックすると、何の手間なく”ログイン画面”まで進みます。
Chat-GPTに確認のところ
<font color="blue"> 「「Open in UTM」を使うのは良い選択です。「Download」を選択すると、UTMギャラリーから直接ダウンロードしたファイルは手動設定が必要で、クリックしてもUTMに自動的に取り込まれないため、「Open in UTM」が便利です。」</font>と褒められました。

https://qiita.com/matz1ppei/items/def3b0b81b8b97c0e447

***２、”初期設定の中の＃インストール済のパッケージを最新バージョンにアップグレードする”***
>本の記載順に表示すると
＃システム全体のパッケージリストの更新 
```python3
sudo apt update 
```
>＃インストール済のパッケージを最新バージョンにアップグレードする 
ここでChat-GPTの手をかりました。
```python3
sudo apt upgrade -y 
```
<font color="red"> <途中で出てくるポップアップ画面>(2回出てきた)</font>
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/634708/e0a7ad14-cc94-aba4-4a4d-7ebf31b83d71.png)

>これが出てきたので最初は「Cancel」をしていたが上手くいかないので、Chat GPTに確認したところ、
<font color="blue"> 「このポップアップでは、console-setup の文字セットを選択する設定が求められています。一般的には、日本語対応を含む広範な文字セットが必要な場合、「Combined - Latin; Slavic Cyrillic; Hebrew; basic」や「Combined - Latin: Slavic Cyrillic; Greek」を選択するのが無難です。」</font> とのことなので<font color="red">Combined - Latin; Slavic Cyrillic; Hebrew; basic</font">を選択した。
以降は問題なく本通りに進みました。
なお、これについては「OK」しかないのでOKで問題なかったです。![スクリーンショット 2024-11-06 8.41.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/634708/2e51e5ad-743a-d1c5-4beb-c0eb67056a1b.png)
ただし、後でこの手続きをするようにChat-GPTから言われました。
<font color="blue"> 「このメッセージは、PostgreSQLのバージョン15が古くなったため、バージョン17にアップグレードするよう促しているものです。「OK」を選択してインストールを続行した場合、次のような作業が後から必要になります。</font>
[やるべき作業]
1,PostgreSQLのインストール状況を確認する
```python
dpkg -l | grep postgresql
```
>このコマンドを実行すると、インストールされているPostgreSQLのバージョンが一覧で表示され、PostgreSQL 15や17がインストールされているかどうかも確認できます。

>2,新しいPostgreSQL 17のインストール確認
PostgreSQL 17がすでにインストールされていれば、次のステップに進んでください。インストールされていない場合は、次のコマンドでインストールします：
```python
sudo apt install postgresql-17 postgresql-client-17
```
>3,データの移行
旧バージョン（15）のデータを新バージョン（17）に移行するために、pg_upgradeclusterコマンドを使ってアップグレードを行います。次のコマンドで実行します：
```python
sudo pg_upgradecluster 15 main
```
>4,旧バージョン17のデフォルトクラスターを削除（必要な場合のみ）
PostgreSQL 17をインストールすると、17のデフォルトクラスター（17/main）が自動的に作成されますが、バージョン15のクラスターを17にアップグレードする場合、既存の17クラスターを削除する必要があるかもしれません。削除するには、以下のコマンドを実行します：
```python
sudo pg_dropcluster --stop 17 main
```
>5,旧バージョンの削除
アップグレードが完了したら、旧バージョンのPostgreSQL 15とそのクライアントパッケージを削除してシステムを整理できます：
```python
sudo apt remove postgresql-15 postgresql-client-15
```
これらの手順でPostgreSQLの新しいバージョンにスムーズに移行できます。


>＃システムに必要でなくなったパッケージを自動的に削除する 
```python3
sudo apt autoremove -y 
```
>＃もう必要のないパッケージのキャッシュファイルを削除する 
```python3
sudo apt autoclean 
```
>＃kaliの日本語化 
```python3
sudo dpkg-reconfigure locales 
```
>＃デフォルトの言語と地域設定を日本にする 
```python3
sudo update-locale LANG=ja_JP.UTF-8 
```
***３、google chromeを入れてみる***
>使い慣れているgoogle chromeがいいと思いチャレンジしました。
ただし
Google Chromeパッケージのアーキテクチャがamd64 (64ビットx86)であるのに対し、<font color="brown">kali linuxシステムのアーキテクチャがaarch64</font>なので、本通りにはインストールできませんでした。
Chat-GPTに聞きながら以下の方法を私は試してみたが、結果は<font color="red">プレインストールされている「Firefox」</font>を使った方がいいと思います。
**インストールした結果は「Firefox」を開いた画面と同じでした。**
#### それでも試して見たいという方のために
>まず、アーキテクチャはターミナルで「uname -m」で確認できますので、確認して下さい。
uname -m の結果が aarch64 となっている場合、Kali LinuxがARMアーキテクチャ（aarch64）で動作していることを示しています。
このアーキテクチャにはGoogle Chromeの公式バイナリが提供されていないため、通常の方法ではGoogle Chromeをインストールできません。

#### 代替手段
>Chromiumのインストール ChromiumはGoogle Chromeのオープンソース版で、KaliのARM版に対応しています。次のコマンドでインストールできます。
```python3
sudo apt update
sudo apt install chromium -y
```
>開く時はターミナルで
```python3
chromium
```
>と入力する

***４、”VPNサーバーを選択し実際に接続する”が「Connecter」が緑色に変わらない***
>VPN接続後、Kaliの中でブラウザを立ち上げ、「tryhackme.com」へログインをした後、接続先のVPNサーバーを選択し実際に接続するすると<font color="green">Connecter</font> が緑色に変わるとあるが、<font color="red">変わらなくてもなんの問題もなく接続できている。（いまだに変わらない）</font> 
tryhackme側のシステムの問題らしい。接続できないと思って何回もインストール仕直した時間を返してほしい。

***５、tryhackme.com"へ翌日入ったら、昨日使っていたルームへの行き方がわからない***
>上部にある右端の円（私の場合はロボットが描いてある）をクリック![スクリーンショット 2024-11-04 9.23.07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/634708/c9737a81-54d6-039b-9604-34a3a767d4d5.png)

次に、My Roomsをクリックすると今まで入ったことのあるRoomが表示されます。![スクリーンショット 2024-11-04 8.47.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/634708/d0c8ae1e-e072-68c4-6e82-4d32be0caf04.png)

# 後記
>これからも解らないことや迷うことがあると思うので、追加していきたいと思います。

>今は、kaliの中で、クリックしてターミナルやSite画面を動かそうとしても動かせないので困っています。Chat-GPTにも相談しましたが未だに解決していません。（Windowsでは何の問題も無かったのにね）

>2024-11-06　UTMをuninstallしてから、再度入れ直して見たところ、立ち上がり段階ではターミナルは普通にクリックしたままで移動できた。喜んでバージョンアップから全て終わらせて再起動したら、また動かなくなっていた。
何が原因？わからない

>2024-11-08 原因は不明だけど、<font color='red'>"インストール済のパッケージを最新バージョンにアップグレード"から"もう必要のないパッケージのキャッシュファイルを削除する "</font>までを飛ばして見た処、再起動しても「Kali Linux」のログイン画面になって、ターミナルやSite画面もクリックして動かすことができるようになりました。原因は不明です。