Apakah anda menggunakan mail server? Baik itu windows atau linux based, kita sebenarnya bisa memindahkan setiap konten email, mengkonversinya dan memindahkannya ke mail server tujuan tanpa user tahu bahwa sebenarnya mail servernya telah berganti.
Prosesnya cukup singkat, pada centos versi 6 (as root):
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2- 2.el6.rf.x86_64.rpm
rpm -Uvh
yum install epel-release
yum install imapsync
setelah itu tunggu hingga 3 menit dan imapsync akan terinstall pada Centos. Kemudian cara penggunaannya adalah sebagai berikut:
imapsync –hostA serverA.example.com –userA user@domainA.com –passwordA 1234 –hostB serverB.example.com –userB user@domainB.com –passwordB ABC
tapi, tiap mail server mungkin saja memiliki kapabilitas yang berbeda beda sehingga membutuhkan extra command. Gunakan imapsync–help untuk command lebih lanjut.
Pada contoh command diatas, kita akan migrasi akun IMAP dari satu mailbox (user@domain1.com) ke mailbox yang lain (user@domain2.com). Namun jika kita ingin migrasi dengan nama yang sama, juga memungkinkan.
Kekurangan metode diatas adalah kita harus mengetahui username dan password tiap account yang akan di migrasikan satu-satu, bagaimana jika account yang akan dimigrasikan ada 30+?
Solusinya adalah dengan menggunakan extra command–authuser yang mana kita bisa memindahkan semua user dalam satu mailbox user dengan menggunakan satu username dan password dari admin yang bersangkutan tanpa harus mengetahui semua username dan password semua user. Kemudian command tersebut dimasukan kedalan satu file bash script.
Namun sayangnya tidak semua mail server compatible dengan opsi–authuser ini, namun yang saya gunakan disini adalah Zimbra mail server.
Untuk lebih jelasnya berikut contoh script proses migrasinya (mail-sync.sh)
#!/bin/sh
clear
LOCATION=`pwd`
USER_LIST=”accounts.txt”
USERS=`cat $LOCATION/$USER_LIST`
echo “Loop for all users”
for ACCOUNT in $USERS; do
account1=`echo $ACCOUNT | awk -F@ ‘{print $1}’`;
account2=`echo $ACCOUNT | cut -d ‘.’ -f1`
#proses migrasi email
imapsync –hostA 192.168.70.1 –userA $ACCOUNT –authuserA administrator –passwordA passwordadminA –authmechA PLAIN –hostB 192.168.70.2 –userB $ACCOUNT –authuserB administratorB –passwordB passwordadminB
echo “”
read presskey
done
echo “Proses sinkronisasi email selesai”
Pada contoh script proses migrasi diatas kita butuh list semua user yang ada di mailbox dengan menggunakan perintah berikut bisa di generate (as zimbra user):
zmprov –l gaa > /home/user1/accounts.txt
kemudian pada bagian proses migrasinya kita hanya butuh 2 username dan password account admin dari tiap-tiap mailbox tanpa harus mengetahui detail user account biasa.
Jadi imapsync merupakan solusi untuk migrasi IMAP acount, yang mana dapat menyalin data dari mailbox satu ke mailbox lain, dan juga bisa dilakukan dengan incremental dan recursive ke setiap hirarki folder mailbox anda. Namun kekurangannya adalah imapsync tidak bisa migrasi contacts dan calender yang telah anda set sebelumnya. Namun jika anda butuh untuk solusi itu, bisa menggunakan solusi dari Zextras suite apabila anda menggunakan Zimbra mail sever. Sekian tutorial sinkronisasi antar mail server menggunakan Imapsync, semoga bermanfaat.