Skip to main content

Migrasi Mail Account Zimbra

Untuk melakukan migrasi mail Zimbra, kesulitan pertama adalah memindahkan user ke server baru tanpa harus merubah password.  Masalahnya adalah kita tidak bisa langsung mengekstrak password dari sistem Zimbra.  Artinya untuk menampilkan userPassword dengan getAccount (ga) tidak akan kita dapatkan password yang bisa kita simpan untuk kita install di server baru.


zimbra@mail:~#zmprov ga sidoel@domain.co.id userPassword
# name sidoel@domain.co.id
userPassword:  VALUE-BLOCKED


Zimba, secara default, menggunakan internal LDAP untuk menjalan fungsi authentication.  Dan oleh karena itu, Zimbra menyediakan alternatif untuk berinteraksi dengan LDAP saat menggunakan zmprov dengan option 'l' yang disebutkan dalam 'help' nya sebagai 'provision via LDAP instead of SOAP'.
Baiklah, kita coba untuk menggunakan option '-l' untuk menggunakan LDAP.

zimbra@mail:~#zmprov -l ga sidoel@domain.co.id userPassword
# name sidoel@domain.co.id
userPassword:  {SSHA}QASTbMtzKr4fmlIytyOr28p4wBSieYmo

Sippp!
Sekarang bagaimana untuk mendapatkan seluruh account dan password?
zmaccts adalah internal tools dari zimbra yang digunakan untuk menampiklan seluruh account yang terdaftar di mail system zimbra baik yang aktif maupun tidak dalam urutan ke samping account,status,created, dan last logon. Karena informasi yang ditampilkan bercampur dengan informasi lain, kita bisa grep untuk yang hanya mengandung '@'.  Sementara karena account ditampilkan pada urutan pertama kita bisa menggunakan 'awk' untuk hanyak mencetak kolom pertama saja dengan awk '{print $1}'.  Perintah lengkapnya:

zimbra@mail:~#zmaccts

account                                    status          created                   last logon
--------------------------------------     ------------    ---------------------     --------------------------
tolo@domain.co.id                          active          11/01/13 14:00            11/20/13 18:00
tole@domain.co.id                          active          11/01/13 14:21            11/18/13  07:01
tono@domain.co.id                          closed          12/01/13 12:02            11/15/13  08:19
toni@domain.co.id                          active          12/01/13 12:15            never
dst....
zimbra@mail:~#zmaccts | grep @ | awk '{print $1}'
tolo@domain.co.id
tole@domain.co.id
tono@domain.co.id
toni@domain.co.id

dst....
Sipp lagi....
Nah, sekarang, untuk memigrasi account, cara yang paling mudah adalah membentuk batch file pembentukan account berdasar informasi dari server lama untuk kemudian dijalankan di server baru.
Pembentukan account masih menggunakan zmprov.  Oleh, karena kita menghendaki bahwa semua account mempunyai password yang sama maka setelah kita mengekstrak password dengan menggunakan LDAP, maka dalam menginstall account ke server baru juga harus menggunakan LDAP. 

zimbra@mail:~#zmprov -l ca sidoel@domain.co.id {SSHA}QASTbMtzKr4fmlIytyOr28p4wBSieYmo

Perintah di atas bisa dilengkapi dengan option-option tambahan

zimbra@mail:~#zmprov -l ca sidoel@domain.co.id {SSHA}QASTbMtzKr4fmlIytyOr28p4wBSieYmo displayName "Si Doel Gelo"
Option-option tambahan bisa didapat dari server lama dengan menggunakan zmprov dengan syntax yang sama dengan ketika kita mengekstrak password.
Misal, untuk mengetahui displayName
zimbra@mail:~#zmprov ga tolo@collega.co.id displayName
# name tolo@collega.co.id
displayName: Kacang Tolo

Sekali lagi, sipppp!!!
Setelah kita bisa mengambil beberapa informasi yang kita butuhkan untuk pembentukan account di server baru, kita bisa susun script pembentukan batch statement dengan kontent sebagai berikut.
#!/bin/bash
#Berikut adalah script yang digunakan untuk menysusun batch statement yang akan
#dijalankan di server baru
#bisa script ini dijalankan maka kita akan mendapatkan file existingAcc.sh yang bisa kita jalankan di server
#baru untuk membentuk account-account yang sama.
if [ -f existingAcc.sh ]; then
rm -f existingAcc.sh;
fi
touch existingAcc.sh;
echo "echo Installasi existing Account" > existingAcc.sh;
for i in `zmaccts | grep "@" | grep "active" | awk '{print $1}'`;do
 zmprov -l ga $i userPassword displayName zimbraAccountStatus > /tmp/zimbraAccount.txt;
    shLine1="";
    shLine2="";
    shLine3="";
    while read attr;do
      case $attr in
         userPassword*) export shLine1=`echo $attr | sed 's/userPassword: //'`;;
         displayName*) export shLine2=`echo $attr | sed 's/displayName: //'`;;
         zimbraAccountStatus*) export shLine3=`echo $attr | sed 's/zimbraAccountStatus: //'`;;
         *);;
     esac
    done < /tmp/zimbraAccount.txt
    echo "Extracting account $i and write into batch file";
    echo "zmprov -l ca $i $shLine1 displayName $shLine2 zimbraAccountStatus $shLine3" >>existingAcc.sh;
done
chmod +x existingAcc.sh;
Selamat mencoba......

Popular posts from this blog

Tentang Ultraman; Pahlawan Jepang Yang Mendunia, Salah Satu Teman Masa Kecil

Google Doodle Ultraman Pagi ini, ada kejutan yang bikin saya tersenyum. Google Doodle, hari ini temanya adalah ulang tahun Eiji Tsuburaya  sang pereka tokoh Ultraman atau dalam lidah Jepang disebut Urotoraman, tayang pertama pada 7 Juli 1966 di TBS (Tokyo Broadcasting System).  Urotoraman atau Ultraman adalah Tokusatsu  atau SciFi, seorang pahlawan super yang berukuran rasaksa. Bila beberapa halaman wiki mengatakan bahwa ide pahlawan super berukuran raksasa adalah ide aseli Tsuburaya, bagi saya itu bukan aseli. Mungkin di Jepun sono, ide aseli. Namun di Indonesia raya nan kaya dan tercinta ini, itu bukan ide aseli.  Banyak tokoh pewayangan kita seperti Yudistira, Puntadewa, bahkan yang paing fenomenal adalah Prabu Kreshna yang mampu melakukan tiwikrama , alias berubah menjadi raksasa.  Meskipun itu terjadi ketika yang melakukan sedang murka.  Jadi Ultraman adalah bentuk Tiwikrama dari pahlawan Jepang.  Meskipun begitu dan di luar semua i...

Kerang Penghasil Mutiara Air Tawar

Kerang mutiara air tawar adalah kerang penghasil butir-butir mutiara air tawar, kerang yang habitat hidupnya di Perairan Tawar (Non Laut), kerang jenis ini memiliki nama ilmiah Margatifera margatifera, salah satu jenis species yang terancam punah, jenis moluska dan termasuk ke dalam Family Margaritiferidae . Jenis species kerang lainnya yang dapat menghasilkan butir mutiara air tawar adalah Hyriopsis dan Amblema , habitat asli penyebarannya di Wilayah Asia dan Amerika Utara, kedua jenis species tersebut memiliki keterkaitan dengan family Unionidae . Ciri-cirinya ialah memiliki cangkang nacre yang tebal, nacre adalah istilah dalam kekerangan yang artinya induk/ibu dalam lapisan mutiara (Mother of Pearl). Kerang mutiara jenis ini mampu menghasilkan butir mutiara yang indah dan berkualitas, dan mampu menghasilkan 5 hingga belasan butir mutiara per ekor kerang. Kerang mutiara air tawar Ia memiliki 2 (dua) cangkang yang simetris dan  engsel yang dapat membuka dan menutup u...

Bagaimana Menginstall Snort dengan Barnyard2 dan Snorby

Mas....! Apa? Nuwun sewu, Mas! Saya udah coba install Snort dan Suricata. Tapi bingung... Bingung gimana? Bingung nginstallnya. Sampeyan nginstallnya di mana? Sampeyan gimana? Ya di kantor, Mas! Masa di rumah.  Di rumah komputer kan cuma 1 doang. He he....! Maksud saya, nginstallnya di komputer apa, OS nya apa? Di PC, OS-nya linux Linux apa? Ubuntu, Mas! Hmm... Ubuntu? Sampeyan nginstallnya make apt-get install apa compile dari source-nya? Make apt-get install, Mas! sudo apt-get install snort snort-mysql Emang kenapa, Mas? Gak apa, Cuma biasanya saya nginstallnya langsung dari source. Gimana caranya? Begini, unduh dulu source terakhir yang stabil dari http://www.snort.org/snort-downloads/ Kemudian copykan ke mesin linux yang bakal kita install snort.  Jangan cuma download source snortnya thok.  Download juga library DAQ (Data Aqcuisition Library).  Karena snort juga butuh ini kalo mau mengenable-kan semua fitur snort. Jangan lupa juga download barny...