Postfix+DovecotサーバからGSuite(Gmail)へ移行する
Pocket

仕事で、Postfix+Dovecotで構築されたメールサーバからGSuite(旧GoogleApps)のGmailにメールサーバの移行をしてるので、その際の内容を備忘として残しておく。
既存メールサーバ⇒GSuiteへの移行は、基本的には以下の流れで行うようだ。

  1. GSuiteにドメインの登録
  2. 既存のメールユーザ作成(ふつうにユーザ作成 or AD連携の実施)
  3. 旧メールサーバのメールがGSuiteに転送されるよう二重配信の設定をしておく
    (プライマリメールサーバは旧メールサーバで、GSuiteにメールが転送される)
  4. メール利用ユーザへの切り替え周知(GSuiteをサーバとして設定するように依頼)
  5. DNSでMXレコードの切り替え(メールサーバの向き先変更)
    ※DNSの変更反映に、大体1~2日くらい様子を見る
  6. 既存のメールサーバからIMAP経由でメールデータの移行
  7. 既存メールサーバの停止
Sponsored Links

とりあえず、1~4についてはそんなに引っかかる箇所ではないだろう。
流れに沿って設定してやればいいだけだ。ただ、2(メールユーザ作成)については既存のメールアドレスの棚卸し(エイリアス含む)が入るのでちょっと面倒そう。
GSuiteだとユーザ1名につきメールエイリアスは30個までしか設定できないようなので、移行時にその辺の調整も必要になりそうだ。

3については、こちらを元に対象ドメインのドメインエイリアスをGSuite上で作成してMXレコードの登録を実施(この時点で、対象ドメインは旧メールサーバを向いている。ドメインエイリアスはGoogleAppsを向ける状態)。
で、Postfix側で「/etc/postfix/main.cf」に「virtual_alias_maps=regexp:/etc/postfix/aliases.reg」の記述を追加し、以下の正規表現を記述してメールをPostfixサーバ(旧メールサーバ)・GSuiteそれぞれに配送するようにする。

●/etc/postfix/aliases.reg

/^(.*)@ドメイン名$/ ${1}@ドメインエイリアス名,${1}

 

とりあえず、この段階で全メールが既存のメールサーバ・GSuite共に見れる状態になる。
各利用者に周知してメールサーバを移行して貰えばいいだろう。

問題は5の既存のメールサーバからのIMAP経由でのメール移行だ。
作業自体は簡単で、「管理コンソール」にある「データの移行」からメールを移行させることができる。

20161127_152233000000

 

ただし、既存のメールサーバ側で以下の設定がなされていることが前提。

  • GSuiteからIMAP接続できること(Firewallとかで制限されてない)
  • SSLでアクセスできること(パケット裸で使ってると接続できない(今時ないと思うが))
  • ログインにユーザ認証でメールアドレスが使えること(ユーザ名のみの認証方式だとアクセスできない)

 

ログイン時にユーザ名およびメールアドレスを指定できるようにする場合は、既存メールサーバ側の「/etc/dovecot/conf.d/10-auth.conf」で以下の設定を記述することで、ユーザ名orメールアドレスで認証が行えるようになる。

●/etc/dovecot/conf.d/10-auth.conf

auth_username_format = %n

 

ちゃんと設定ができたら、「データの移行」でメールを選択し、対象のメールアドレスのIMAP認証情報を指定してメールデータを移行してやればよい。
以下、画面の一例。

20161127_155814000000

20161127_155930000000

20161127_155940000000

 

あとは、データの移行>メールの画面で移行元・移行先の情報を記述するだけだ。
個人のアカウントでしかメールを受信できないように設定している場合は、別途閲覧可能なアカウントを作成するか旧メールアドレスのアカウントのパスワードを変更してしまう、もしくは人数が少なければ各自に入力してもらうといいだろう。

20161127_160529000000

 

Pocket

Written by blacknon

インフラ系のSE。一時期はプログラマ。 仮想化とオープンソースに興味あり。一日中寝てたい今日このごろ。 スペインとかで働きたいなぁ…(シエスタがあるので)

Leave a Comment

メールアドレスが公開されることはありません。