Amazon WorkMailの設定

 本記事では、AWS WorkMailという企業向けのEメール・カレンダーのマネージドサービスを利用し、AWS Route53で新規に取得したドメインでメール送受信を行うまでの設定を解説します。
 企業向けのサービスですが個人でも利用可能で、1ユーザ当たり50GBのメールボックスが付いて月額4USDとのことで使いやすいと思います。ユーザはAWS管理コンソールから作成することもできますが、Active DirectoryやAWS Simple ADと連携してユーザを取り込むこともできるようです。
 注意点としては利用できるリージョンに制限があります。利用可能なリージョンは2023年3月現在で「北バージニア」「オレゴン」「アイルランド」の3つとなります。

 また、AWS Lightsailで利用しているドメインではAWS WorkMail設定ができなかったので、今回の記事ではまた新たにAWS Route53でドメイン取得しています。AWS Route53でのドメイン取得はこちらの記事を参考にしていただければと思います。


◆ Amazon WorkMail設定手順 (2023年3月時点)

1.
AWSマネジメントコンソールにアクセスします。リージョンをAmazon WorkMailを利用可能なリージョン(2023年3月現在で「北バージニア」「オレゴン」「アイルランド」のいずれか)を選択してから、Amazon WorkMailサービスを検索してクリックします。

2.
「Create organization」をクリックします。

3.
今回は新規にドメインを取得して設定を行うので、「New Route 53 domain」を選択します。選択をすると画面下部にメッセージが表示されるので、メッセージ中の「Amazon Route 53 console」リンクをクリックします。

4.
Route53のダッシュボードで新規にドメインを取得します。ドメイン取得に関する操作はこちらの記事をご参照ください。今回は .netドメイン を取得しています。

5.
Route53でドメインを取得しました。

6.
本記事手順No.3の画面まで戻ります。こちらの画面で「Existing Route 53 domain」を選択し、『Route 53 hosted zone』にて今回取得したドメインをプルダウンで選択します。

7.
画面を下にスクロールし、『Alias』欄に任意の名前を入力します。追加設定の確認のため、『Advanced settings』をクリックしてみます。

8.
 User directoryについて、ユーザーをWorkMailで管理するか、既存のActive Directoryと連携するかを選択できるようです。ここでは「Create Amazon WorkMail directory」を選択します。
 また暗号化キーについて、Amazonのマネージドキーを利用するか、ユーザーで用意したキーを利用するかを選択できるようです。ここでは「Use Amazon WorkMail managed key」を選択します。
 その後「Create organization」をクリックします。

9.
作成したOrganizationのエイリアス名をクリックします。

10.
画面上部に表示されたメッセージ中の「Manage domains」ボタンをクリックします。

11.
今回取得したドメイン名のリンクをクリックします。

12.
『Improved security』欄にて2つのTXTレコードのStatusが「Missing」となっています。画面上部の「Update all in Route 53」をクリックします。

13.
画面上部に緑色のメッセージが表示されたら更新ボタンをクリックします。その後、『Improved security』欄にて2つのTXTレコードのStatusが「Missing」から「Verified」に更新されていることを確認します。
画面を下にスクロールし、『Improved email delivery』欄のメッセージ中の「Amazon SES」リンクをクリックします。

14.
Amazon SESの画面に遷移するので、画面を下にスクロールします。

15.
『カスタム MAIL FROM ドメイン』欄の「編集」ボタンをクリックします。

16.
「カスタム MAIL FROM ドメインの使用」にチェックを入れ、『MAIL FROM ドメイン』に任意の値を入力します。ここでは”kageroulab.net”に対して”mail.kageroulab.net”というサブドメインを指定しています。また『MX障害時の動作』を選択します。ここでは「デフォルトの MAIL FROM ドメインの使用」を選択しました。設定後、「変更の保存」ボタンをクリックします。

17.
画面上部に「正常に編集されました」という内容のメッセージが表示されることを確認し、画面を下にスクロールします。

18.
『DNSレコードの発行』欄にMXレコードとTXTレコードが表示されています。これをRoute53に追加するため、レコード内容をCSVファイルとして保存します。「.csvレコードセットのダウンロード」リンクをクリックします。

19.
Route53の管理画面に移動します。左メニューで『ホストゾーン』を選択し、ホストゾーン名で今回送信元とするドメイン名をクリックします。

20.
「レコードを作成」ボタンをクリックします。

21.
本手順No.18で確認したレコードを追加していきます。まずは”mail.kageroulab.net”に対するMXレコードを追加します。TTLやルーティングポリシーはデフォルト地としています。編集したら「別のレコードを追加」ボタンをクリックします。

22.
続いて本手順No.18で確認した”mail.kageroulab.net”のTXTレコードを追加します。こちらもTTLとルーティングポリシーはデフォルトです。必要な値を入力したら「レコードを作成」ボタンをクリックします。

23.
レコードが正常に作成された旨のメッセージが表示されることを確認します。

24.
Amazon SESの管理画面に遷移します。左メニューで『検証済みID』を選択し、今回送信元ドメインとして取得した独自ドメイン名のリンクをクリックします。

25.
画面を下にスクロールし、MAIL FROM 設定が「成功」であることを確認します。

26.
Amazon WorkMailの管理画面に移動します。No.13の画面では『Improved email delivery』の文字が赤色でしたが、緑色に変わっていることを確認します。

27.
左メニューで『Users』をクリックし、「Create user」ボタンをクリックします。

28.
『User name』『Display name』を入力します。対象ユーザーが利用するメールアドレスを『Email address』欄に設定します。『Password』を入力し、「Create user」ボタンをクリックします。

29.
ユーザーの作成が成功した旨のメッセージが表示されることを確認します。

30.
『Organization』メニューに移動し、画面下部の『User login』のAmazon WorkMail web applicationのURLをクリックします。

31.
ユーザー名(メールアドレスではありません)とパスワードを入力して「サインイン」をクリックします。

32.
受信メールは『Inbox』に入ってきます。他のメールアドレスから今回設定したメールアドレスに対してメールを送信してみましょう。

33.
メール送信は『New item』>『New email』をクリックします。

34.
送信先メールアドレス、Subject、本文を入力し、「Send」をクリックして正常に送信されれば成功です。お疲れさまでした。

AWS LightsailでWordPress起動 (3:Lightsail用CDN設定、SSL設定、Route53設定変更)

 本記事は、WordPressが設定されたLightsailにContent Delivery Network(CDN)を設定し、そこにSSL証明書を追加、Route53によるドメイン名の名前解決先をCDNに変更します。

 今まで行った内容は以下の通りです。
LightsailでWordPressの起動からIPアドレスでのアクセス
Route53で新規.comドメインの取得
Route53で取得した.comドメインをLightsailに割り当て

 SSLを設定するにはApplication Load BalancerやAWS CloudFrontが必要になりますが、今回はLightsail用CDNを利用します。Lightsail用CDNはCloudFrontと異なりAWS WAFを有効化できないようなので、AWS WAFによるセキュリティ対策を行いたい場合はCloudFrontを設定いただければと思います(そのうちやりたい)。

※ 設定実施から記事化まで時間を空けてしまったので手順がうろ覚えの部分がございます。ご了承ください。


◆ Lightsail用CDN・SSL設定 (2023年2月時点)

1.
AWS Lightsail用管理コンソールを開きます。AWSマネジメントコンソールから「Lightsail」サービスを選択すると本ページにアクセスできます。
「Networking」をクリックし、「Create distribution」をクリックします。

2.
CDNの配信元となるオリジナルの選択を、「Choose an origin」プルダウンをクリックして選択します。

3.
WordPressの設定されたLightsailインスタンスを選択すると、WordPress向けのキャッシュ配信設定があるようで、これを有効化するのに「Yes, apply」をクリックします。

4.
Lightsailインスタンスを選択します。Lightsailインスタンスに固定IPアドレスを割り当てていた場合は、こちらもoriginの一覧に表示されます。

5.
No.3にてWordPress向けのキャッシュ配信を「Yes, apply」としたので、こちらで「Best for WordPress」になっているようです。

6.
CDNサービスのプランを選択します。月当たりのデータ転送量の上限に応じた金額となっており、超過すると別途追加料金が発生します。ここでは50GB/月(初年度無料、次年度以降 $2.50 USD/月)を選択します。

7.
CDNサービスの管理コンソール上での名前を入力し、「Create distribution」をクリックします。

8.
作成したLightsail用CDNに対してSSLの設定を行います。作成したLightsail用CDNのページにて「Custom domains」をクリックします。

9.
画面を下にスクロールし、「I understand, continue」をクリックします。

10.
「Create certificate」をクリックします。

11.
作成するSSL証明書のLightsail管理コンソール上での名前を入力し、「Continue」をクリックします。

12.
Route53で予め取得したドメインを入力します。ここでは「kageroulab.com」となります。またwww付きの「www.kageroulab.com」も追加し、「Create certificate」をクリックします。

13.
「Continue」をクリックします。

14.
「Attach certificate(1 available)」をクリックします。その下にて、作成したSSL証明書を選択し、「Attach」をクリックします。

15.
「I understand」をクリックします。

16.
AWS Lightsail管理コンソールのトップから「Domains & DNS」をクリックし、今回編集するDNS zoneの名前リンクをクリックします。

17.
「Assignments」をクリックします。
以前の記事で行った、ドメイン名にWordPressのLightsailインスタンスに割り当てた固定IPアドレスが紐づいているので、これを削除します。その後「+ Add assignment」をクリックします。

18.
ドメイン名について取得したドメイン(サブドメインを含まない)を選択し、リソースの指定で作成したLightsail用CDNを選択し、「Save」をクリックします。

19.
Domain assignmentsの一覧に、設定したメインのドメインと作成したLightsail用CDNが紐づいた行が表示されることを確認します。

20.
画面を下にスクロールし、「+ Add assignment」をクリックして、サブドメインを選択、「www.{取得したドメイン}」を指定してLightsail用CDNを紐づけに指定し、「Assign」をクリックします。

21.
メインのドメインとLightsail用CDNの紐づけの下に、「www.{ドメイン名}」とLightsail用CDNの紐づけの行が追加されたことを確認します。

22.
AWS Lightsail管理コンソールのトップに戻り、「Networking」をクリックします。作成したLightsail用CDNの名前リンクをクリックします。

23.
「Custom domains」をクリックします。

24.
画面を下にスクロールし、作成したSSL証明書の「Validation details」を開きます。メインドメインと「www.{ドメイン名}」のそれぞれについて、『Name』『Value』をコピーし、メモ帳にペーストしておきます。後ほどの手順でCNAMEレコードの登録に利用します。

25.
AWS Lightsail管理コンソールのトップに戻り、「Domains & DNS」をクリックします。DNS zonesの、今回設定したドメイン名リンクをクリックします。

26.
「DNS records」をクリックし、「+ Add record」をクリックします。

27.
追加するレコードに「CNAME record」を選択し、No.24で確認したメインドメインの『Name』『Value』の組み合わせをレコードとして登録します。各テキストボックスに入力後、「Save」をクリックします。

28.
No.27と同様に、「www.{ドメイン名}」についての『Name』『Value』をCNAMEレコードとして登録します。

29.
最終的に、メインドメインと「www.{ドメイン名}」それぞれに対するAレコードが1つずつと、CNAMEレコードが1つずつの計4レコードが登録されたことを確認します。

これでAWS Lightsail管理コンソール上の設定は完了です、お疲れさまでした。
ただしWordPress側でSSL通信に対応するための設定が別途必要となりますので、そちらは次回の記事で解説いたします。

AWS Route53でドメイン取得

 本記事では、AWS Route53にて新規の.comドメインを取得します。

 AWS Route53はAWSが提供するDNSサービスです。ドメインの取得からルーティングの設定、ルーティング先のサービスの正常性確認を行うことができるサービスです。

 こちらの記事にてAWS LightsailでWordPressを公開し、IPアドレスによるアクセスを行っています。このWordPressに対してドメイン名を割り当てる目的で取得しています。


◆ AWS Route53でのドメイン取得手順 (2023年2月時点)

1.
AWSマネジメントコンソールの検索ボックスで「route 53」と検索し、表示される「Route 53」をクリックします。

2.
「ドメインの登録」をクリックします。

3.
取得したいドメイン名を入力、トップレベルドメインを選択し、「チェック」をクリックします。

4.
希望したドメインが取得可能であれば、ステータス欄に利用可能と表示されます。また1年あたりの料金も表示されます。料金はトップレベルドメインによって変わります。取得したい文字列によっても変わるかもしれません。取得したいドメインについて「カートに入れる」をクリックします。

5.
画面右側にカートの内容が表示されます。年数を伸ばしたい場合はこちらで変更できますが、のちの画面で自動更新の有効化もできるので、ここでは1年としました。

6.
画面を下にスクロールし、「続行」をクリックします。

7.
ドメイン登録者の連絡先を入力します。最下部の『プライバシーの保護』については、個人でドメインを取得する場合は「有効化」をした方が良いでしょう。これを行わないとこちらの画面で入力した連絡先や住所がWhois(IPアドレスやドメインの登録者の情報を参照できるサービス)で公開されてしまいます。「有効化」をすることで、Whoisで公開される情報がAWSの情報となり、登録者の住所や電話番号などを晒すことはなくなります。
入力後、「続行」をクリックします。

8.
3つの連絡先について「プライバシー保護済み」となっていることを確認します。

9.
画面を下にスクロールし、ドメインの自動更新について「有効化」または「無効化」を選択します。ここでは「有効化」を選択しました。

10.
『AWSドメイン名の登録契約を読んで同意します』のチェックを入れ、「注文を完了」をクリックします。

11.
『注文が正常に送信されました』のメッセージが表示されたら「閉じる」をクリックします。

12.
「ドメインに移動」をクリックします。

13.
ドメインの登録の最中は以下のような画面になります。しばらくすると画面が切り替わります。

14.
登録が完了するとドメイン名欄がリンクになるので、リンクをクリックします。

15.
ドメイン登録者のメールアドレスが正常であるかの確認が未確認である場合は「ドメインは停止している可能性があります」のメッセージが表示されます。この場合はドメイン登録者の連絡先で指定したメールアドレスに確認メールが届いているはずなので確認します。

16.
以下のような内容のメールが届きます。記載されている確認用URLをクリックします。

17.
確認URLを開いて以下のような画面が表示されれば確認は成功です。

18.
再度手順No.15の画面を開くと、ドメインは停止している旨のメッセージは表示されなくなっているはずです。こちらの画面で『移管のロック』の「有効化」をクリックします。

19.
移管のロックのリクエストが送信された旨のメッセージが表示されれば成功です。

20.
『移管のロック』欄が「有効」となっていれば、ドメイン移管ができないようにロックされた状態となっています。

21.
Whoisでドメイン登録者の連絡先がAWSの情報で秘匿されているか確認します。
ドメイン/IPアドレス サーチ 【whois情報検索】 (cman.jp) にアクセスします。
『グローバルIPアドレスまたはドメイン』に取得したドメインを入力し、制約事項の確認チェックを入れ「管理情報照会実行」をクリックします。

22.
確認結果内の『情報公開URL(Whois)』をクリックします。こちらは取得したドメインのトップレベルドメインによって変わりますので、この場合は「.com」ドメインの例となります。

23.
移動した情報公開URLにて再度ドメイン名を入力して検索を行います。

24.
検索結果で表示されるドメイン登録者の連絡先等の情報として、AWSの情報が表示されていることを確認します。これでドメインの取得・確認は完了です。お疲れさまでした!
次回は取得したドメインをAWS Lightsailに紐づける手順を投稿予定です。