Openfireで簡単なチャットサーバを構築する

Windowsで構築した検証環境でチャットを使いたかったので、Openfireでチャットサーバを構築し、Sparkでチャットを行いました。

検証環境はWindows Server 2022サーバ（CPU 2個、メモリ 2GB、ディスク 32GB）が2台です。
1台目はOpenfireとSparkを、2台目はSparkのみをインストールしました。

:::note warn
本手順はセキュリティを無視しているので、本番環境では使わないでください。
:::


## 前提条件
- Openfireのインストール先にJava Runtime Environment（JRE）をインストールしていること
- Openfireのインストール先がTCP/5222を許可していること、もしくはファイアウォールを無効化していること

## インストーラをダウンロードする
1. OpenfireとSparkのダウンロードページからインストーラをダウンロードする。
https://www.igniterealtime.org/downloads/
Openfireのインストーラ：openfire_4_7_4_x64.exe
Sparkのインストーラ：spark_3_0_2-with-jre.msi
![Screenshot 2023-04-09 at 22.39.13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/e2014def-76d0-6ef2-d7e8-88b13bb43935.png)

## Openfireをインストールする
1. Openfireインストーラを起動する。
![Screenshot 2023-04-09 at 22.55.27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/0040a802-30ff-735d-7381-4bc983f60fae.png)

2. 「OK」をクリックする。
![Screenshot 2023-04-09 at 22.55.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/e10de3ac-0523-0667-96cf-1f11ab7c3760.png)

3. 「Next」をクリックする。
![Screenshot 2023-04-09 at 22.55.54.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/da8e1327-e399-78c7-0cdb-e29d5c0f8e86.png)

4. 「I accept the agreement」をチェックし、「Next」をクリックする。
![Screenshot 2023-04-09 at 22.56.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/4a5ce83e-7482-127f-2750-d9802b7537c4.png)

5. 「Next」をクリックする。
![Screenshot 2023-04-09 at 22.56.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/f839baa4-f9b2-ca59-511d-e30cb0affb83.png)

6. 「Next」をクリックする。
![Screenshot 2023-04-09 at 22.56.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/027ede42-01e9-cf1e-7edf-6e330a3fc684.png)

7. インストールを待つ。
![Screenshot 2023-04-09 at 22.56.06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/b102d6c2-852f-6465-385e-6f51d9648e2c.png)

8. 「Finish」をクリックする。
![Screenshot 2023-04-09 at 22.56.45.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/723ce24c-f329-5ba1-8f74-7d9559f9e8eb.png)

## Openfireを設定する
1. 設定画面が起動するまで最大5分待つ。「Continue」をクリックする。
![Screenshot 2023-04-09 at 22.59.24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/3567d6af-d26d-c7d9-70a1-2eb32877a369.png)

2. 「Continue」をクリックする。
![Screenshot 2023-04-09 at 22.59.45.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/1f4477cb-4f87-161f-6dd3-7cf38fce7384.png)

3. 「Embedded Database」をチェックし、「Continue」をクリックする。
![Screenshot 2023-04-09 at 22.59.58.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/e3464a70-6e35-bc74-cd43-ec7a23b43ecd.png)

4. 「Continue」をクリックする。
![Screenshot 2023-04-09 at 23.00.08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/ef8a7417-2a71-d9c1-1f5c-d9c055cb62d5.png)

5. 「Skip This Step」をクリックする。
![Screenshot 2023-04-09 at 23.00.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/8c0fc107-f62c-b0d2-b836-b5a06a9214e7.png)

6. 「Login to the admin console」をクリックする。
![Screenshot 2023-04-09 at 23.00.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/56cf83e3-075b-1b70-2f68-f219e50cfe7e.png)

## チャットユーザを作成する
1. 管理用ユーザとパスワードを入力し、「Login」をクリックする。
管理用ユーザ：admin
パスワード：admin
![Screenshot 2023-04-09 at 23.01.03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/3c3fc71f-6470-e392-bced-31d523641959.png)

2. 「Users/Groups」をクリックする。
![Screenshot 2023-04-09 at 23.01.57.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/a07e38a1-f79a-8972-e255-9d0a896ed2fe.png)

3. 「Create New User」をクリックする。
![Screenshot 2023-04-09 at 23.02.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/64ad9c08-a168-3887-2dea-01e6a183fdd6.png)

4. 「Username」「Password」「Confirm Password」を入力し、「Create User」をクリックする。
![Screenshot 2023-04-09 at 23.02.20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/e0508e57-9f29-a176-23fe-5b7bcf067e28.png)

## Sparkをインストールする
1. Sparkのインストーラを起動する。
![Screenshot 2023-04-09 at 22.45.29.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/967fbcd0-54e3-1347-2342-de24fc61994f.png)

2. 「Next」をクリックする。
![Screenshot 2023-04-09 at 22.47.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/67ba6a6c-e39a-152d-a387-ad433a415961.png)

3. 「Next」をクリックする。
![Screenshot 2023-04-09 at 22.47.34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/b46c29c4-e7a6-a7c2-ccbe-3a6069e6882e.png)

4. 「Next」をクリックする。
![Screenshot 2023-04-09 at 22.47.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/5f17caec-c548-4574-3a31-cdbedfff702f.png)

5. 「Next」をクリックする。
![Screenshot 2023-04-09 at 22.47.39.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/85083d76-1546-1e9c-4882-0891aacd777d.png)

6. インストールを待つ。
![Screenshot 2023-04-09 at 22.47.43.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/8a60a56c-a60d-1a8b-1914-2e4caf990e2e.png)

7. 「Finish」をクリックする。
![Screenshot 2023-04-09 at 22.48.06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/d7ccf1b9-a8bd-0b33-73bc-7215903a3f00.png)

## Sparkにログインする
1. Sparkを起動する。チャットユーザ名、サーバIPアドレスとパスワードを入力し、「Advanced」をクリックする。
![Screenshot 2023-04-09 at 23.12.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/b322695e-616e-ba06-35f6-43ce2d69f3d9.png)

2. 「Security」をクリックする。
![Screenshot 2023-04-09 at 23.12.29.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/23fc2b61-5246-d4b8-4dc3-e7607e041594.png)

3. 「Disable certificate hostname verification (not recommended)」をチェックし、「Ok」をクリックする。
![Screenshot 2023-04-09 at 23.12.34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/2883717c-c43c-a924-055a-8b8237994f77.png)

4. 「Login」をクリックする。
![Screenshot 2023-04-09 at 23.12.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/e02aab51-8526-0ae7-5346-2cf4ffc273ab.png)

## Sparkでチャットする
1. 検索欄にチャット相手のチャットユーザ名を入力し、Enterキーを押す。
![Screenshot 2023-04-09 at 23.13.20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/455977ae-dd7b-1c71-5daf-b0704874e173.png)

2. チャット相手を右クリックし、「Add as a contact」をクリックする。
![Screenshot 2023-04-09 at 23.14.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/1e7b109e-9530-b6a7-a33e-0d5d636ae2be.png)

3. 「Add」をクリックする。
![Screenshot 2023-04-09 at 23.14.21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/ad38038a-a235-0d04-6e73-4f3993f648fd.png)

4. チャット相手をダブルクリックし、チャットを開始する。
![Screenshot 2023-04-09 at 23.15.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/b199e612-bf69-ebaa-90be-1ab838517d4c.png)

:::note warn
**チャット相手**は「Accept」をクリックする。
![Screenshot 2023-04-09 at 23.15.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3326589/d5663f66-c52d-fb84-d4d6-d28c7aceb3cf.png)
:::