こちらは AWS DISCOVERY CAMP/AWS BUILDERS GUILD/ゆるふわスタディ Advent Calendar 2025 の24日目の記事です!
はじめに
Microsoft Office on Amazon EC2を構築してみました。
正直なところオフィスを使うならAmazon WorkSpacesを使ったほうが簡単ですしAWSも推奨してる気はしますが…サーバー用途で特定の要件がある場合にのみ、EC2での構築を検討するぐらいでよさそうです。
あと、2025年9月30日以降、従来のSPLAライセンス持ち込みが原則禁止されたため、AWSの提供するユーザーベースのサブスクリプション機能を使う必要になりました。結構かかりますね。
| 購読 | 費用 |
|---|---|
| Remote Desktop Services SAL | 10USD/ユーザ/月 |
| Office Professional Plus | 21.43USD/ユーザ/月 |
どちらもユーザー登録日に初回課金され、以降は各月1日が課金タイミングになるようです。
なんで1日なんだ!と思いますが仕様なのでどうしようもないです。
目次
手順の概要
基本的には下記を参照しました。
https://aws.amazon.com/jp/blogs/news/how-to-set-up-microsoft-office-on-amazon-ec2/
下記が前提になります。
- VPCやサブネットの作成済みであること。
- ADはAWS Directory Serviceで作成したMicrosoft ADを使用します。
- Route 53 Resolver でアウトバウンドルールを設定して名前解決がADに向かうように設定します。
- Microsoft ADドメインの作成
- ADユーザーのシークレットキーの作成
- Route 53 Resolverの設定
- SSM接続用のIAMロールの作成
- License ManagerにADの登録
- Office on EC2の起動
手順
Microsoft ADドメインの作成
AWS Directory ServiceからAWS managed ADドメインを構築します。
| ディレクトリのセットアップ | 設定 |
|---|---|
| ディレクトリタイプ | AWS Managed Microsoft AD |
| AWS Managed Microsoft AD の使用を開始する | AWS managed AD ドメインを新規作成 |
ADユーザーのシークレットキーの作成
ADで作成したユーザ(Admin)の登録をします。
| 新しいシークレットを作成 | 設定 |
|---|---|
| シークレットのタイプ | その他のシークレットのタイプ |
| キー/値のペア | username(Admin)とpasswordの値 |
| シークレットの名前 | ※{license-manager-user-}から始まる名称を付ける |
Route 53 Resolverの設定
ドメイン名前解決をADに転送するためのアウトバウンドルールを設定します。
| アウトバウンドエンドポイントの作成 | 設定 |
|---|---|
| このエンドポイントのセキュリティグループ | TCP/UDPの53プロトコルのインバウンド許可したSG |
| このエンドポイントのプロトコル | Do53 |
| IPアドレス | ADを配置したサブネットを指定 |
| ルールの作成 | 設定 |
|---|---|
| ルールタイプ | 転送 |
| ドメイン名 | 作成したドメインを指定 |
| アウトバウンドエンドポイント | 作成したアウトバウンドエンドポイント |
| ターゲットIPアドレス | ADのIPを指定 |
SSM接続用のIAMロールの作成
License Managerが利用するので、SSMのエンドポイントを作成します。
| VPCエンドポイント |
|---|
| com.amazonaws..ssm |
| com.amazonaws..ssmmessages |
| com.amazonaws..ec2messages |
License ManagerにADの登録
RDSとOfficeをサブスクライブします。
サブスクライブした製品をAWS Managed Microsoft ADなどと連携し、ユーザーを認証します。
※RDSとOfficeの連携については開始方法のステップ通り進めていきます。
Office on EC2の起動
OfficeがインストールされたAMI(Office LTSC Proffesional Plus 2021の対象)からEC2インスタンスを起動します。
※ここでサーバーには下記のIAMロールを付与してください。
| IAMロール | 設定 |
|---|---|
| ユースケース | EC2 |
| 許可ポリシー | AmazonSSMManagedInstanceCore |
| AmazonSSMDirectoryServiceAccess | |
| AWSMarketplaceMeteringFullAccess |
するとEC2起動後、License Manager上でユーザーの関連付けがされます。
無事アクティブになりました。
まとめ
ざっくりとですが、構築の流れを記載してみました。
AWS MarketplaceからAMIを構築した段階で、ユーザーの関連付けのインスタンス設定ステータスのチェックが走るようで、このチェックが失敗となっても費用は掛かるようです。ステータスがアクティブになったら課金対象に含めてくれたらいいのにと思います。
また、失敗となった場合に再度チェック処理を走らせるには対象インスタンスを再起動すればよいと書いてあった記事もあったんですが、私の場合走ってくれなかったので再度構築しています。(費用が別でまた掛かることに…)

