ExchangeOnlineへのメール移行作業まとめ
社内メールシステムを別メールシステムからMicrosoftのExchangeOnline(ExO)へ移行するプロジェクトを対応しました。
その際のポイントやトラブル事例、注意すべき点などを備忘録としてまとめました。今後のメール移行や同様のプロジェクトに取り組む方に少しでも役立てばと思います。
概要
今回の移行は、XserverからExchangeOnlineへメールデータを完全に移行し、セキュリティ強化を目的としてPPAP対策を同時に行いました。納期は1か月、移行対象は全従業員約200アカウントのメールデータです。また、モバイルデバイス(主にiPhone)からのメール送受信が可能な状態にすることも要件でした。
事前に考慮した点
1. 配布リストと共有メールボックスの使い分け
そもそもの定義はこちらの記事が分かりやすいです。
【Exchange】配布グループと共有メールボックスの使い分け - JBS Tech Blog
今回のプロジェクトでは、以下の観点でどちらを使うか整理しました。
配布リスト:メーリングリストで、受信専用の用途
共有メールボックス:店舗などの代表メールで、受信だけでなく送信もする
2. IMAP移行ツールの特性
データ移行には、ExchangeOnline標準で付属しているIMAP移行ツールを使いました。
24時間ごとにデータを同期する仕様なので、MXレコードの切り替え前後のメールデータが移行漏れしないよう特に注意が必要です。初回同期のみ実施しておき、差分同期はMXレコードを切り替え直後に走らせるようにしました。
また、MXレコードのTTLを3日前ほどに短くしました。ちまたでは、TTLを変更してもDNS伝播時間が短くなるわけではないとの情報もありましたが、おまじないも兼ねて300に変更しました。
3. 移行できないメールのフォロー
データが破損していたり、容量が大きすぎるメールは移行が難しいケースがありました。そのため、従業員には事前に説明し、了承を得た上で作業を進めました。
4. 移行の確認方法
移行が正しく実施できたかを確認するため、XserverとExchangeOnlineの使用メール容量を比較しました。大きな差がなければ、データ移行は概ね成功と判断しました。
移行プロセス
1. 個人アカウント、共有メールボックス、配布リストの作成
Powershellコマンドでやると爆速
参考:Exchange Onlineの共有メールボックスをPowerShellで作成する | LIGLOG INFRA JOURNAL (lig-log.com)
2. データ移行(約2週間)
IMAP移行ツールを使って初回同期を実施
3.共有メールボックスの設定
・Outlook Webでは、共有メールボックスを自身で追加しないといけない。
・共有メールボックスを差出人として使用する場合は、一度そのアドレスで送信しておくと次回以降候補に表示される
→これらは対象者が少なかったので、一時アクセスパスを使って当該ユーザのアカウントを直接操作して実施。
・デフォルトだとタイムゾーンが英語なので、そのままだと受信トレイが英語表記(Inboxなど)
・共有メールボックスのアドレスを差出人にして送信した場合でも、個人のアドレスにしか送信済みアイテムに表示されない。共有メールボックスの送信済みアイテムにも保存したかった
→これらはPowershellで設定変更
参考:共有メールボックスのタイムゾーン設定方法 | yjk365
参考:共有メールボックスから送信したメールを送信済みアイテムに保存する | LIGLOG INFRA JOURNAL (lig-log.com)
4.BCC、差出人を表示する、優先アイテムの非表示設定
Powershellコマンドでやると爆速
Set-MailboxMessageConfiguration -Identity [設定するユーザのUPN] -AlwaysShowBcc $true -AlwaysShowFrom $true -IsFavoritesFolderTreeCollapsed $true
参考:Set-MailboxMessageConfiguration (ExchangePowerShell) | Microsoft Learn
5.TTL変更
3600→900に変更
6.移行実施判定
おおよそのデータが移行できているかの確認
7.DNSレコードの切り替え
SPFレコード、MXレコードを書き換える
後述しますが、SFPレコードを書き間違えてGoogle宛てのメールが送信できず。
8.送信テスト
社内ユーザー間の送受信
社内から社外への送信
社外から社内への受信
9.複合機のメール設定変更
複合機専用のアカウントをひとつつくり、設定
トラブル事例
1. MXレコード切り替え後の旧WEBメールログイン不可
MXレコード切り替え後、旧WEBメールにログインできなくなってしまいました。これはWebメールへのログイン時にMXレコードが正しく登録されているかどうか認証する仕様だそうです。知らずに切り替えてしまいました。
基本的には全てデータ移行できているので問題ないのですが、念のため確認して、メーラーのIMAP経由だと問題ないことを確認しました。
2. 一部のアカウントで移行失敗
一部のアカウントでIMAP移行が失敗しました。緊急対策として、IMAP移行ツールのバッチを個別作成し移行バッチを適用しました。
約10アカウント程度でバッチを作成していましたが、それでも一部は移行不完全になってしまうことがあるみたいです。これは原因が不明瞭でした。
3. SPFレコードの設定ミス
SPFレコードの設定ミスにより、Googleへのメール送信ができなくなりました。「include:xxxx ~all」という記述をいくつか記載してあったのですが、「~all」をそれぞれに記載したことでエラーを起こしていたみたいです。登録するSPFレコードが正しいかどうか、事前にこのサイトで調べておくと幸せになれそうです。
SPF Surveyor - dmarcian
4. 複合機のメール設定
複合機からメールを送信する場合は、複合機用にひとつアカウントを作成して対応しました。
何回やってもうまくいかず・・・情シスSlackの同士へ相談したところ、「Microsoft Entra ID のセキュリティの既定値群ではないか?」とのご指摘をいただき、ビンゴでした。
条件付きアクセスのレガシ認証をブロックするにひっかかっていました。
まとめ
今回のExchangeOnlineへの移行は、セキュリティ強化や運用面の改善に寄与しましたが、移行ツールのクセやレコード切り替え時の注意点を含め、事前の準備やトラブルシューティングが鍵となるプロジェクトでした。
ベテランの皆さまからすると当たり前のことだと思いますが、はじめて対応したこともあり、考慮すべき点があまり考慮できていなかったことが反省点です。
同様の移行を検討している方は、メールデータの移行タイミングや手動対応が必要な部分に特に注意することをお勧めします。
それぞれの事項、もう少し細かく記事に仕様と思います。