Amazon Web Services ブログ

ガバメントクラウド活用のヒント『運用保守経路について』

[2025.02.03 Update: 文言を修正しました]

こんにちは。 AWS パブリックセクター技術統括本部の押川です。

ガバメントクラウドでの業務システム構築を支援する中でよくご質問をいただく項目については、ガバメントクラウド活用のヒント『見積もりで注意すべきポイント』をはじめとする「ガバメントクラウド活用のヒント」シリーズをご覧ください。
また、さらに詳細を知りたいという方には、 詳細解説:ガバメントクラウド名前解決編をはじめとする「詳細解説」シリーズをお勧めしております。

本ブログは、「ガバメントクラウド活用のヒント」シリーズの一つとして、ガバメントクラウド上に構築したシステムに対する運用保守経路についてご説明いたします。ぜひご検討の際に参考にしていただければと思います。

本ブログは以下の内容で構成されています。

  • 運用保守経路としての Transit Gateway の利用
  • 運用保守経路としての PrivateLink の利用
  • 運用保守経路としての Systems Manager Session Manager の利用
  • 補足: 複数のアカウントの EC2 で一度に同じコマンドを実行する
  • 補足: サーバーの更新に必要なインターネットアクセスを運用保守アカウント越しに実現する

運用保守経路としてのTransit Gateway の利用

ガバメントクラウドの道案内『ASP&運用管理補助者編』の(4) 運用保守経路を確保する にもありますが、ガバメントクラウド上で構築した業務システムへの運用保守経路を構築する必要があります。自治体の基幹業務ではインターネット経由でシステムの運用保守を行うことができないため、閉域経由での運用保守経路を構築する必要がありますが、ここではベンダーが独自に専用線を利用してクラウドへの運用保守経路を構築する場合について記載します。

以下のように、事業者運用拠点から閉域を経由してガバメントクラウド上の本番アカウントに接続できるようにして、EC2 への SSH 接続やデータベースへのクエリの実行などの運用管理を行うことを可能にします。

Transit Gateway の利用図

この接続形式では、本番アカウントと事業者運用拠点は IP リーチャブルであり、双方向に通信が可能です。
この方法のメリットは、構築が簡単で、後述する AWS PrivateLink などのコストがかからないという点があります。
この方法のデメリットは、本番アカウントと事業者運用拠点が IP リーチャブルであることから、両者の IP アドレス範囲が重複しないように設計する必要があったり、ルートテーブルを管理する必要があるなどの点です。
一般的に、事業者運用拠点から複数の自治体の本番アカウントを保守しなければならず、そのすべての IP アドレス範囲と重複しないように事業者運用拠点を設計することは難しいため、後述するように AWS PrivateLink などで接続する方式が取られています。

運用保守経路としての PrivateLink の利用

先ほど述べた、事業者運用拠点と本番アカウントの IP アドレスが重複してしまうなどの問題を解決するために、AWS PrivateLink で本番アカウントの EC2 や RDS に接続することがあります。

PrivateLinkの利用図

事業者運用拠点から AWS PrivateLink の VPC エンドポイントに直接接続できますが、運用管理アカウントに踏み台サーバー (Amazon EC2) を設置する場合もあります。

AWS PrivateLink を利用すると、VPC エンドポイントの費用がかかります。接続したい対象の数だけ用意する必要があります。
参考として、「AWS PrivateLink ワークショップ」もご活用ください。
決まった数個の VPC エンドポイントのみで Amazon EC2 に接続することができるようになるのが、次の方法です。

踏み台サーバーを Systems Manager に代替する

AWS Systems Manager には、Session Manager という機能があり、SSH のポートを解放しなくても Amazon EC2 にログインして操作を行うことができます。
マネジメントコンソールからの利用が一般的ですが、ガバメントクラウドでは、マネジメントコンソールへアクセスするために払い出されるユーザーからは Session Manager を利用することができません。運用管理アカウントでもインターネット側からのアクセスは許可されていません。IAM Role Anywhereや AWS Systems Manager Agent等を庁舎等の閉域端末へ入れてIAMロールを使えるようにした上で、CLI を利用して閉域経由の Session Manager をする方法を取ることになると考えられます。 (本番アカウントの EC2 に対しても、本番アカウントで ssm:StartSession の権限を付与した IAM ロールを作り、それを運用アカウントのIAMロールから AssumeRole することでアクセスできます。)

閉域から Session Manager を利用するには、AWS CLI の以下のようなコマンドを実行します。

aws ssm start-session --target instance-id

Systems Manager の利用図

この場合、運用管理アカウントと本番アカウントに、 Session Manager を利用するために必要な数個のエンドポイントを設置するだけで本番 EC2 へのログインが可能になります。
Session Manager を利用するために必要な VPC エンドポイントについては、こちらのドキュメントをご覧ください。
AWS Systems Manager Session Manager では EC2 にしかアクセスできないので、例えば RDS に SSH ログインをしてクエリを実行するなどの保守作業を行いたいといったようなケースでは、踏み台サーバーが必要になります。

補足:複数のアカウントの EC2 で一度に同じコマンドを実行する

メンテナンスなどで、複数の EC2 で同時にコマンドを実行したい場合、 AWS Systems Manager Automation を使えます。
各本番アカウントで定義された実行権限のあるロールに運用管理アカウントから AssumeRole してアクションを実行します。この場合、どのようなコマンドを実行するかなどのアクションを管理する Runbook は運用管理アカウント内で一括管理できます。

SSM Agentクロスアカウントのイメージ

補足: パッチ適用、ウイルス対策ソフトのパターンファイル更新に必要なインターネットアクセスを運用保守アカウント越しに実現する

運用保守作業とは少し違いますが、パッチ適用、ウイルス対策ソフトのパターンファイル更新で本番サーバーからインターネットに接続する必要がある場合のインターネットへの経路の設定についても補足しておきます。

ガバメントクラウド上では、ネットワーク分離の考え方から インターネットゲートウェイを設置することが制限されています。そのため、サーバーの更新などで本番サーバーからインターネットに接続する必要がある場合は、運用保守アカウントに NAT ゲートウェイ・インターネットゲートウェイを設置し、そこへの経路を設置する必要があります。

インターネット利用図

この場合、本番アカウントからインターネットゲートウェイが IP リーチャブルではない方がセキュアですので、途中に AWS PrivateLink を挟みます。そして、その到達先として Amazon EC2 を設置し、そのサーバーを経由して NAT ゲートウェイ・インターネットゲートウェイにアクセスするようにします。

まとめ

本ブログでは、ガバメントクラウド上での運用保守経路について詳細をご紹介しました。複数のパターンのメリットとデメリットを把握し、適切な運用保守経路を構築することが必要です。 地方公共団体に所属している方、または関連するベンダーパートナーの方でこのブログに関して追記した方がいいことやご不明点などございましたら、お気軽に担当のソリューションアーキテクトまたは末尾のお問い合わせ窓口へお気軽にご連絡ください。

免責事項

  • 本ブログや添付資料の内容はできる限り正確な情報を提供するように努めておりますが、正確性や安全性を保証するものではありません。
  • 本ブログや添付資料はあくまで一例であり、すべての作業内容を充足するものではありません。
  • 本ブログや添付資料はガバメントクラウドの新しい情報や AWS サービスの変更・追加などにより今後修正される場合があります。
  • 本ブログや添付資料の利用によって生じた損害等の責任は利用者が負うものとし、アマゾン ウェブ サービス ジャパン は一切の責任を負いかねますことご了承ください。

ガバメントクラウドに関するお問い合わせ

AWS の公共チームではガバメントクラウドクラウド相談窓口を設けています。 本記事で紹介した 標準準拠システムデータ連携に関するお問い合わせのほか、ガバメントクラウド利用全般に関するお問い合わせについて、担当の営業およびソリューションアーキテクトがご回答いたします。ぜひご活用ください。
https://aws.amazon.com/jp/government-education/worldwide/japan/gov-cloud-advisory-site/