4.2.10. 高度な設定

Secure Gateway に関連する変更可能なすべての設定は、 EricomSecureGateway.exe.config ファイルにあります。このファイルは、テキスト・エディタで開くことができるテキスト・ファイルです。

「Reloadable」と記されているパラメータの変更には、再起動が必要ありません。「Not Reloadable」と記されているパラメータは、サービスの再起動後に反映されます。

ホワイトリスト・セキュリティ

ホワイトリスト機能が Ericom Secure Gateway 7.6.1 で追加されました。

次の 3 つのタイプのホワイトリストを設定可能です: エンド・ユーザのアドレスと範囲、リレー・サーバのアドレスと範囲、およびターゲット・ホストのアドレスと範囲。 リレー・サーバは、エンド・ユーザとターゲット・ホスト(例: Ericom AccessServer)間の通信を中継する Ericom のコンポーネントです。 IPv4 アドレスと IPv6 アドレスがサポートされています。

すべてのホワイトリストは、デフォルトでは無効化されています。 1 つのタイプのホワイトリストを有効化するには、有効化の設定を「false」から「true」に変更します。

例:
<add key="ClientWhitelistByIPAddressesEnabled" value="false" />
<add key="ClientWhitelistByIPAddressesEnabled" value="true" />

アドレスは、標準的なフォーマット(例: 192.168.1.1)で入力し、セミコロン(;)で区切ります。

アドレスの範囲は、低い方の IP、文字「-」、および高い方の IP を使用します。 例: 192.168.1.1-192.168.255.255

すべての設定オプションの一覧は以下のとおりです:

<Visitor>
<add key="HandshakeTimeoutSeconds" value="60" />
<add key="ClientWhitelistByIPAddressesEnabled" value="false" />
<add key="ClientWhitelistAllowedIPv4Addresses" value="" />
<add key="ClientWhitelistAllowedIPv6Addresses" value="" />
<add key="RelayServerWhitelistByIPAddressesEnabled" value="false" />
<add key="RelayServerWhitelistAllowedIPv4Addresses" value="" />
<add key="RelayServerWhitelistAllowedIPv6Addresses" value="" />
<add key="TargetHostRestrictedToRelayServerIPEnabled" value="false" />
<add key="TargetHostWhitelistByIPAddressesEnabled" value="false" />
<add key="TargetHostWhitelistAllowedIPv4Addresses" value="" />
<add key="TargetHostWhitelistAllowedIPv6Addresses" value="" />
</Visitor>
<Admin>
<add key="InactivityTimeoutMinutes" value="5" />
<add key="WhitelistByIPAddressesEnabled" value="true" />
<add key="WhitelistAllowedIPv4Addresses" value="" />
<add key="WhitelistAllowedIPv6Addresses" value="" />
</Admin>

注意

「ClientWhitelistByIPAddressesEnabled」と管理ホワイトリスト設定は、以前のバージョンでは
「LockdownAllowed****」アドレスとして存在していました。現在これらの設定を構成している場合、
新しい値にパラメータをコピーしてください。

HTTP/HTTPS 通信をブロックする

AccessNow の通信に Websocket のみを使用するよう Ericom Secure Gateway に強制するために、HTTP/HTTPS を無効にすることができます。 設定ファイルで「Http」設定に移動し、最初のキーを「Enabled」から「Disabled」に設定します。

<Http>
<add key="Enabled" value="true" />
<add key="ClientPullDataTimeoutSeconds" value="30" />
<add key="ServerPushDataTimeoutSeconds" value="10" />
</Http>

同一生成元の検証(AccessNow のみ)

注意

この機能は、AccessNow のみで使用されます。 同時に他の Ericom クライアント(例: Blaze クライアント)を
使用している場合、この機能を有効化しないでください。

バージョン 7.6.1 では、信頼できる発信元とホスト・アドレスを設定するための 2つのホワイトリスト・パラメータが追加されました。 ホワイトリストを設定するには、設定ファイルを開き、「sessions Settings | ビジター」の次の場所に移動します:

  • OriginHttpHeaderWhitelistAddresses
  • HostHttpHeaderWhitelistAddresses

Websocket のアップグレード・メッセージ上に「OriginHttpHeaderWhitelistAddresses」が設定されているかが ESG によりチェックされます。「発信元」HTTP ヘッダがメッセージに存在する場合、それが信頼できるアドレスのリストにあることが確認されます。そうでなければ、「参照元」HTTP ヘッダがメッセージに存在するかがチェックされます。存在する場合、それが信頼できるアドレスのリストにあることが確認されます。一致するものが存在しない場合、Websocket のアップグレード・リクエストは ESG により拒否されます。

次に、「HostHttpHeaderWhitelistAddresses」が設定されているかが ESG によりチェックされます。「ホスト」HTTP ヘッダがメッセージに存在する場合、それが信頼できるアドレスのリストにあることが確認されます。一致するものが存在しない場合、WebSocket のアップグレード・リクエストは ESG により拒否されます。

両方のテストを通過した場合、ESG により接続が受け入れられます。

HTTP セキュリティヘッダーを設定する

HTTP セキュリティヘッダーは、EricomSecureGateway.Config file で設定されています。

※ 8.5以降のバージョンをご利用の場合は、EricomSecureGatway.config で設定されています。

X-Frame-Options の値を設定するには、次を編集します:
<Property name="XFrameOptions" type="string" value="" />
コンテンツセキュリティポリシーの値(すなわち、X-Content-Type-Options: nosniff)を設定するには、次を編集します:
<Property name="ContentSecurityPolicy" type="string" value="" />
Access Control Allow Origin の値を設定するには、次を編集します:
<Property name="AccessControlAllowOrigin" type="string" value="*" />

高可用性

Secure Gateway レイヤーに高可用性を備えるには、2つ以上の Secure Gateway をインストールし、それらへのアクセスを管理するサードパーティの冗長なロード・バランサを使用してください。

ロード・バランサにより、エンド・ユーザの接続向け 1つのアドレスが提供されます。リクエストがロード・バランサに到着すると、ビルトインの重み付け基準に基づいて利用可能な Secure Gateway にリクエストがリダイレクトされます。基本的なラウンド・ロビン式ロード・バランサも使用できますが、Secure Gateway がアクティブであるかが検出されない場合があります。

Qualys A グレードのための設定

Windows 2012R2 サーバにインストールされたバージョン 7.5 以降の Ericom Secure Gateway は、Qualys®( https://www.ssllabs.com/ssltest/ )の A グレードを達成します(2017 年 8 月時点で確認済み)。 信頼された証明書とNartac の無償IIS Crypto ツール ( https://www.nartac.com/Products/IISCrypto )も必要となります。 ESG をインストールした後、自己署名証明書よりも優先して信頼された証明書を使用するよう設定します。 ワイルドカード証明書の使用は、低い Qualys グレードをもたらす可能性があることに注意してください。 次に、以下のように IIS Crypto を使用して RC4 暗号およびDiffie-Helman鍵共有を無効化します

../_images/esgsetting03.jpg

RC4 とDiffie-Helman鍵共有を必要とするサーバ上のその他のアプリケーションが影響を受けることに注意してください。ベストプラクティスとして、最高のパフォーマンスと安定性のために Ericom Secure Gateway はサーバ上の主要なアプリケーションである必要があります。

IIS Crypto の変更後にサーバを再起動し、Qualys の Web サイトで ESG の URL をテストします。「A」グレードの結果となるはずです。

../_images/esgsetting04.jpg

SWEET32 に対する保護

Ericom Secure Gateway は、SWEET32 へのセキュリティ保護対策が施されたオペレーティング・システムに対応しています。SWEET32 に対する保護の基本的なステップは、トリプル DES を無効化することです。これは Nartac の IISCrypto を使用して実行できます。 システムを用意にロールバックできるよう、変更を適用する前にシステムのバックアップやスナップショットの作成を忘れないでください。

SL Medium Strength Cipher Suites Supported に対する保護

Ericom Secure Gateway は、「SSL Medium Strength Cipher Suites Supported」へのセキュリティ保護対策が施されたオペレーティング・システムに対応しています。 この脆弱性に対する保護の基本的なステップは、すべての下位ビット暗号(RC2 および RC4)を無効化することです。これは Nartac の IISCrypto を使用して実行できます。 例えば、 Nartac の IISCrypto を使用して、以下を設定した後にオペレーティング・システムを再起動します。

../_images/esgsetting05.jpg

また、上記の画像は、トリプル DES を無効化することによる SWEET32 の対策も示しています。システムを用意にロールバックできるよう、変更を適用する前にシステムのバックアップやスナップショットの作成を忘れないでください。

PTWC での DMZ の設定

デフォルトでは、インターネット経由で ESG を介して接続するユーザは、ESG のアドレスを使用していると PowerTerm WebConnect サーバにより識別されます。DMP IP レンジを SmartInternalIpRanges 変数で設定している場合、これは SmartInternal の動作を妨げる場合があります。

例:
  • ESG: 10.75.4.1
  • PTWC: 10.75.1.1
  • End User: 10.10.50.50

PTWC の SmartInternalIpRanges に「10.10」を追加した場合、ユーザは PTWC によって「10.10.50.50」ではなく「10.75.4.1」(ESG アドレス)として認識されます。そのため、ユーザの接続はダイレクト・モードではなく、引き続きゲートウェイ・モードとなります。 PTWC に適切にエンド・ユーザの IP アドレスを認識させるには、index.asp と applicationzone.html の PRAM リストにパラメータ /websocket を追加します。

注意

AccessToGo、AccessPad、および AccessNow では、SmartInternal 機能は完全には
サポートされていません。これらのクライアントでは、SmartInternalIsGateway 変数を使用して
ゲートウェイの動作を管理する必要があります。

ESG とのアクセスを制限する

ESG とターミナル・サーバへの着信接続を制限するには、Windows ファイアウォールの スコープ の規則を使用します。 ESG への着信接続を制限するには、Ericom Secure Gateway 用のポート規則に移動します。スコープ タブをクリックし、ESG へのアクセスを持たせるシステムまたはアプライアンスのアドレスを入力します。以下の例では、「192.168.1.1 」からの接続のみが ESG ポートを介して接続できます。

../_images/esgsetting01.jpg

ターミナル・サーバ上の着信接続を ESG のみに制限するには、目的のポートに 同様のスコープの規則を設定します:

  • 3389: 標準の RDP ポート
  • 8080: AccessNow/Blaze のポート

ログ・ファイルのサイズを変更する

デフォルトのログ・ファイルのサイズは 32 MBです。この上限に達した場合、新しいファイルが生成されます。この値を変更するには、.config ファイルを編集し、logSettings セクションの LogSizeMB の設定を変更します。目的のサイズ(MB 単位)に値を変更し、新しい値が反映されるようサービスを再起動します。サービスを再起動するごとに、新しいログ・ファイルが生成されます。

SSO フォームの POST

POST がサポートされているサードパーティの認証エンティティ(SSL VPN など)を使用する場合、ユーザは認証済みの資格情報を使用して AccessNow セッションにシングル・サインオンすることができます。この機能には、ESG が必要です。

認証エンティティに、POST URL を入力するフィールドがあります。目的の製品の SSO URL を入力します:

AccessNow: https://esg-address/accessnow/sso
AccessNow for VMware View: https://esg-address/view/sso

注意

両方のケースで、各デフォルト・ページ(start.html と view.html)へのリクエストがESG により
自動的にリダイレクトされます。

フォームに以下のフィールドを追加します:

  • name="autostart" value="yes"
  • name="esg-cookie-prefix" value="EAN_"
  • name="username"
  • name="password"
  • name="domain"

以下は、Juniper SSL VPN での例です:

../_images/esgsetting02.jpg

値「esg-cookie-prefix」により、フォームの AccessNow Cookie のプレフィックスが定義されます。これは、AccessNow の接続のための必須項目です。 ターゲットが相対 URL の場合、パスの「/sso」の部分が置き換えられます。ターゲットが完全な URL の場合、現在のパスが完全に置き換えられます。

値を POST するためのページのサンプル

<form name="cookieform" method="post" action="/AccessNow/sso"><p>
<!– <form name="cookieform" method="post" action="/view/sso"><p> –>
アドレス: <input type="text" name="address"/><br/>
<!– RDP Host: <input type="text" name="fulladdress"/><br/> –>
ユーザ名: <input type="text" name="username"/><br/>
パスワード: <input type="password" name="password"><br>
ドメイン: <input type="text" name="domain"><br>
Ericom Secure Gatway を使用: <input type="checkbox" name="use_gateway" value="true"><br>
ゲートウェイ・アドレス: <input type="text" name="gateway_address"/><br/>
接続時にプログラムを起動: <input type="checkbox" name="remoteapplicationmode" value="true"><br>
プログラムのパス: <input type="text" name="alternate_shell" size="256"><br>
<input type="hidden" name="autostart" value="true"/>
<input type="hidden" name="esg-cookie-prefix" value="EAN_"/>
<input type="submit"/>
</p></form>

POST の値を受け取るページのサンプル

<body>
<%
Response.Write ("アドレス:"& Request.Form("address") &"<br>")
Response.Write( "fulladdress: " & Request.Form("fulladdress") & "<br/>")
Response.Write ("ユーザ名:"& Request.Form("username") &"<br>")
Response.Write ("パスワード:"& Request.Form("password") &"<br>")
Response.Write ("ドメイン:"& Request.Form("domain") &"<br>")
Response.Write( "autostart: " & Request.Form("autostart") & "<br/>")
Response.Write( "esgcookieprefix: " & Request.Form("esg-cookie-prefix") & "<br/>")
Response.Write ("Ericom Secure Gatway を使用:"& Request.Form("use_gateway") &"<br>")
Response.Write( "ゲートウェイ・アドレス:" & Request.Form("gateway_address") & "<br/>")
Response.Write( "接続時にプログラムを起動: " & Request.Form("remoteapplicationmode") & "<br/>")
Response.Write( "プログラムのパス: " & Request.Form("alternate_shell") & "<br/>")
%>
</body>