メールサーバ移行メモ2

先日サーバ移行したときのメモをすっかり上げ忘れていましたので今年中に。
調べているときに過去の自分の記事がとても役に立ちました。

参考にしたサイト
メールサーバ移行メモ
Cyrus IMAPサーバ移転

sendmail

/etc/mail 以下を持ってくる。
/etc/rc.conf に以下を追加する。

sendmail_procname="/usr/local/sbin/sendmail"
sendmail_program=${sendmail_procname}

SpanAssassin

以下を持ってくる。
/usr/local/etc/mail/spamassassin/local.cf
/var/spool/spamassassin (学習用)

最初に sa-update コマンドを忘れずに。

ClamAV

/usr/local/etc/clamd.conf の変更箇所だけ手動で設定。
/usr/local/etc/clamav-milter.conf の変更箇所だけ手動で設定。

最初に freshclam コマンドを忘れずに。

milter-greylist

以下のファイルを持ってくる。
/usr/local/etc/mail/greylist.conf
/var/milter-greylist/greylist.db

milter-regex

/usr/local/etc/milter-regex.conf を持ってくる。

Cyrus-IMAPd

以下を持ってくる。
/usr/local/etc/cyrus.conf
/usr/local/etc/imapd.conf

旧サーバで以下を実行してメールボックス情報を取得する。

# su - cyrus
% ctl_mboxlist -d -f /var/imap/mailboxes.db > /tmp/cyrus_mailboxes.txt

旧サーバから以下のようにメールデータを取得する。

cd /var/spool/imap/user
tar cvf /tmp/cyrus_imapdata.tar .

新サーバでメールボックスを新規に作成し、メールボックス情報をインポートする。

mkdir /var/imap && chown cyrus:cyrus /var/imap
mkdir /var/spool/imap && chown cyrus:cyrus /var/spool/imap

su - cyrus
mkimap
ctl_mboxlist -u < /path/to/cyrus_mailboxes.txt

新サーバでメールデータを展開する。

# mkdir /var/spool/imap/user && chown cyrus:cyrus /var/spool/imap/user
# cd /var/spool/imap/user
# tar xvf /path/to/cyrus_imapdata.tar

各ユーザを再構築する。

# su - cyrus
% reconstruct -r -f user1
% reconstruct -r -f user2

メールボックス情報とデータの不整合チェックを行う。

% ctl_mboxlist -v

証明書持ってくる。

/var/imap/server.pem

旧サーバで sieve データを取得する。

cd /var/imap
tar cvjf /tmp/cyrus_sieve.tar.bz2 sieve

新サーバで sieve データを展開する。

# tar xvjf /path/to/cyrus_sieve.tar.bz2

こんな感じで移行完了。

FreeBSD,technical

Posted by yokky