HULFT Square リンク アプリケーション で PrivateLink を作成してみた（インバウンド編）

# はじめに
こんにちは、すぎもんです:smiley:
今回は **HULFT Square リンク アプリケーション** を触ってみた際の記事になります。

HULFT Square について紹介している公式サイトと記事もあわせてご覧ください。


https://www.hulft.com/service/hulft-square

https://www.hulft.com/help/ja-jp/HULFTSquare/Content/HULFT_Square/HS_Settings/settings_PrivateLink.htm

https://qiita.com/sugimon/items/7038422f2bc17d740abb



# 今回やること
HULFT Squareのネイティブアプリケーション **「Private Link」** のインバウンド設定をします。



# 実施手順
以下の流れで PrivateLink の作成を行っていきます。

<dl>
  <dt>① 事前準備（HULFT Square）</dt>
  <dd>1. ネイティブアプリケーションのインストール</dd>
  <dd>2. 権限設定</dd>
  <dt>② PrivateLink（インバウンド）の作成</dt>
  <dd>1. PrivateLink の新規追加</dd>
  <dd>2. アカウントの追加</dd>
  <dt>③ VPC エンドポイントの作成（AWS）</dt>
  <dt>④ 承認リクエストの実施</dt>
  <dd>1. リクエストの承認</dd>
  <dd>2. 結果の確認</dd>
</dl>

それでは早速やってみましょう！


## ① 事前準備（HULFT Square）
事前準備は、下記の手順で行います。

1. ネイティブアプリケーションのインストール
1. 権限設定


### 1. ネイティブアプリケーションのインストール
**App Square** から「**HULFT Square リンク**」をインストールしている必要があります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/eefef233-189b-ed12-8b6d-3901f0d5b7f9.png)

:::note
**Point**
**[メイン] > [アプリケーション] > [インストール済み]** に「**HULFT Square リンク**」が追加されていれば問題ありません。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/69514f5e-5c4d-2707-c7d6-041cc00e5010.png)
:::


### 2. 権限設定
続いて権限の割り当てを行っていきます。
権限を割り当てたいグループの **[ポリシー]** に以下のどちらか一つの権限を割り当てて、**[適用]** ボタンを押下します。


+ **PrivateLinkFullAccess**
+ **PrivateLinkAdminAccess**

各ポリシーの詳細については、下記のドキュメントの **「PrivateLink」** をご参照ください。

https://www.hulft.com/help/ja-jp/HULFTSquare/Content/HULFT_Square/HS_Settings/settings_permissions.htm

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/a7cb6a3c-c21e-c66b-06a0-176d2901023b.png)



## ② PrivateLink（インバウンド）の作成
PrivateLink（インバウンド）の作成は、下記の手順で行います。

1. PrivateLink の新規追加
1. アカウントの追加


### 1. PrivateLink の新規追加
**[設定] > [ネットワーク] > [PrivateLink]** から **[新規追加]** を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/a0312288-0936-0171-78a5-91c34ea0d964.png)

以下のように項目を設定し、**[次へ]** を押下します。

| 項目 | 内容 | 備考 |
|:-|:-|:-|
| サービス名 | <font color="blue">**PrivateLink_TEST_Inbound**</font> | 作成するPrivateLinkの名前 |
| ディレクション | **インバウンド** | 転送の方向 |

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/57201315-4904-6091-1605-69c270cb0613.png)

内容を確認し、問題が無ければ **[完了]** を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/173dc541-8a2c-75ac-058d-cf3019b071df.png)

:::note
**Point**
**PrivateLink** を作成直後は **[サービス名]** に「Creating...」と表示されますが、しばらくすると **VPCエンドポイントサービス名** が表示されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/c420321a-db1c-45a0-a433-71f59d1616fc.png)
:::


### 2. アカウントの追加
続いて PrivateLink の接続を承認するために必要な、アカウントの作成を行っていきます。
**[Allowed Accounts]** の「<font color="blue">**アカウント数および接続数**</font>」を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/2b5fe07f-e67f-ac27-c796-b8d739fbcac3.png)

**[新規追加]** を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/f3ed24ee-7a10-b377-bfff-909515ece8d1.png)

**[AWS Account Id]** に承認リクエストを行う **AWSのアカウントID** を入力します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/8512fcdc-9813-451e-92e4-8065f05b1d33.png)


**[完了]** を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/d3e5073c-c084-5b37-1044-ed671179911c.png)

ステータスが <font color="Red">**"open"**</font> になっているアカウントが追加されています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/b8bac47c-8240-1be4-8483-428006fc9025.png)


## ③ VPC エンドポイントの作成（AWS）
続いて AWS側で **VPC エンドポイント** の作成を行っていきます。
マネジメントコンソールから **VPC > エンドポイント** と移動し、 **[エンドポイントを作成]** を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/d20b9d89-c364-2014-8656-0f85539b5717.png)

**[名前タグ]** に任意の名前（今回は `PrivateLink_TEST` ）を入力し、**[タイプ]** に「**NLB と GWLB を使用するエンドポイントサービス**」を指定します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/a1fd5828-840a-e616-b1d5-57b2bb11b857.png)

先ほど作成した **PrivateLink** から **<font color="blue">VPCエンドポイントサービス名</font>** をコピーします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/a35aff0e-c832-d34f-cb25-4695f54470d4.png)

**[サービス名]** にコピーした **<font color="blue">VPCエンドポイントサービス名</font>** を貼り付けます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/12c025cb-852d-42f1-37d7-2ce387b22121.png)

**[サービスの検証]** を押下し、検証が上手くいったことを確認します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/b0784702-993d-68fd-9e8a-1a1d5d31e80d.png)

続いて **[サブネット]** を指定します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/dd38a8c2-3aaa-37a4-9907-4cd701c5372f.png)

最後に **[セキュリティグループ]** を選択して、**[エンドポイントを作成]** を押下すれば完了です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/f13df83c-22ef-d35a-e0fe-6daa1b7fc8c7.png)


## ④ 承認リクエストの実施
承認リクエストの実施は、下記の手順で行います。

1. リクエストの承認
1. 結果の確認


### 1. リクエストの承認
先ほど作成したエンドポイントのステータスが <font color="Red">**"承認の保留中"**</font> になっていることが、見てわかります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/ef7d37da-0531-dc61-f15e-3237e0e8bd33.png)

HULFT Sqare 側でステータスが <font color="Red">**"pending"**</font> になっているアカウントの右にあるアイコンから、**[Approve]** を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/f1e8de34-e959-fb34-1068-456b8969d285.png)

そのまま **[OK]** を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/98acf3bc-2125-edeb-ec78-288d20105e69.png)



### 2. 結果の確認
AWSで対象のエンドポイントのステータスが、**<font color="Red">"使用可能"</font>** になっていることが確認できます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/94d5e1ca-5f8c-ac1a-a5bf-1df4c6fac730.png)

HULFT Square の **[Approval Requests]** でも対象アカウントのステータスが、承認がされたことを意味する **<font color="Red">"approved"</font>** になっていることが確認できました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/017f264d-74f6-2040-d48b-8031f0073a68.png)

:::note
**Point**
**[PrivateLink] > [インバウンド]** の **[Allowed Accounts]** から、アカウント数と接続数がそれぞれ「１」になっていることが確認できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/617c9d16-9a50-4c44-94aa-93ae9f3880c4.png)
:::


## Appendix
インバウンドの PrivateLink を削除する場合は、下記の手順で行います。

1. 承認の解除
1. VPC エンドポイントの削除
1. 承認リクエストの削除
1. PrivateLink の削除


### 1. 承認の解除
アクションメニューから、承認したリクエストを拒否する **[Deny]** を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/e42eb720-b62d-4f39-a6fb-b62f353166e2.png)

**[OK]** を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/97cca149-4ddf-41ea-9edb-fb63132f0a5a.png)

ステータスが <font color="Red">**"approved"**</font> から <font color="Red">**"denied"**</font> になっているのが確認できます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/5bf1ad66-02d7-4a95-a642-fb94949e02b3.png)



### 2. VPC エンドポイントの削除
**VPC エンドポイント** を見てみると、ステータスが <font color="Red">**"却下"**</font> になっていることが分かります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/1faee9ea-901d-4b16-af0d-b1aa551f3508.png)

続けて **VPC エンドポイント** の削除を行っていきます。
対象の **VPC エンドポイント** を選択し、**[アクション]** から **[VPC エンドポイントの削除]** を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/4e589a0c-be47-40c0-8ee7-b599e254ef43.png)

フィールドに「**削除**」と入力し、**[削除]** を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/7434febc-498f-4987-a93a-9be7d8b1d3b2.png)

これで **VPC エンドポイントの削除** は完了です。


### 3. 承認リクエストの削除
再び HULFT Square で **[Approval Requests]** を見てみると、ステータスが <font color="Red">**"open"**</font> に変わっています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/0a7ae97a-9f90-410a-938e-3248dd20cf31.png)

そのままアクションメニューから **[Remove]** を押下し、

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/449828cf-4cde-4730-8725-ce66a5ae8b17.png)

続けて **[OK]** を押下することで、

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/74da0395-d73f-4562-b850-ed3c04563f64.png)

**設定リスト** が初期状態に戻ります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/c1ed3034-fa73-4f39-b82b-c740c7819080.png)



### 4. PrivateLink の削除
PrivateLink の削除を行うには、赤枠のアイコンを押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/8d3396b5-1484-48b5-bb47-648a23c5f754.png)

問題がなければ、そのまま **[OK]** を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/458288/1ed602db-1d5b-4c29-b9ba-1c7d5ec0c305.png)


これで **PrivateLink の削除** は完了です。



# 最後に
今回は **HULFT Square リンク アプリケーション** を使ってインバウンドの **PrivateLink** を作成してみましたが、いかがでしたでしょうか。

新しい **PrivateLink** では、接続要求を承諾するステップが発生し、よりセキュアに接続できるようになりました。皆さんもぜひ試してみてください。

このブログでは、今後も様々なTopics記事や接続検証等、皆さんの参考になるような記事を投稿していきたいと思います！
ここまで読んでいただきありがとうございました。それでは、また！:raised_hand: