Beberapa waktu lalu, saya ada pekerjaan perihal migrasi email server dari Microsoft Exchange ke Zimbra. Proses berjalan lancar sampai export import list akun Exchange ke Zimbra. Selanjutnya pada saat tahapan export import data mailbox, ada beberapa pilihan tools dari Zimbra yang dapat digunakan untuk export import tersebut, seperti ZCS Exchange Migration Wizard, dan Zimbra PST Migration Wizard. Namun kedua tools tersebut setelah digunakan, hasilnya tidak seperti apa yang saya inginkan, dan malah bisa dibilang sangat jauh dari hasil sempurna.
Pertama, tools ZCS Exchange Migration Wizard, hasil export import ke Zimbra, email dengan mode html, body emailnya jadi blank, ditambah tools tersebut sudah deprecated
Kedua, tools Zimbra PST Migration Wizard, untuk menjalankan tools ini dibutuhkan file PST hasil export dari Microsoft Outlook yang sudah terkonfigurasi akun Exchangenya. Dan proses export PST ini bisa dibilang harus dilakukan satu persatu disisi user, sedangkan jika jumlah usernya banyak, lebih dari 1000, tools ini malah jadi merepotkan
Akhirnya opsi terakhir yang dipilih, yaitu menggunakan imapsync. Ada beberapa syarat yang bisa dibilang harus dipenuhi sebelum menjalankan imapsync, diantaranya :
Untungnya imapsync saat ini menyediakan satu parameter yang sangat berguna, yaitu –authuser, artinya dengan parameter tersebut, kita bisa melakukan sinkronisasi mailbox antar kedua server hanya dengan mengetahui password admin dari masing-masing email server.
Namun sebelum menjalankan imapsync, saya mendapat informasi dari beberapa sumber, khususnya dari Microsoftnya langsung, pada Exchange defaultnya akun administrator tidak bisa digunakan sebagai authuser untuk imapsync karena alasan keamanan, bahkan fitur IMAP pada akun administrator statusnya disable dan tidak bisa di enable. Untuk mengatasi masalah tersebut, kita bisa buat satu user baru/jika sudah ada user existing, bisa digunakan lalu berikan hak akses sebagai administrator kepada akun tersebut.
Baca juga : Mengatasi Error 400 Bad Request Setelah Upgrade Zimbra
Jalankan perintah berikut pada Exchange Management Shell
Get-Mailbox -ResultSize Unlimited | Add-MailboxPermission -AccessRights FullAccess -User akun-migrasi Get-MailboxDatabase | Add-ADPermission -User "akun-migrasi" -AccessRights ExtendedRight -ExtendedRights Send-As,Receive-As,ms-Exch-Store-Admin
Note : akun-migrasi merupakan akun biasa yang saya set sebagai administrator menggunakan command diatas, jadi nanti imapsync bisa pakai authuser dari akun-migrasi
Selanjutnya silakan jalankan imapsync, saya biasanya menjalankan imapsync di destination (server Zimbra) dengan beberapa parameter seperti berikut
imapsync --host1 mail.serverlama.com --user1 user1@domain.com --authuser1 akun-migrasi@domain.com --password1 Password_Akun_Migrasi --ssl1 \ --host2 localhost --user2 user1@domain.com --authuser2 admin@domain.com --password2 Password_Admin_Zimbra --ssl2
Perintah diatas dijalankan hanya untuk 1 user saja, bagaimana langsung untuk seluruh user? kita bisa gunakan for untuk looping seluruh akun, jadi seperti berikut
su - zimbra -c "zmprov -l gaa | sort" >> /srv/list-user.txt for i in `cat /srv/list-user.txt`; do imapsync --host1 mail.serverlama.com --user1 $i --authuser1 akun-migrasi@domain.com --password1 Password_Akun_Migrasi --ssl1 \ --host2 localhost --user2 $i --authuser2 admin@domain.com --password2 Password_Admin_Zimbra --ssl2; done
Baca juga : Mengatasi S3QL Error “Backend reports that fs is still mounted elsewhere, aborting”
Tips selanjutnya yaitu, pada user-user Exchange biasanya menu seperti Inbox, Draft, Sent, Trash, terkadang ada beberapa user yang menggunakan bahasa Indonesia sehingga menu tersebut berubah menjadi Kotak Masuk, Konsep, Item Terkirim, Tempat Sampah, sehingga ketika di imapsync, hasil pada email server tujuan, yaitu Zimbra, malah jadi buat Folder menu baru seperti berikut
Untuk mengatasi hal tersebut, kita bisa tambahkan parameter –regextrans2, seperti –regextrans ‘s/Kotak Masuk$/Inbox/’, arti dari regex ini yaitu email yang berada pada folder Kotak Masuk di server lama, akan sinkronisasikan ke folder Inbox pada server baru. Pada imapsync jadinya seperti berikut, saya buat beberapa kemungkinan yang terjadi pada regextrans2
for i in `cat /srv/list-user.txt`; do imapsync --host1 mail.serverlama.com --user1 $i --authuser1 akun-migrasi@domain.com --password1 Password_Akun_Migrasi --ssl1 \ --host2 localhost --user2 $i --authuser2 admin@domain.com --password2 Password_Admin_Zimbra --ssl2 \ --regextrans2 's/Kotak Masuk$/Inbox/' \ --regextrans2 's/Item Terkirim$/Sent/' \ --regextrans2 's/Konsep$/Draft/' \ --regextrans2 's/Sent Items$/Sent/' \ --regextrans2 's/Junk Email$/Junk/' \ --regextrans2 's/Deleted Items$/Trash/' \ --regextrans2 's/Email Sampah$/Trash/' \ --regextrans2 's/Tempat Sampah$/Trash/' done
Tambahan, apabila ingin ditambahkan option date range, jadi tidak semua data di migrasi, misal hanya data dari tanggal sekian hingga sekian, bisa pakai option –search “SENTSINCE 1-Jun-2020”, –search “SENTBEFORE 31-Jun-2020”, atau penggabungan keduanya, –search “SENTSINCE 1-Jun-2020 SENTBEFORE 31-Jun-2020”, berikut contohnya seperti berikut
for i in `cat /srv/list-user.txt`; do imapsync --host1 mail.serverlama.com --user1 $i --authuser1 akun-migrasi@domain.com --password1 Password_Akun_Migrasi --ssl1 \ --host2 localhost --user2 $i --authuser2 admin@domain.com --password2 Password_Admin_Zimbra --ssl2 \ --regextrans2 's/Kotak Masuk$/Inbox/' \ --regextrans2 's/Item Terkirim$/Sent/' \ --regextrans2 's/Konsep$/Draft/' \ --regextrans2 's/Sent Items$/Sent/' \ --regextrans2 's/Junk Email$/Junk/' \ --regextrans2 's/Deleted Items$/Trash/' \ --regextrans2 's/Email Sampah$/Trash/' \ --regextrans2 's/Tempat Sampah$/Trash/' --search "SENTSINCE 1-Jun-2020" done
Mungkin cukup sekian untuk tips kali ini, semoga bermanfaat
Rizky Pratama. Tinggal di Bekasi, Jawa Barat. Seorang IT di salah satu perusahaan IT. Pengguna Mac, Linux dan Windows
Selain sebagai penulis di blog ini, saya juga penulis di blog saya yang lain, yaitu https://pratama.biz.id
Pada bulan April 2024 lalu, Ubuntu telah release versi terbaru yaitu Ubuntu 24.04 LTS, sehingga…
Ngga nyangka akhirnya saya bisa login kembali ke blog saya yang sudah berdebu ini, kali…
Beberapa waktu lalu, Excellent mendapatkan project migrasi Zimbra dari versi Open Source Ke Zimbra Network…
Bulan Oktober 2022 lalu, Apple resmi release MacOS terbaru mereka, yaitu MacOS Ventura. Beberapa fitur…
Tidak terasa sudah cukup lama saya tidak update tulisan pada blog ini lagi, akhirnya kali…
Tahun baru 2022 telah tiba, tidak terasa waktu berjalan begitu cepat, banyak cerita dan kenangan…