HULFT 8はAWS for Windows Server 2008 で構築する。

#1.仕組み図
![Hulft.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/693974/161ee0fc-d733-6f1b-9aea-b5b9b1d3fe86.png)
#2.事前確認
- 1. AWS環境移行完成
    - [Cloudendure使用してオンプレミスからクラウドへ移行](https://qiita.com/pythontjlc/items/95317aeba0678c8ffeea)
- 2.Hulft 8 アカウント申請
    - [HULFT8アカウント公式サイト参考](https://hulftorangelab.zendesk.com/hc/ja/articles/232059167-HULFT8-for-Windows%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%97%E3%81%9F%E3%81%84)
- 3.HULFT8構築するため、AWSセキュリティグループ設定
    - 集信プロセス：30000/TCP
    - 要求受付プロセス：31000/TCP
  ![download.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/693974/b608f850-9fed-76fb-25f0-f94611afeac5.jpeg)
- 4.必須インストールのコンポーネント  
    - Microsoft .NET Frameework
    - Visual Studio 2012
    - Visual C++　パッケージ

#3.Hulft 8 インストール
- 1.HULFT8本体インストール
![setup.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/693974/e20d185d-f9a5-c192-e679-a0353f00e424.jpeg)

- 2．シリアル番号
![シリアル.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/693974/772e7856-65d1-54f2-7f0a-034f61ce4018.jpeg)

- 3．サービス名
![ドメイン.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/693974/5fedd7f0-3fe1-96f1-254c-b00268c25a0d.jpeg)

- 4. ディフォルトフォルダ
![ディフォルトフォルダ.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/693974/18f23546-39ac-33b6-4eef-b00c5ee67a7a.jpeg)
- 5.転送コードセット設定
![転送コード.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/693974/5582897a-1060-32d4-9b1e-73e7905788d8.jpeg)
- 6.日付形式の設定
![日付形式.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/693974/0117c426-5f94-23e5-f9ad-b0d6ad74e040.jpeg)
- 7.インストール完了
![完了.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/693974/1f5f0171-e98c-b9ff-ccfd-280b5cf47d8e.jpeg)

#4.HULFT8起動＆疎通確認
- 1.起動
![hulft.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/693974/92563d18-9c21-f1e6-a96a-5f40b6e838f3.jpeg)

- 2.環境変数

```
$path = [Environment]::GetEnvironmentVariable('PATH', 'Machine')
$path += ";" + "C:\HULFT Family\hulft8\bin"
[Environment]::SetEnvironmentVariable('PATH', $path, 'Machine')
```
utlhulversionコマンドを実行してバージョン情報等が表示されればOKです。

```
PS C:\Users\Administrator> utlhulversion
HULFT8 for Windows-Server
 Version Information     [V08L01R03]
 License Type            [Trial version]
 Serial Number           [408-xxxx-xxxxxx]
 Product Key             [QSVDC-xxxxx-xxxxx-xxxxx-xxxxx]
 Date of Installation    [2017/xx/xx]
 Environment Information [Windows Server 2012 Standard(full installation) , 64bit]
 Hostname                [CM-WIN2012-SV]
 Cipher Option(AES)      [V08L01R03]
PS C:\Users\Administrator>
```
- 3.HULFTの起動・停止
HULFTは任意の手順を踏む事で起動・停止を行う事が出来ます。[プロセスコントローラー]メニューを起動し、
![起動.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/693974/1f061ce7-6da4-db27-dee9-c24e22ef3197.jpeg)
[起動]ボタン押下で関連アプリケーションが起動します。
![起動②.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/693974/10ddf55f-12bd-f336-6a89-72ba28079f18.jpeg)
終了
![終了.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/693974/cbba8248-756e-db60-87ed-2b942a380b07.jpeg)
また、HULFTはコマンドラインベースでも操作が可能です。

```
PS C:\Users\Administrator> utlsvcctl -c start
サービスが開始されました。
PS C:\Users\Administrator> utlsvcctl -c stop
サービスが停止されました。
PS C:\Users\Administrator>
```


- 4.疎通確認
   - 相手先ホスト情報の設定「送信先」
   マシン名再設定→再起動後、hostnameコマンドで内容を確認してみます。　

```
Windows PowerShell
Copyright (C) 2014 Microsoft Corporation. All rights reserved.

PS C:\Users\Administrator> hostname
CM-HULFT-RCV
PS C:\Users\Administrator>
```

また、この環境には別途EIPを割り当てています。マシン名「CM-HULFT-RCV」とEIPの情報を相手先から認識、アクセス出来るようにしておく、という訳です。今回作成した環境とは別の環境(Windows Server 2008)を別途用意し、以下の形でhostsファイルに情報を書き入れておきます。

```
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

# localhost name resolution is handled within DNS itself.
#	127.0.0.1       localhost
#	::1             localhost


34.226.xxx.xxx  CM-HULFT-RCV
```

   - 疎通確認
 
HULFT8で利用するポート(30000/31000)が利用可能かどうかについても確認してみましょう。

接続・ポート疎通確認にはPortQryというツールを使ってみます。
[PortQry Command Line Port Scanner Version 2.0](https://www.microsoft.com/en-us/download/details.aspx?id=17148)
[PortQry version 2.0 - TCP/UDP Port Check / Port Scan](https://www.infraexpert.com/study/security12.html)
上記公式サイトからインストーラを入手・解凍し、任意のフォルダに配置した後環境変数Pathにパスを通しておきます。

```
$path = [Environment]::GetEnvironmentVariable('PATH', 'Machine')
$path += ";" + "C:\tools\PortQryV2"
[Environment]::SetEnvironmentVariable('PATH', $path, 'Machine')
```
上記で作成した環境とは別のWindows環境から、今回作成した環境(CM-HULFT-RCV)に対して接続確認を行ってみます。問題無さそうですね。

```
Windows PowerShell
Copyright (C) 2014 Microsoft Corporation. All rights reserved.

PS C:\Users\Administrator> portqry -n CM-HULFT-RCV -p tcp -e 30000

Querying target system called:

 CM-HULFT-RCV

Attempting to resolve name to IP address...


Name resolved to 34.226.xxx.xxx

querying...

TCP port 30000 (unknown service): LISTENING
PS C:\Users\Administrator>
PS C:\Users\Administrator> portqry -n CM-HULFT-RCV -p tcp -e 31000

Querying target system called:

 CM-HULFT-RCV

Attempting to resolve name to IP address...


Name resolved to 34.226.xxx.xxx

querying...

TCP port 31000 (unknown service): LISTENING
PS C:\Users\Administrator>
```
また、以下コマンドで生存監視を行う事も出来ます。