🗂

Google Cloud Identity Freeとさくらのメールボックスを組合せる

2025/01/03に公開

Google CloudのIDaaSにCloud Identityを利用する

Google Cloudにおいて組織を作成してリソースを管理する場合、Google Workspaceを利用する方法とCloud Identityを利用する方法がある。Google Workspaceを利用すればGmailなどのサービスも利用できる一方で、それが不要な場合は無料or安価なCloud Identityが選択できる。

https://cloud.google.com/resource-manager/docs/creating-managing-organization
https://support.google.com/cloudidentity/answer/7319251?hl=ja

実際、Google Cloudにおいて複数のプロジェクトを管理したい目的で組織設定したい自分の目的においてはGoogle Workspaceは過剰かつアカウント毎に費用が発生するのは避けたい(目的や権限に応じてアカウントを使い分けたいので)。

Cloud Identityでもメールは利用したい

独自ドメインexample.comをGogle Cloud Identityで設定した場合はuser@example.comのような形でユーザが発行できるが、Google Workspaceを利用していなければメールは利用できない。user@example.comのような形式だとメールのように見えるが、単なるIDなのかメール通知まで含んでいるのかは見極める必要がある。ただし、多くのケースでメールとしても動作することが期待されているようなので、Google Workspaceを利用しない場合でもメールとしては動作するようにしたい。

さくらのメールボックスを利用する

GoogleのIDaaSを利用したい、かつメールも利用したいだとGoogle Workspaceが楽ではあるが、安価に済ませたいので別サービスを利用する。具体的にはさくらインターネットが提供するさくらのメールボックスサービスを利用する。これであれば月額約100円で済ませることができる。

https://rs.sakura.ad.jp/mail/

DNSはCloudflare DNSで管理しているので、IDaaSはGoogle、DNSはCloudflare、メールはさくらインターネットという構成になる。IDaaSやDNSでは費用は掛からないのでメールサーバ代だけで運用できる(ドメイン利用料は別)。

メール設定

メールの送受信を可能にするためにはさくらのメールボックスでドメインを登録すること、Cloudflare DNSでメール関連のレコードを設定することが必要。Google側では特に対応は不要。

さくらのメールボックスではドメイン登録より"他社で取得したドメインを移管せずに使う"にて設定する。ネームサーバの変更も求められるがこれは実施しなくても問題なさそう。

ネームサーバを変更できない場合はサブドメインを追加する方法が案内されているが、その場合は当初の目的であるCloud IdentityのIDと一致するメールアドレスを発行できず、user@mail.example.comのような形になる。Google Cloud上にてメールアドレスをドメインとは別で mail.example.comに設定することは可能なようだったが手間が掛かるし、メールなのかIDなのか適宜判断が必要になる。

逆にドメインを登録しないと後段のDNSレコードを設定しても 550 5.7.1 ... Relaying denied. Proper authentication required. のようなエラーが返ってきてメールを受信してくれなくなる。これはサブドメインをさくらのメールボックスに登録してDNSでexample.com からサブドメイン宛てに転送するようにしても同様。

Cloudflare DNSには、さくらのメールボックスにドメイン登録したときに設定されるMXレコードおよびTXTレコードを登録する。具体的には以下のような2種類のレコードになるはず(xxxは登録者によって異なる値)。

example.com MX  10 xxx.sakura.ne.jp
example.com TXT "v=spf1 a:xxx.sakura.ne.jp mx ~all"

その他

Cloudflare DNSはterraformでレコードを制御できるが、さくらのメールボックスはできなさそう。このためIDaaSでIDを発行する度に、さくらのメールボックス側でもメールアドレス作成操作が必要。

Cloudflareにもメール関連機能としてEmail Routingなどがある。しかしこの場合はMXレコードをすべてCloudflare向けに設定する必要があり、さくらのメールボックス向けの設定と共存させることができない。このためCloudflare側でルーティングまわりを制御することは難しそう。

https://developers.cloudflare.com/email-routing/

参考

似たような取り組みは実施されている。

https://qiita.com/ta_endo/items/a075eac0f5c3c003e385

https://zenn.dev/hyouhyan/articles/c6ce741515a69e

Discussion