Amazon EC2 (Elastic Compute Cloud) インスタンスは、ネットワーク トラフィックをセキュリティ グループ内に定義されているソースとポートのみに制限できます。Amazon EC2 を使用する場合、EC2 インスタンスでの処理の種類に応じたセキュリティ グループを設定する必要があります。このトピックでは、ArcGIS Server のさまざまな構成に対して構成できる一般的なセキュリティ グループについて説明します。
デフォルトでは、セキュリティ グループは完全にロックされています。セキュリティ グループにルールを追加して、許可するトラフィックのタイプ、トラフィックに使用するポート、通信を受け付けるコンピューターを指定します。開くポートと許可する必要のあるトラフィックのタイプは、インスタンスでの処理の内容によって異なります。
AWS Management Console で構成できるセキュリティ グループの名前とルールの推奨事項を以下に示します。許可するポートとプロトコルは、組織の IT ポリシーによって変化する場合があります。以下の推奨事項は、最も一般的なポート番号を使用しています。組織に IT の専門家がいる場合は、EC2 インスタンスに最も適したセキュリティについて相談してください。
開発インスタンス
開発およびテスト用に使用されている EC2 インスタンスには、専用のセキュリティ グループを作成することを検討してください。このタイプのグループでは、次のアクセスを許可することになります。
- 組織内の IP アドレスまたは承認済み IP アドレスの範囲に対するポート 3389 での RDP アクセス (Windows のみ)。Windows リモート デスクトップを使用して EC2 インスタンスを管理できるようになります。接続できる IP アドレスの範囲 (または 1 つの IP アドレス) を指定するには、CIDR (Classless Inter-Domain Routing) 表記を使用する必要があります。たとえば、0.0.0.0/0 はすべてのユーザーによる接続を許可しますが、92.23.32.51/32 は 1 つの特定の IP アドレスによる接続を許可します。ローカル コンピューターのグローバル IP アドレスを取得できない場合は、システム管理者に確認してください。
- 組織内の IP アドレスまたは承認済み IP アドレスの範囲に対するポート 22 での TCP アクセス (Linux のみ)。ポート 22 を開くと、SSH を使用して Linux インスタンスを操作できます。
- 全ユーザー (ELB (Elastic Load Balancer) を使用していない場合)、または ELB のセキュリティ グループ (ELB を使用している場合) に対するポート 6080 での TCP アクセス。ArcGIS Server との通信には、ポート 6080 が使用されます。サイトの前面に ELB を配置していない場合、ArcGIS Server の Web サービスを使用するすべてのユーザーに対してポート 6080 を開く必要があります。ELB を使用している場合、ELB のセキュリティ グループに対してポート 6080 を開く必要があります (ELB のセキュリティ グループは AWS Management Console から検出可能で、通常は amazon-elb/amazon-elb-sg などの値です)。
- このグループ内の他のコンピューターからのアクセス これは、GIS サーバー コンピューター同士が通信するために必要です。これは、ファイル共有にも役立ちます。このタイプのアクセスを許可するルールを追加するには、[All ICMP] ルール タイプを選択し、セキュリティ グループ ID (sg-xxxxxxxx など) を [Source] ボックスに入力して、[Add Rule] をクリックします。この方法を使用すると、グループ内のコンピューター同士がすべてのポートとプロトコルを介して通信できます。
実運用インスタンス
アプリケーションの開発とテストが終了し、実運用フェーズに移行できるようになったら、リモート デスクトップ アクセスを無効にすることをお勧めします。問題が発生してコンピューターにログインする必要がある場合は、アクセスできるようにセキュリティ グループの構成を一時的に変更できます。ArcGIS Server 実運用のためのグループは、次のアクセスを許可できます。
- 全ユーザー (ELB (Elastic Load Balancer) を使用していない場合)、または ELB のセキュリティ グループ (ELB を使用している場合) に対するポート 6080 での TCP アクセス
- このグループ内の他のコンピューターからのアクセス
セキュリティで保護された実運用インスタンス
コンピューターとの通信を暗号化する必要がある場合、SSL での暗号化通信に通常使用されるポート 443 でトラフィックを受信できるように、サイト上の ELB を構成する必要があります。次に、トラフィックをポート 6443 に転送するようにロード バランサーを構成します。セキュリティ グループで、実運用 ArcGIS Server に対して、前述したポートを開きます。
エンタープライズ ジオデータベースのセキュリティ グループ
ArcGIS Server インスタンスとは異なるインスタンス上にエンタープライズ ジオデータベースを配置する場合、次のアクセスを許可するエンタープライズ ジオデータベース専用のセキュリティ グループを構成できます。
- 組織内の IP アドレスまたは承認済み IP アドレスの範囲に対するポート 22 での TCP アクセス (Linux)。PostgreSQL のデフォルト パスワードを変更するために、コンピューターに少なくとも一度、リモートから接続する必要があります。変更後は、必要に応じて、セキュリティ グループからこのリモート アクセス ルールを削除できます。
- ポート 3389 での RDP アクセス (Windows)。このルールは、たとえばユーザーやジオデータベースを追加するために、Microsoft SQL Server または SQL Server Express インスタンスにリモートから接続する必要がある場合に追加して、完了したら削除できます。
- ArcGIS Server のセキュリティ グループ内にあるコンピューターからのアクセス。ArcGIS Server を実行しているインスタンスから、エンタープライズ ジオデータベースのインスタンスにアクセスできます。セキュリティ グループに参加していないコンピューターがジオデータベースに接続する必要がある場合は、PostgreSQL と通信できるようにポート 5432 を明示的に開くか、SQL Server と通信できるようにポート 1433 を明示的に開く必要があります。
一般的に使用されるポート
セキュリティ グループを作成するときに操作する最も一般的なポートを以下に示します。これらのポートのいくつかは明示的に開く必要がなく、セキュリティ グループ内のコンピューター同士が制限なくアクセスできるように設定すればよいだけです。セキュリティ グループに参加していないコンピューター (オフィス内のデスクトップ ワークステーションなど) からアクセスを許可する場合は、特定のポート番号を開く必要があります。
ポート | 一般的な目的 |
---|---|
80 | IIS Web サーバーまたはロード バランサーへの HTTP アクセス |
443 | IIS Web サーバーまたはロード バランサーへの HTTPS アクセス |
445 | Windows のファイル共有 |
1433 | Microsoft SQL Server への接続 |
3389 | Windows リモート デスクトップへの接続 |
5432 | PostgreSQL への接続 |
6080 | ArcGIS Server への HTTP アクセス |
6443 | ArcGIS Server への HTTPS アクセス |
7443 | Portal for ArcGIS への HTTPS アクセス |
2443 | ArcGIS Data Store の通信 |
Windows ファイアウォールは、Esri が提供した AMI を使用して起動する Windows インスタンス上で有効化されます。上記以外のポートが必要なサードパーティのアプリケーションをインストールしている場合は、Windows ファイアウォールもそのポートが使用できるように構成されていることを確認してください。