• Masim “Vavai” Sugianto

    Founder PT. Excellent Infotama Kreasindo– perusahaan email services provider (ESP) dan menjadi konsultan pada berbagai instansi pemerintah, korporasi besar, lembaga perbankan dan institusi pendidikan di Indonesia.

    Lebih detail tentang Vavai.




  • Publishing

  • Recent Posts

    • TOEFL ITP Score (Kedua)
    • Bisnis Kelapa Muda
    • Model Usaha
    • Back-End Developer, Front-End Developer & Staff IT Support
    • Markas Excellent Danita
  • Recent Comments

    • dkyubn.bizwebs.com on Instalasi Squid Proxy Server pada OpenSUSE
    • http://aonubs.website2.me/ on Instalasi Squid Proxy Server pada OpenSUSE
    • canadian pharmacy online on Instalasi Squid Proxy Server pada OpenSUSE
    • site592154748.fo.team on Instalasi Squid Proxy Server pada OpenSUSE
    • kqwsh.wordpress.com20220516what-everybody-else-does-when-it-comes-to-online-pharmacies on Instalasi Squid Proxy Server pada OpenSUSE
  • Archives

    • April 2022
    • January 2022
    • July 2021
    • June 2021
    • February 2021
    • January 2021
    • December 2020
    • August 2020
    • July 2020
    • April 2020
    • March 2020
    • August 2019
    • July 2019
    • June 2019
    • March 2019
    • February 2019
    • January 2019
    • November 2018
    • October 2018
    • August 2018
    • May 2018
    • April 2018
    • January 2018
    • December 2017
    • July 2017
    • December 2016
    • November 2016
    • April 2016
    • March 2016
    • November 2015
    • July 2015
    • April 2015
    • November 2014
    • October 2014
    • February 2014
    • January 2014
    • December 2013
    • November 2013
    • October 2013
    • September 2013
    • August 2013
    • June 2013
    • May 2013
    • March 2013
    • February 2013
    • January 2013
    • December 2012
    • November 2012
    • October 2012
    • September 2012
    • August 2012
    • July 2012
    • June 2012
    • May 2012
    • April 2012
    • March 2012
    • February 2012
    • January 2012
    • December 2011
    • November 2011
    • October 2011
    • September 2011
    • August 2011
    • July 2011
    • June 2011
    • May 2011
    • April 2011
    • March 2011
    • February 2011
    • January 2011
    • December 2010
    • November 2010
    • October 2010
    • September 2010
    • August 2010
    • July 2010
    • June 2010
    • May 2010
    • April 2010
    • March 2010
    • February 2010
    • January 2010
    • October 2008
    • September 2008
    • August 2008
    • July 2008
    • June 2008
    • May 2008
    • April 2008
    • March 2008
    • February 2008
    • January 2008
    • December 2007
    • November 2007
    • October 2007
    • September 2007
    • August 2007
    • July 2007
    • June 2007
    • May 2007
    • April 2007
    • March 2007
  • Home
  • Bisnis & Marketing
  • Computer & IT Related
  • Lifestyle
  • Publishing
  • Free Stuff
  • About
  • Kontak

Tips Zimbra : Script untuk Mengganti Member Distribution List

August 22, 2013

Saya ada project di salah satu klien Excellent, memindahkan account Zimbra Mail Server dari salah satu mailbox server ke mailbox server lain agar bebannya seimbang. Sistem di klien ini menggunakan model multi server, seperti pernah saya tuliskan disini : Contoh Skema & Topologi Zimbra untuk Implementasi Skala Besar dan disini : Tips Improvement Mail Server : Skema dan Model Setup Mail Server

Pada Zimbra Network Edition (NE), mekanisme ini bisa langsung diatasi karena Zimbra NE memiliki fasilitas/tools untuk online moving. Mengingat yang digunakan adalah Zimbra Open Source (OSE), saya memutuskan untuk membuat script yang berfungsi untuk memindahkan 1 account dari 1 mailbox server ke mailbox server lain. Yang dipindah mencakup profile user berikut password dan isi mailboxnya.

zcs

Algoritmanya kira-kira seperti ini :

  1. Script meminta masukan nama account
  2. Script mengecek parameter yang dimasukkan, stop jika ada parameter yang tidak diisi
  3. Script mengecek profile dan identitas user dan memasukannya kedalam variable temporer
  4. Script membuat account baru dengan suffiks (akhiran) .move, misalnya account asli namanya vivianchow@excellent.co.id akan dibuatkan account baru dengan nama vivianchow.move@excellent.co.id. Account baru ini akan menyesuaikan data profile dan passwordnya dari account lama
  5. Script melakukan sinkronisasi mailbox dari account lama ke account baru
  6. Script melakukan rename dari nama account lama menjadi nama account dengan suffiks .backup, misalnya account vivianchow@excellent.co.id akan direname menjadi vivianchow.backup@excellent.co.id
  7. Script melakukan rename dari nama account .move menjadi nama account tanpa suffiks , misalnya account vivianchow.move@excellent.co.id akan direname menjadi vivianchow@excellent.co.id
  8. Script selesai melaksanakan tugas

Ternyata 2 masalah baru muncul. Pertama adalah masalah Alias. Cukup banyak account yang memiliki alias dan tidak ikut disesuaikan pada saat penyesuaian account sehingga alias tersebut masih merujuk ke account dengan nama .backup. Untuk masalah ini akan saya bahas pada posting terpisah.

Masalah lain yang muncul adalah membership pada distribution list. Sistem membership ini ternyata memiliki korelasi dengan account. Misalnya account vivianchow@excellent.co.id menjadi member pada distribution list teamsupport@excellent.co.id, jika account tersebut direname menjadi vivianchow.backup@excellent.co.id, maka member distribution list list teamsupport@excellent.co.id akan otomatis berubah dari awalnya vivianchow@excellent.co.id menjadi vivianchow.backup@excellent.co.id.  Akibatnya email distribution list masih masuk ke account yang lama.

Untuk mengantisipasi hal ini, saya membuat sebuah script sederhana yang memiliki fungsi :

  1. Meminta masukan nama distribution list
  2. Mengecek daftar member distribution list yang mengandung nama “backup”
  3. Menambahkan account tanpa nama backup sebagai member distribution list
  4. Menghapus account dengan nama backup dari member distribution list
  5. Mengulang proses untuk member yang lain

Sengaja prosesnya adalah menambahkan account dulu baru menghapus account dengan nama backup, agar jika ada email masuk pas saat script dijalankan, tidak ada bounce email. Jika email terlanjur masuk ke account lama, kita bisa melakukan penyalinan isi email ke account yang baru.

Scriptnya seperti dibawah ini, saya buat secara cepat karena butuh urgent, jadi kemungkinan ada beberapa kaidah pemrogramman yang saya tabrak 😀

Script untuk Mengganti Member Distribution List : resetting-dist-backup-member.sh

#!/bin/sh
 
#Hapus Layar
clear

echo -n "Nama distribution list (lengkap berikut nama domain) : "
read DIST_LIST_NAME

DOMAIN=`echo $DIST_LIST_NAME | cut -d '@' -f2`
DIST_LIST_MEMBER=`su - zimbra -c "zmprov gdlm $DIST_LIST_NAME | grep backup"`

echo""
echo "Daftar member distribution list $DIST_LIST_NAME yang mengandung nama backup :"
su - zimbra -c "zmprov gdlm $DIST_LIST_NAME | grep backup"

echo ""
echo "Melakukan pencarian member distribution list..."
for ACCOUNT in $DIST_LIST_MEMBER; do
        ACC1=`echo $ACCOUNT | awk -F@ '{print $1}'`;
        PANJANG_CHAR=$((${#ACC1}-7))
		ACC2=${ACC1:0:$PANJANG_CHAR}

        echo "Proses resetting $ACCOUNT..."
        echo ""
        echo "Add $ACC2@$DOMAIN sebagai member $DIST_LIST_NAME  : su - zimbra -c 'zmprov adlm $DIST_LIST_NAME $ACC2@$DOMAIN'"
        su - zimbra -c "zmprov adlm $DIST_LIST_NAME $ACC2@$DOMAIN"

        echo ""
        echo "Remove $ACC1 dari $DIST_LIST_NAME list member  : su - zimbra -c 'zmprov rdlm $DIST_LIST_NAME $ACC1@$DOMAIN'"
        su - zimbra -c "zmprov rdlm $DIST_LIST_NAME $ACC1@$DOMAIN"
 
        echo ""
        echo "Resetting membership $ACCOUNT telah selesai, Tekan ENTER untuk proses data berikutnya..."
        echo ""
#      read presskey
done
echo "Daftar member distribution list $DIST_LIST_NAME lengkap"
su - zimbra -c "zmprov gdlm $DIST_LIST_NAME"

echo ""
echo "Daftar member distribution list $DIST_LIST_NAME yang mengandung nama 'backup'"
su - zimbra -c "zmprov gdlm $DIST_LIST_NAME | grep backup"

echo "Proses resetting member untuk distribution list $DIST_LIST_NAME selesai dilakukan"
Bashplanet-terasi-aggregatorScriptZimbra
Share

Migrasi Server  / Tips, Tricks & Tutorial

Masim Vavai Sugianto
Masim Vavai Sugianto, Tinggal di Bekasi, Bekerja sebagai wirausahawan/Konsultan IT. Penganjur penggunaan sistem Linux dan aplikasi Open Source. Hobby Membaca, Hiking dan Avonturir. Mengembangkan PT. Excellent Infotama Kreasindo sebagai lembaga training dan IT consulting.

You might also like

Webinar Zimbra : Mindset untuk Team IT
July 29, 2020
Eskalasi Masalah Email : mailbox unavailable invalid DNS MX or A/AAAA resource record
July 14, 2020
Two Factor Authentication (2FA/TFA) untuk Meningkatkan Keamanan Akses Email
April 24, 2020

3 Comments


Fuji Novia
August 27, 2013 at 11:16 am

Hai mas vavai, saya admin mail server di kantor saya. Beberapa waktu ini, saya mendapat problem dengan UI mail client zimbra pada mode AJAX. Setelah login, tampilan terhenti pada tampilan loading dan tidak masuk ke sesion selanjutnya. Alhasil, semua user terpaksa menggunakan UI mode HTML. Saat saya cek dengan firebug, terdapat beberapa error,

SyntaxError: illegal character
�
(line 2279)

SyntaxError: illegal character
�

Startu…4122621 (line 1)

ReferenceError: AjxCore is not defined
AjxCore.addOnloadListener(launch);
(line 2279)

ReferenceError: AjxDebug is not defined
window.DBG = new AjxDebug({level:AjxDebug.NONE, target:debugLogTarget});
(line 2195)

Mohon bantuannya ya Pak…



Gamersz
September 9, 2013 at 8:47 am

keren sekali gan postingannya….saya senang cari info di sini banyak manfaatnya



donny abdul rozaq
October 24, 2013 at 9:01 am

assalamualaikum gan
Om ada yang tau tutorial (Membuat Mail Server berbasis ZIMBRA pada openSUSE 11.3) gak om ?

saya udah cari” tutornya yang lengkap gak ketemu … itu JUDUL LAPORAN SAYA .

Mohon di bantu om 😀
thanks .

Facebook : donnyabdul@yahoo.com



Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA
Refresh

*

  • Artikel



  • Blogroll

    • DNS Propagation Checker
    • Instagram Photo/Video Downloader
    • PT. Excellent Infotama Kreasindo
  • Publishing

  • Recent Posts

    • TOEFL ITP Score (Kedua)
    • Bisnis Kelapa Muda
    • Model Usaha
    • Back-End Developer, Front-End Developer & Staff IT Support
    • Markas Excellent Danita
    • Pekerjaan Excellent
    • iMac 2021
    • Problem Solving
    • Kolam Mina Padi/Mina Genjer
    • Team Excellent


  • Links Ads

  • Recent Post

    • TOEFL ITP Score (Kedua)
    • Bisnis Kelapa Muda
    • Model Usaha
    • Back-End Developer, Front-End Developer & Staff IT Support
    • Markas Excellent Danita
    • Pekerjaan Excellent
    • iMac 2021
    • Problem Solving
    • Kolam Mina Padi/Mina Genjer
    • Team Excellent
    • Telur Bebek Mentah
    • Kursi Kayu dan Gerobak Angkringan
    • Kebun Pisang Barangan dan Ambon Kuning
    • Ternak Bebek
    • Data Statistik Covid dan Edukasi Media
  • Recent Comments

    • dkyubn.bizwebs.com on Instalasi Squid Proxy Server pada OpenSUSE
    • http://aonubs.website2.me/ on Instalasi Squid Proxy Server pada OpenSUSE
    • canadian pharmacy online on Instalasi Squid Proxy Server pada OpenSUSE
    • site592154748.fo.team on Instalasi Squid Proxy Server pada OpenSUSE
    • kqwsh.wordpress.com20220516what-everybody-else-does-when-it-comes-to-online-pharmacies on Instalasi Squid Proxy Server pada OpenSUSE
    • canadian rx on Instalasi Squid Proxy Server pada OpenSUSE
    • kwersd.mystrikingly.com on Instalasi Squid Proxy Server pada OpenSUSE
    • canadian prescriptions online on Instalasi Squid Proxy Server pada OpenSUSE
    • avuiom.sellfy.store on Instalasi Squid Proxy Server pada OpenSUSE
    • lwerts.livejournal.com276.html on Instalasi Squid Proxy Server pada OpenSUSE