4.3. 各機能を分離したマルチマシン構成での導入手順

Ericom Shieldは機能ごとにコンポーネントを分離してインストールすることが可能です。 そうすることで、必要な冗長性を担保したり、リソースが必要なブラウザノードを水平に追加するなどの柔軟な構成が可能となります。

4.3.1. セットアップスクリプトの実行

下記コマンドによりsetup.shをダウンロードし、実行します。

$ wget https://ericom-tec.ashisuto.co.jp/shield/setup.sh
$ chmod +x setup.sh
$ sudo ./setup.sh

実行時点で日本国内で提供されているバージョンの一覧が表示されるので、利用するバージョンの番号を選択してください。(最新版を推奨します。)

<表示例>

どのバージョンをセットアップしますか?
1: Rel-18.07.1
2: Rel-18.05

番号で指定してください: 1
Rel-18.07.1 をセットアップします。

EULAの画面が表示されます。確認いただき、任意のキーを押下してください。

Please, read the EULA carefully, then accept it to continue the installation process or reject to exit.
Press any key to continue...
<EULA:参考>

ERICOM SOFTWARE LTD.
END USER LICENSE AGREEMENT
Version 13.2

IMPORTANT - CAREFULLY READ THE FOLLOWING TERMS AND CONDITIONS (these “Terms”) BEFORE OPENING ANY OF THE PACKAGES CONTAINING ELECTRONIC MEDIA, SUCH AS A DISK PACK, ETC., OR DOWNLOADING OR INSTALLING THE ACCOMPANYING SOFTWARE
(the “Software”) OR ANY PART THEREOF.

~ 略 ~

17. OPEN SOURCE. Certain Software components may be subject to free software licenses, which, among other rights, permit the user to copy, modify, and redistribute certain programs, or portions thereof, and have access to the source code. To the extent Licensee receives Software under this Agreement which contains such components, Licensee agrees to be bound by all the terms therein including keeping all copyright notices intact for the duration of Licensee’s use of the Software and modifying and/or redistributing such components only in accordance with their terms. Such components are provided "AS IS" "WITHOUT WARRANTY OF ANY KIND." Ericom may make available such software components, in source code format, to any third party upon request for the cost of duplication or distribution, for a period of three (3) years from this distribution. This distribution period begins on the date that Ericom first makes the software, in source code format, available, which must be used according to the license terms that accompany the source code. Requests should be submitted in writing to: Ericom Software Ltd., 8 Hamarpe Street P.O.Box 45122, Jerusalem, 9145101  Israel.

Page 6 of 6
100% Press h for help or q to quit

EULAを承諾するかどうかの確認が表示されますので、 yes と入力してエンタを押下ください。

Do you accept the EULA (yes/no/anything else to display it again)?

事前チェックスクリプトが実行されます。匿名で結果をEricom社に送信するかどうかの確認が表示されます。任意で yes または no を入力しエンターを押下してください。

***************     Running pre-install-check ...
Running pre-install-check ...
Do you agree to send the pre-check results anonymously to Ericom (yes/no)?

事前チェックをパスすると、インストールが開始されます。暫く時間がかかります。

インストール中に、サービスユーザとして「ericom」という名前のユーザのセットアップが行われます。任意のパスワードを指定して作成を完了してください。

################################################### Create Ericom user #################################
Adding user `ericom' ...
Adding new group `ericom' (1001) ...
Adding new user `ericom' (1001) with group `ericom' ...
Creating home directory `/home/ericom' ...
Copying files from `/etc/skel' ...
Enter new UNIX password: [任意のパスワード]※表示れません。
Retype new UNIX password:[任意のパスワード]※表示れません。確認の為に同じパスワードを入力してください。
passwd: password updated successfully
########################## ericom Going to prepare super user #########################################
ericom ALL=(ALL:ALL) NOPASSWD: ALL

注意

このパスワードは今後updateやマルチノード構成にする場合に利用されます。また、「ericom」ユーザのパスワードは全ノードで一致している必要があります。

インストールは下記の完了画面が表示されるまでお待ち下さい。

***************     Success!
***************
***************     Ericom Shield Version:             - SHIELD_VER=18.05-Build_344
            - SHIELD_VER=18.05-Build_344
            - SHIELD_VER=18.05-Build_344 is up and running

下記コマンドを実行し、起動が完了したことを確認してください。

$ sudo /usr/local/ericomshield/status.sh -a
<実行結果:参考>
ID                  NAME                                      MODE                REPLICAS            IMAGE                                                    PORTS
ic6mmy0mo0l5        shield_authproxy                          global              1/1                 securebrowsing/shield-authproxy:180516-08.41-2115
3f11i3si2ddy        shield_broker-server                      replicated          1/1                 securebrowsing/broker-server:180523-08.54-2159
de4i1207pyai        shield_cdr-controller                     replicated          1/1                 securebrowsing/shield-cdr-controller:180321-11.36-1611
txsa8jd72i48        shield_cdr-dispatcher                     replicated          2/2                 securebrowsing/shield-cdr-dispatcher:180320-16.40-1606
x6m72mfn4qc7        shield_collector                          global              1/1                 securebrowsing/shield-collector:180523-13.26-2164
tzdpb9mg6whb        shield_consul                             replicated          1/1                 securebrowsing/shield-consul-agent:180207-18.32-1293
nmcpt0xa10zw        shield_consul-server                      replicated          5/5                 securebrowsing/shield-configuration:180510-10.17-2023
r2jfwgyax5pc        shield_dns                                replicated          2/2                 securebrowsing/shield-dns:180521-15.52-2154
kautncpsj93k        shield_elk                                replicated          1/1                 securebrowsing/shield-elk:180515-11.22-2102
mf6brclwnnbm        shield_ext-proxy                          replicated          2/2                 securebrowsing/extproxy:180521-05.46-2144                *:3138->3138/tcp
0vnhpkk0qcoz        shield_icap-server                        replicated          1/1                 securebrowsing/icap-server:180524-12.52-2187             *:1344->1344/tcp
42jict2i7x74        shield_logspout                           global              1/1                 securebrowsing/shield-logspout:171123-17.23-642
z1s3wp9f8cl0        shield_maintenance                        global              1/1                 securebrowsing/shield-maintenance:171015-11.48-270
sgjujjxsz2dp        shield_netdata                            global              1/1                 securebrowsing/netdata:180114-08.17-1026                 *:8383->19999/tcp
mrf07yx1ohwp        shield_notifier                           replicated          1/1                 securebrowsing/shield-notifier:180516-11.38-2124
p2hcbxxg5r3f        shield_portainer                          replicated          1/1                 securebrowsing/shield-portainer:180311-14.35-1498
3plyxa7b430f        shield_proxy-server                       replicated          2/2                 securebrowsing/proxy-server:180515-10.18-2100
1i8d6cdx6w3j        shield_shield-admin                       replicated          1/1                 securebrowsing/shield-admin:180524-15.05-2189            *:8181->8181/tcp
u6usvjb3opuh        shield_shield-browser                     replicated          20/20               securebrowsing/shield-cef:180523-12.13-2160
qoslgzd904lr        shield_speedtest                          replicated          1/1                 securebrowsing/speedtest:180312-09.40-1517               *:8185->8185/tcp
i4hhlew7i8c9        shield_web-service                        replicated          1/1                 securebrowsing/shield-web-service:180515-13.43-2109      *:80->1345/tcp
------------------------------------------------------------------------------

Ericom Shield (Staging:18.05-Build_344) on ***.***.***.*** is up and running | System Status | | license: | date: Sun Jan 01 2018 00:00:00 GMT+0300 (IDT) | | number of licenses: 10 | | licenses in use: 0 | sessions: | totalUsers: 0 | | sessions in use: 0 | | available session

------------------------------------------------------------------------------

***************     Ericom Shield is running

※最終行が「Ericom Shield is running」と表示されていれば起動が完了しています。

4.3.2. ライセンスのアクティベーション

ブラウザを起動し、管理コンソールにアクセスします。( https://***.***.***.***:8181/ )

デフォルトのIDとパスワードを入力し、ログインしてください。(ID:admin / パスワード:ericomshield

shield-howto-all-1

ライセンスアクティベーション については 展開ガイド - 管理コンソール - ライセンス をご参照ください。

警告

アクティベーションを行う前に行った設定は再起動により初期化されてしまいます。必ず最初にアクティベーションを実施してください。

4.3.3. DNSの設定 / 上位プロキシの設定

アクティベーションと同時に、DNSの設定と、ご利用の場合には上位プロキシの設定を実施してください。上位プロキシはご利用でない場合は設定不要です。

DNSの設定

展開ガイド - 管理コンソール - 設定 - DNS をご確認いただき、内部DNSおよび外部DNSのアドレスを設定してください。内部DNSでインターネットの名前解決が行える場合、両方で同じDNSサーバを指定していただいても問題ありません。

shield-howto-all-2

上位プロキシの設定

展開ガイド - 管理コンソール - 設定 - プロキシ & インテグレーション をご確認いただき、Shieldの上位プロキシとなるサーバの情報を設定してください。

shield-howto-all-3

4.3.4. 追加対象ノードでの事前設定

新規にセットアップするサーバにおいて、下記事前設定を実施しておいてください。

下記コマンドによりprepare-node.shをダウンロードし、実行します。

$ wget https://ericom-tec.ashisuto.co.jp/shield/prepare-node.sh
$ chmod +x prepare-node.sh
$ sudo ./prepare-node.sh

サービスユーザとして「ericom」という名前のユーザのセットアップが行われます。1台目のノードをセットアップした時に設定したものと同じパスワードを設定してください。

################################################### Create Ericom user #################################
Adding user `ericom' ...
Adding new group `ericom' (1001) ...
Adding new user `ericom' (1001) with group `ericom' ...
Creating home directory `/home/ericom' ...
Copying files from `/etc/skel' ...
Enter new UNIX password: [1台目と同じパスワード]※表示れません。
Retype new UNIX password:[1台目と同じパスワード]※表示れません。確認の為に同じパスワードを入力してください。
passwd: password updated successfully
########################## ericom Going to prepare super user #########################################
ericom ALL=(ALL:ALL) NOPASSWD: ALL

注意

このパスワードは今後updateやマルチノード構成にする場合に利用されます。また、「ericom」ユーザのパスワードは全ノードで一致している必要があります。

4.3.5. ノード追加

新規追加予定のノードを1台目のサーバに追加する作業を実施します。この作業は 1台目のサーバ において実行します。

  • 全ての役割を持ったノードを追加する場合
$ cd /usr/local/ericomshield
$ sudo ./addnodes.sh -ips [追加予定サーバのIPアドレス1],[追加予定サーバのIPアドレス2] -mng -sc -b

警告

ShieldのManagementサーバは 奇数台 必要です。全ての役割を持ったノードやManagementノードを追加する場合はかならず3台または5台となるように追加してください。 マルチマシンについての詳細は 「展開ガイド」「マルチマシン」 「ノードタイプの概要」 を参照してください。

Tips

コマンド実行時にエラーがあった場合、スクリプトが途中で停止します。 一部の問題は既知の不具合で手動による回復が可能です。詳細は [APPENDIX] [トラブルシュート] [ addnodes.sh 実行時のエラー対処 ] を参照してください。

特定の役割だけを持ったノードを追加することも可能です。

  • Management ノードを追加する場合
$ cd /usr/local/ericomshield
$ sudo ./addnodes.sh -ips [追加予定サーバのIPアドレス] -mng
  • Coreノードを追加する場合
$ cd /usr/local/ericomshield
$ sudo ./addnodes.sh -ips [追加予定サーバのIPアドレス] -sc
  • Browserノードを追加する場合
$ cd /usr/local/ericomshield
$ sudo ./addnodes.sh -ips [追加予定サーバのIPアドレス] -b

4.3.6. ノード追加後の作業

ノード毎に役割を分担させる構成とする場合で、最初の1台(leaderノード)からCoreやBrowserの役割を削除するには、下記コマンドにてラベルを削除してください。

Coreの役割を削除する場合

$ cd /usr/local/ericomshield
$ sudo ./nodes.sh -remove-label [削除対象のノード名] shield_core

Browserの役割を削除する場合

$ cd /usr/local/ericomshield
$ sudo ./nodes.sh -remove-label [削除対象のノード名] browser

ノード追加後、下記コマンドにて各ノードのステータスを確認してください。

$ sudo ./status.sh -n -s
+--------------------+---------------+--------+---------+-----------------+
|        NAME        |      IP       | STATUS |  ROLE   |     LABELS      |
+====================+===============+========+=========+=================+
| hostname_b         | ***.**.**.*** | active | worker  | browser=yes     |
|                    |               |        |         | shield_core=yes |
+--------------------+---------------+--------+---------+-----------------+
| localhost_(Leader) | ***.**.**.*** | active | manager | browser=yes     |
|                    |               |        |         | management=yes  |
|                    |               |        |         | shield_core=yes |
+--------------------+---------------+--------+---------+-----------------+
+----------------+------------------------+---------------------------+-------+
|    Services    | hostname_b       Ready | hostname_a(*)       Ready | Total |
+================+========================+===========================+=======+
| authproxy      | 0                      | 1                         | 1/1   |
+----------------+------------------------+---------------------------+-------+
| broker-server  | 0                      | 1                         | 1/1   |
+----------------+------------------------+---------------------------+-------+
| cdr-controller | 0                      | 1                         | 1/1   |
+----------------+------------------------+---------------------------+-------+
| cdr-dispatcher | 0                      | 2                         | 2/2   |
+----------------+------------------------+---------------------------+-------+
| collector      | 1                      | 1                         | 2/2   |
+----------------+------------------------+---------------------------+-------+
| consul         | 0                      | 1                         | 1/1   |
+----------------+------------------------+---------------------------+-------+
| consul-server  | 0                      | 5                         | 5/5   |
+----------------+------------------------+---------------------------+-------+
| dns            | 0                      | 2                         | 2/2   |
+----------------+------------------------+---------------------------+-------+
| elk            | 0                      | 1                         | 1/1   |
+----------------+------------------------+---------------------------+-------+
| ext-proxy      | 0                      | 2                         | 2/2   |
+----------------+------------------------+---------------------------+-------+
| icap-server    | 0                      | 1                         | 1/1   |
+----------------+------------------------+---------------------------+-------+
| logspout       | 1                      | 1                         | 2/2   |
+----------------+------------------------+---------------------------+-------+
| maintenance    | 1                      | 1                         | 2/2   |
+----------------+------------------------+---------------------------+-------+
| netdata        | 1                      | 1                         | 2/2   |
+----------------+------------------------+---------------------------+-------+
| notifier       | 0                      | 1                         | 1/1   |
+----------------+------------------------+---------------------------+-------+
| portainer      | 0                      | 1                         | 1/1   |
+----------------+------------------------+---------------------------+-------+
| proxy-server   | 0                      | 2                         | 2/2   |
+----------------+------------------------+---------------------------+-------+
| shield-admin   | 0                      | 1                         | 1/1   |
+----------------+------------------------+---------------------------+-------+
| shield-browser | 0                      | 20                        | 20/20 |
+----------------+------------------------+---------------------------+-------+
| speedtest      | 0                      | 1                         | 1/1   |
+----------------+------------------------+---------------------------+-------+
| web-service    | 0                      | 1                         | 1/1   |
+----------------+------------------------+---------------------------+-------+
***************     Ericom Shield is running

4.3.7. クライアントからのアクセス

アクティベーションが完了すると、デフォルトの設定状態ですぐにShieldをご利用いただけます。ご利用にあたってはクライアントPCで下記2点(Internet Explorerをクライアントとして利用している場合は3点)の設定が必要となります。

ルート証明書のインストール

HTTPS通信をシールドするためにクライアントPCにルート証明書をインストールする必要があります。証明書は企業独自の証明書を利用することも可能ですし、配布の方法も様々ありますが、 ここではビルドインのEricom社の自己署名の証明書を各ブラウザに導入する手順をご案内します。

展開ガイド - インストール後の手順 - 証明書の設定 を参照し、クライアントPCに証明書を導入してください。

プロキシ設定の変更

実際にクライアントのWebアクセスをShield経由にするために、プロキシサーバとしてShieldのアドレスを指定します。 指定の方法は様々ありますが、ここではブラウザ毎に直接設定を行う方法をご案内します。

展開ガイド - インストール後の手順 - プロキシの構成 を参照し、設定を行ってください。

(IEのみ) WebSocket接続の上限数変更

Internet Explorerをクライアントとして利用した場合、WebSocket接続の上限数が少ないことでSSLエラーが発生することがあります。下記を参照し、接続数の上限を変更してください。

  1. [ファイル名を指定して実行] より、gpedit.msc と入力します。
../../_images/iewebsocket01.jpg
  1. [コンピュータの構成] - [管理用テンプレート] - [Windowsコンポーネント] - [Internet Explorer] - [セキュリティの機能] - [AJAX] を開きます。
../../_images/iewebsocket02.jpg
  1. [サーバーあたりの最大WebSocket接続数を設定する] を選択します。
../../_images/iewebsocket03.jpg
  1. [有効]にチェックを入れ、最大接続数を変更します。
../../_images/iewebsocket04.jpg

参考

WebSocketの接続数につきましては、レジストリの値を変更することにより上限数を上げることも可能です。 参考までにご確認ください。

WebSocket Maximum Server Connections
https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/general-info/ee330736(v=vs.85)?redirectedfrom=MSDN#websocket-maximum-server-connections.

以上で最低限の設定は完了です。