5.3. 最小構成での導入手順¶
注意
Ericom Shieldは機能ごとにコンポーネントを分離してインストールすることが可能です。 この章では最小構成でインストールする手順を記載します。
本手順で記載するインストール構成としては、以下の図のような、ClusterManagement兼SystemComponent兼FarmServiceサーバが1台、Browserサーバが1台の計2台での構成となります。
5.3.1. セットアップスクリプトの実行¶
セットアップスクリプトは、ClusterManagement兼SystemComponent兼FarmServiceサーバで実施します。下記コマンドでセットアップスクリプト(shield-setup.sh)をホームディレクトリ(~/)でダウンロードします。
$ cd ~
$ curl -O https://ericom-tec.ashisuto.co.jp/shield/shield-setup.sh
$ chmod +x shield-setup.sh
Tips
Tips
下記コマンドでセットアップスクリプトを実行します。実行時点で日本国内にて提供されているバージョンの一覧が表示されますので、利用するバージョンの番号を選択してください。(最新版でのインストールを推奨)
$ ./shield-setup.sh
###### START ###########################################################
[start] Changing to the symbolic link.
[INFO]/etc/resolv.conf is symlink
[INFO ] nameserver is not local stub! Continue!
[end] Changing to the symbolic link.
==================================================================
現在インストールされているバージョン: N/A
==================================================================
実行済みのshield-prepare-serversバージョン: 23.05.4922-8
==================================================================
どのバージョンをセットアップしますか?
1: Rel-23.05_Build:4922-8
2: Rel-22.08_Build:934
3: Rel-21.11_Build:816.3
4: Rel-21.11_Build:816.2
5: Rel-21.04_Build:758
6: Rel-21.01_Build:744
7: Rel-21.01_Build:743
8: Rel-21.01_Build:742
9: Rel-20.10_Build:685 ※サポート終了
10: Rel-20.07_Build:669 ※サポート終了
11: Rel-20.07_Build:667 ※サポート終了
12: Rel-20.05_Build:650 ※サポート終了
13: Rel-20.05_Build:649 ※サポート終了
14: Rel-20.03_Build:639 ※サポート終了
15: Rel-20.01.2_Build:622 ※サポート終了
番号で指定してください:1
Rel-23.05_Build:4922-8 をセットアップします。
[start] change dir
pwd: /home/kkauser
pwd: /home/kkauser/ericomshield
[end] change dir
[info] shield-prepare was executed.
BRANCH: Rel-23.05
BUILD: 4922-8
[start] resource choice.
~略~
以下のメッセージが表示された際には、 基本的には、「1) 通常版インストール」の「1」を選択してください。 旧バージョンを選択は、サポートセンターより指示を受けた場合に選択をお願いします。
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
Rel-21.11.816.2以降、高解像度_8Kディスプレイに対応したブラウザコンテナを選択するオプションが追加されています。
構築されているBrowserサーバのリソース要件を確認の上、必要に応じて高解像度_8Kディスプレイ対応版を選択してください。
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
1) 通常版インストール
2) 高解像度_8Kディスプレイ対応版インストール
番号で選んでください:
shield-setup.shを初回実行時には、実行ユーザをdockerグループに参加させるため、一度ログオフを行う必要が発生します。 下記メッセージが表示されましたら、一度ログオフを行い、再度shield-setup.shの実行をお願いします。
[start] check group
=================================================================================
実行ユーザをdockerグループに追加する必要があります。
追加後、セットアップスクリプトは中断します。
一度ログオフした後、ログインをしなおして、スクリプトを再度実行してください。
=================================================================================
[start] add group
[end] add group
###### DONE ############################################################
続いて、下記のメッセージが表示されます。shield-setup.shを実行しているノードに、どの役割をセットアップするかを選択します。 こちらでは、「1」を選択してください。
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
※この選択の後、複数台構成にする場合に他のノードで実行するコマンドが画面に表示されます。
※必要に応じてコピーの上、他ノードで実行してください。
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
このノードに何をセットアップしますか?
1) 全て (Rancher, Cluster Management および Ericom Shield)
2) Rancher and Cluster Management (Ericom Shield を除く)
3) Rancher のみ
番号で選んでください:1
下記のように他のノードで実行すべきコマンドが表示されますので、コピーして実行してください。表示される内容は毎回、異なります。必ず表示されたコマンドを利用してください。
今回の構築例では3ブロック目に表示されているWorker単体ノード用コマンドをBrowserサーバにて実行します。
<実行例>
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
下記のコマンドがこのノードで実行されています。(確認用。実行の必要はありません。)
sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.7.10 --server https://IPアドレス:8443 --token ランダム値 --ca-checksum ランダム値 --etcd --controlplane --worker
------------------------------------------------------------
そして、
(【必要に応じて】 下記コマンドを他の(Cluster Management + Worker)ノードで実行し てください。)
curl -s -O https://ericom-tec.ashisuto.co.jp/shield/clean-rancher-agent.sh
chmod +x clean-rancher-agent.sh
curl -s -OL https://ericom-tec.ashisuto.co.jp/shield/delete-all.sh
chmod +x delete-all.sh
sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.7.10 --server https://IPアドレス:8443 --token ランダム値 --ca-checksum ランダム値 --etcd --controlplane --worker
------------------------------------------------------------
または、
(【必要に応じて】 下記コマンドを他の Cluster Management単体 ノードで実行してください。)
curl -s -O https://ericom-tec.ashisuto.co.jp/shield/clean-rancher-agent.sh
chmod +x clean-rancher-agent.sh
curl -s -OL https://ericom-tec.ashisuto.co.jp/shield/delete-all.sh
chmod +x delete-all.sh
sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.7.10 --server https://IPアドレス:8443 --token ランダム値 --ca-checksum ランダム値 --etcd --controlplane
------------------------------------------------------------
または、
(【必要に応じて】 下記コマンドを他の Worker単体 ノードで実行してください。)
curl -s -O https://ericom-tec.ashisuto.co.jp/shield/clean-rancher-agent.sh
chmod +x clean-rancher-agent.sh
curl -s -OL https://ericom-tec.ashisuto.co.jp/shield/delete-all.sh
chmod +x delete-all.sh
sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.7.10 --server https://IPアドレス:8443 --token ランダム値 --ca-checksum ランダム値 --worker
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
他ノードでのコマンド実行が完了したら、続けて「y」を入力して処理を進めます。
<実行例>
=================================================================================
それぞれのノードでコマンドの実行は完了しましたか?
先に進んでもよろしいですか? [y/N]:y
クラスタのステータスがActiveになるまで待ってください。
[waiting] Cluster to active
Waiting for state to become active.: provisioning
Waiting for state to become active.: provisioning
Waiting for state to become active.: provisioning
Waiting for state to become active.: waiting
Waiting for state to become active.: waiting
Waiting for state to become active.: active
暫くすると、確認のメッセージが表示されますので、メッセージに従い、RancherUI画面にて上記コマンドで追加したノードが全てActiveステータスとなっていることを確認できましたら、「y」を入力して処理を進めてください。
<実行例>
=================================================================================
【※確認※】 Rancher UI https:// IPアドレス:8443 をブラウザで開き、
追加したノードが全てActiveになっていることを確認してください。
先に進んでもよろしいですか? [y/N]:y
※ Rancher UI画面にて上記コマンドで追加したノードが全てActiveステータスとなっていることを確認する方法は以下の通り。
次に、各Shieldノードに配置するコンポーネント(役割)を選択して配置します。今回の構築例ではClusterManagement兼SystemComponent兼FarmServiceサーバと、Browserサーバの2台についてコンポーネント(役割)を選択するように表示されます。
表示される ホスト名 を確認し、それぞれで番号を選択してください。
ClusterManagement兼SystemComponent兼FarmServiceサーバでは「 2 」を選択してください。Browserサーバでは「 3 」を選択してください。
<実行例>
=================================================================================
*** {ホスト名} ***
上記ノードにどのShieldコンポーネントを配置しますか?
0) Cluster Management のみ
---------------------------------------------------------
【System ComponentとBrowserを分ける場合】
---------------------------------------------------------
2) System Component + Farm-service (management, proxy, elk, farm-services)
3) Browser のみ (remort-browsers)
---------------------------------------------------------
99) Advanced Option
番号で選択してください:
上記の選択画面にて番号選択を全Shieldサーバ(2台)に対して行うと実際にShieldコンポーネントの展開処理が開始されます。完了するまで暫くお待ち下さい。
<実行例>
[start] Waiting System Project is Actived
[end] Waiting System Project is Actived
[start] deploy shield
[start] deploieng shield
******** ./deploy-shield.sh -L .
<IPアドレス>
Custom Path: .
*************** Ericom Shield Kube Setup ...
The OS is Ubuntu 20.04.
*************** Waiting for the Shield Cluster to become ready...
Waiting for all nodes to become ready.
OK
All nodes are ready
137c841c-881b-4c0e-b505-cea46da166f5
New Version: Rel-23.05_Build:4922-8
Shield is not fully deployed
*************** Deploying Ericom Shield Repo: Rel-23.05_Build:4922-8 on System:137c841c-881b-4c0e-b505-cea46da166f5 ...
We are here: /home/kkauser/ericomshield
*************** Deploying Shield Common *******************************
~略~
[end] deploieng shield
[end] deploy shield
[start] get Shield project id
TOPROJECTID: c-vcj4x:p-jtpvc
[end] get Shield project id
[start] Move namespases to Shield project
move namespases to Shield project/ management
move namespases to Shield project/ proxy
move namespases to Shield project/ elk
move namespases to Shield project/ farm-services
move namespases to Shield project/ common
[end] Move namespases to Shield project
[start] Waiting All namespaces are Deploied
[end] Waiting All namespaces are Deploied
【※確認※】 Rancher UI https://<IPアドレス>:8443 をブラウザで開くか、
/home/<実行ユーザ> /ericomshield/shield-status.sh 実行し、
全てのワークロードが Acriveになることをご確認ください。
###### DONE ############################################################
最後に、以下のコマンド(shield-status.sh)を実行して、全てのワークロードがActiveステータスとなることを確認します。
$ ~/ericomshield/shield-status.sh
全てのワークロードがActiveステータスなるまでには、Shieldサービスコンポーネントのダウンロードと展開処理が合わせて実施されておりますので、30分~1時間程度の時間が掛かる場合があります。全てワークロードがActiveステータスとなるとshield-status.sh実行結果にて「All workloads are Active !」と表示されます。
※ 1時間以上、経過したにもかかわらず、全てワークロードがActiveステータスとならない場合には、以下のコマンドでShield再起動をお試しください。
$ ~/ericomshield/shield-stop.sh
$ ~/ ericomshield/shield-start.sh
5.3.2. Docker関連パッケージのAPTホールド¶
最新Dockerバージョンにバージョンアップしてしまった場合に、正常にShieldが稼働しなくなる問題が発生する可能性がありますので、以下コマンドを全Shieldサーバにて実行することで、Docker関連パッケージのAPTホールドを行ってください。
$ sudo apt-mark hold $(dpkg -l | grep -e docker -e containerd | awk '{print $2}')
※ APTホールドされている一覧は以下コマンドで確認することができます。
$ sudo apt-mark showhold
5.3.3. ライセンスのアクティベーション¶
ブラウザを起動し、Shield管理コンソールにアクセスします。( https://***.***.***.***:30181/ )
今回の構築例ではClusterManagement兼SystemComponent兼FarmServiceサーバのIPアドレスを指定してアクセスします。
※ Shield管理コンソールは、ノードの役割に関わらず、全てのShieldノードのIPでアクセス表示することが可能です。
デフォルトのIDとパスワードを入力し、ログインしてください。(ID:admin / パスワード:ericomshield)
ライセンスアクティベーションの方法については納品物の「はじめにお読みください_(End_Shield).pdf」に記載されておりますので、参照の上、アクティベーションをお願いします。
5.3.4. Shield管理コンソールの設定¶
Shield管理コンソールにて次の設定を実施してください。
言語の設定¶
以下の設定を変更することで、管理コンソール上の表示言語が日本語に一時的に変更されます。
以下の設定を変更して保存することで、管理コンソール上のデフォルト表示言語が日本語に変更されます。
DNSの設定¶
内部DNSおよび外部DNSのアドレスを設定してください。内部DNSでインターネットの名前解決が行える場合、両方で同じDNSサーバを指定していただいて問題ありません。
「設定>DNS」:各DNSアドレス
プロキシ&インテグレーションの設定¶
上位プロキシがない環境の場合には本設定は不要です。外部上位プロキシおよび内部上位プロキシの両方の設定に対して、上位プロキシの設定を行ってください。
- 外部上位プロキシの設定
- 内部上位プロキシの設定
コンテンツ分離の設定¶
「許可されたドメイン内の外部オブジェクト」設定を「デフォルト許可」から推奨値の「絶対許可」に変更してください。
「設定>コンテンツの分離>許可されたドメイン内の外部オブジェクト」:「デフォルト許可」⇒「絶対許可」
エンドユーザオプションの設定¶
以下の設定は、分離ブラウジングである状態を利用者に分かりやすくするための設定となります。必要に応じて、設定をお願いします。
「設定>エンドユーザオプション」
以下の設定は、分離ブラウジング時にコンテキストメニューからユーザ自身でレンダリング方式を変更可能とする設定となります。サイト表示に正常に表示できない場合にユーザ自身でレンダリング方式を変更して回避する場合に、ご利用いただけます。
ShieldログのSyslog出力設定¶
以下の設定は、ShieldログをSyslogサーバに出力を行う場合の設定箇所となります。必要に応じて、設定をお願いします。
「設定>ログ取得」
※ Syslogサーバ側では、TCPポートで受け取りしてください。UDPポートでの出力は対応しておりません。
ファイル&サニタイズの設定1¶
Ericom Shieldで利用可能なCDRソリューションとしては、Sasa GateScanner(クラウド)とVotiro(オンプレミス)とOpswat MetaDefender(オンプレミス)をサポートしています。
現在のオンプレミス版Ericom Shieldで、利用推奨のCDRソリューションは、Sasa GateScanner(クラウドサービス)となります。
Sasa GateScannerの利用設定については、以下の通りとなります。
▼Sasa GateScanner(クラウド)の利用設定
Sasa GateScannerはクラウサービスとなりますので、以下の設定をいただくことで、利用いただくことが可能な状態となります。
1:「設定>ファイル&サニタイズ」にて以下設定を行います。
2:「Sasa Namedポリシー」に以下の既定Sasaポリシーを登録します。
3:Defaultポリシーのダウンロード設定にて利用するSasaポリシーを有効とします。
4:外部上位プロキシの設定にてバイパス設定が無効化されていることを確認します。
▼Votiro(オンプレ)の利用設定
Votiroを利用する場合は、オンプレミスのVotiroサーバを用意する必要があります。
Sasa GateScanner(クラウド)を利用しない要件の環境の場合には、オンプレミスのVotiroサーバを利用いただくことが可能となります。Votiroサーバの構築手順については、「 5.9. Votiroインストール手順 」を参照ください。
1:「設定>ファイル&サニタイズ」にて以下設定を行います。
2:Defaultポリシーのダウンロード設定にて利用するVotiroポリシーを有効とします。
3:外部上位プロキシの設定にてバイパス設定が有効化されていることを確認します。
▼Opswat MetaDefender(オンプレ)の利用設定
Opswatを利用する場合は、オンプレミスのOpswatサーバを用意する必要があります。Opswatを利用される場合の設定方法(参考)は以下の通りとなります。
1:「設定>ファイル&サニタイズ」にて以下設定を行います。
2:「Opswat Namedポリシー」にOpswatサーバ側で作成済みのOpwatポリシーを登録します。
3:Defaultポリシーのダウンロード設定にて利用するOpswatポリシーを有効とします。
4:外部上位プロキシの設定にてバイパス設定が有効化されていることを確認します。
ファイル&サニタイズの設定2¶
「サニタイズファイルサイズ超過代替ポリシー」設定を「アンチウイルス」から推奨値の「ブロック」に変更してください。
「設定>ファイル&サニタイズ>サニタイズファイルサイズ超過代替ポリシー」:
セッション管理の設定¶
負荷管理の設定¶
Ver23.05では、最大容量閾値について、デフォルト値から変更する必要があります。
「リソース>負荷管理>最大容量閾値(%)」
BrowserサーバのCPUコア数により変更する値が異なりますので、以下の通り、変更してください。
- POCシステム要件「CPU: 16 Core」 の場合: 41%
- 通常システム要件「CPU: 36 Core」 の場合: 59%
こちらの変更を行うことで、ダッシュボード上に表示されている「ブラウザ容量」値が推奨値に変更されます。
ネイティブアプリケーションの設定¶
デフォルト設定では、Ericom Shield経由のアプリケーション通信は、「認証:No」「アクション:許可」となっております。こちらの設定の場合には、アプリケーションからの通信は全て許可される動きとなります。アプリケーションからの通信を「拒否」としたい場合には、以下の画像のように、デフォルト設定にて「アクション:拒否」に変更をお願いします。
上位プロキシ証明書のインポート設定¶
上位プロキシにてSSLデコードを行っているネットワーク環境である場合、上位プロキシの証明書についてインポートする必要があります。
※インポートしない場合、証明書の警告メッセージが表示される状態となります。
「設定>SSL>カスタム信頼された証明書」にて証明書を選択して保存を行うことでインポートを行います。
※ ポリシーで非分離(検査やSSLインスペクション無しで許可)」に設定されたドメインにアクセスする場合、Shieldブラウザを経由しないため、インポートした証明書は利用されません。必要に応じてクライアントPCにも上位プロキシの証明書をインポートしてください。
ntp.msn.comドメインのホワイト設定¶
ntp.msn.comドメインは、EdgeのデフォルトホームのURLです。
Shield経由でこのドメインへアクセスされると、1アクセスしただけで複数のブラウザコンテナが使用されることがあります。また、定期的な更新が行われており意図せずブラウザコンテナが消費されるため、このドメインをホワイト登録することを強くお奨めいたします。
Shield管理コンソール>ポリシー設定から、「ドメイン:ntp.msn.com」を「アクセス:検査もしくは、SSLインスペクション無しで許可」で登録することでホワイト設定されます。
注意
ntp.msn.comドメイン以外でも、同様に意図せずブラウザコンテナを消費するドメインが見つかった場合は、それらのドメインもホワイト登録をお奨めいたします。.
5.3.5. Shield監視ログ収集スクリプトを設置¶
こちらは、Ericom Shieldの動作状態に関するログを定期的に出力することで、正常性確認や障害発生時に後追いでログから調査を可能とするためスクリプトとなります。全てのShieldサーバを対象に、設置いただくことを推奨します。
設置方法の詳細はAPPENDIXの「 8.4. Shield監視ログ収集スクリプトついて 」をご参照ください。
5.3.6. クライアントからのアクセス¶
アクティベーションが完了すると、EirocmShieldが利用いただける状態となります。ご利用にあたって、クライアントPCで下記2点の設定が必要となります。
Shield証明書のインストール¶
EricomShieldではHTTPS通信をSsl-Bumpで通信内容を解析しているため、クライアントPC上にEirocmShieldの証明書をインポートする必要があります。
証明書は企業独自の証明書を利用することも可能です。証明書の配布の方法も複数ありますが、 こちらではビルドインEricomShieldの自己署名証明書をクライアントPC上に導入する手順を記載します。
1:証明書をダウンロード
2:証明書(ericomshield.crt)をインポート
ダウンロードいただいた証明書を、各ユーザに配布を行い、「信頼されたルート証明書機関」に各自でインポートを行っていただくか、グループポリシーを利用してPC上の「信頼されたルート証明書機関」にインポートを行う等で配布を行ってください。
正しく証明書のインポートが完了するとEricomShieldの分離ブラウザ経由でWeb閲覧が利用可能な状態となります。
※証明書インポート後は、一度、ブラウザを再起動する必要があります。
プロキシ設定の変更¶
クライアントPCからのWebアクセスをEricom Shield経由とするために、クライアントPC上から接続するプロキシ先をEricom Shieldのプロキシに変更します。
▼Ericom Shieldのプロキシ
ブラウザのPDFドキュメントを開く際の挙動について設定を変更¶
EricomShieldでの印刷動作の仕様として、Shield(仮想)ブラウザ上でWebページをPDF化した後に、クライアントPC側ブラウザで受信して印刷を行う動きとなっている関係で、ブラウザ側の設定で「PDFをダウンロードする」設定となっている場合に、印刷プレビューが表示されずに印刷ができない問題が発生します。
ご利用のブラウザ設定にてPDFドキュメントを「ブラウザで開く」設定となっているか確認を行い必要に応じて変更を行ってください。
- Chromeでの該当設定
- chrome://settings/content/pdfDocuments
- Edgeでの該当設定
- edge://settings/content/pdfDocuments
- ※ FireFoxでの該当設定に関するドキュメント
- https://support.mozilla.org/ja/kb/view-pdf-files-firefox-or-choose-another-viewer