Skip to main content

Imapsync Tanpa Password User

Imapsync adalah tools untuk melakukan sinkronisasi email berbasis IMAP antara dua server yang berbeda.  Untuk kepentingan migrasi e-mail Zimbra disamping menggunakan internal module zmmailbox untuk ekstrak mailbox dan import message ke mailbox, kita bisa juga menggunakan imapsync.  Namun, kekurangan dari menggunakan zmmailbox adalah bahwa e-mail yang kita import akan mempunyai tanggal "received date" yang seragam yaitu tanggal pada saat message kita import ke mail system kita. Tapi, bila kita menggunakan imapsync, dari sekian banyak contoh yang bertebaran di internet, kita selalu diberikan contoh yang selalu harus memberikan password user.  Meskipun itu dimasukkan kedalam satu file plain text.  Nah, kali ini saya akan mencoba mengurai penggunaan imapsync yang tanpa harus memberikan password user.  Namun, tetap, password admin harus kita punya, atau dengan kata lain kita melakukan sinkronisasi dengan menggunakan privilege admin.

Install Imapsync
Petama kali kita harus menginstall pre-requisite dari aplikasi imapsync

root@mail:~#apt-get install libdate-manip-perl libterm-readkey-perl \
libterm-readkey-perl libdigest-hmac-perl libdigest-hmac-perl \
libdate-manip-perl libmail-imapclient-perl makepasswd \
rcs perl-doc libmail-imapclient-perl make git-core git-doc git-svn git-gui gitk

Kemudian kita clone source imapsync dengan perintah:

root@mail:~#cd /opt
root@mail:/opt#git clone git://github.com/imapsync/imapsync.git

root@mail:/opt#cd imapsync/
root@mail:/opt/imapsync#make install

Sinkronisasi Email
Umumnya untuk melakukan singkronisasi e-mail menggunakan imapsync kita menggunakan perintah yang baku sebagai berikut


root@mail:~#imapsync --host1 [host-sumber] --ssl1(bila digunakan) --user1 [email@domain-sumber] --password1 [passworduser-sumber]\
--host2 [host-target] --ssl2(bila digunakan) --user2 [email@domain-target] --password2 [passworduser-target]

Perhtikan bahwa kita harus mensuplai password.  Permasalahan dengan hal ini adalah bahwa kita harus tahu seluruh username dan password untuk seluruh akun yang terdaftar pada mail system kita. Googling punya googling ternyata ada satu direction yang bisa kita gunakan untuk melakukan singkronisasi tanpa harus mengetahui password user.  Direction yang kita gunakan adalah "--authuser[x]" dimana authenticated user yang digunakan adalah admin user sehingga kita bisa baca dan tulis seluruh content milik seluruh akun yang terdaftar.  Ok kita coba..


Contohnya:

User: saya@domain.co.id host1: 10.11.12.13 host2: 14.15.16.17 ssl

root@mail:~#imapsync --host1 10.11.12.13 --ssl1 --authuser1 admin --user1 saya@domain.co.id \
--host2 14.15.16.17 --ssl2 --user2 saya@domain.co.id

Oppps.......! Tapi ternyata mail system meminta password admin secara interaktif.


root@mail:~#imapsync --host1 10.11.12.13 --ssl1 --authuser1 admin --user1 saya@domain.co.id \
--host2 14.15.16.17 --ssl2 --user2 saya@domain.co.id
Temp directory is /tmp
PID file is /tmp/imapsync.pid
Modules version list:
Mail::IMAPClient 3.30
IO::Socket 1.32
IO::Socket::IP ?
IO::Socket::INET 1.31
IO::Socket::SSL 1.53
Net::SSLeay 1.42
Digest::MD5 2.51
Digest::HMAC_MD5 1.01
Digest::HMAC_SHA1 1.03
Term::ReadKey 2.30
Authen::NTLM ?
File::Spec 3.33
Time::HiRes 1.972101
URI::Escape 3.31
Data::Uniqid ?

Info: turned ON syncinternaldates, will set the internal dates (arrival dates) on host2 same as host1.
Info: will try to use PLAIN authentication on host1
Info: will try to use PLAIN authentication on host2
Info: imap connexions timeout is 120 seconds
Host1: IMAP server [10.11.12.13] port [993] user [saya@domain.co.id]
Host2: IMAP server [14.15.16.17] port [993] user [saya@domain.co.id]
What's the password for admin@10.11.12.13?
What's the password for admin@14.15.16.17?
Host2: * OK IMAP4 ready
Host2: 14.15.16.17 says it has CAPABILITY for AUTHENTICATE PLAIN
Host2: success login on [14.15.16.17] with user [hartoyo_opr@collega.co.id] auth [PLAIN]
Host1: state Authenticated
Host2: state Authenticated
Host1 capability: IMAP4rev1 ACL BINARY CATENATE CHILDREN CONDSTORE ENABLE ESEARCH ESORT I18NLEVEL=1 ID IDLE LIST-EXTENDED LIST-STATUS LITERAL+ LOGIN-REFERRALS MULTIAPPEND NAMESPACE QRESYNC QUOTA RIGHTS=ektx SASL-IR SEARCHRES SORT THREAD=ORDEREDSUBJECT UIDPLUS UNSELECT WITHIN XLIST
Host2 capability: IMAP4rev1 ACL BINARY CATENATE CHILDREN CONDSTORE ENABLE ESEARCH ID IDLE LIST-EXTENDED LITERAL+ LOGIN-REFERRALS MULTIAPPEND NAMESPACE QRESYNC QUOTA RIGHTS=ektx SASL-IR SEARCHRES UIDPLUS UNSELECT WITHIN
Host1 separator and prefix: [/][]
Host2 separator and prefix: [/][]

< < dan seterusnya dipotong


Hmmm..... gak masalah harus masukin password admin tapi kok ya harus key-in sih? Tapi, coba kita perhatikan, bahwa password admin untuk satu akun diminta 2 kali.  Satu kali untuk sumber dan satu kali untuk target. Bagaimana kalau kedua password kita rekam dalam satu plain text, sebut aja namanya adminpass.txt dan kita sertakan dalam command line kita sebagai standar input sehingga perintahnya akan menjadi begini.
Content adminpass.txt
root@mail:~#cat adminpass.txt
passadminchar
passadminchar
Eksekusi perintah....
root@mail:~#imapsync --host1 10.11.12.13 --ssl1 --authuser1 admin --user1 saya@domain.co.id \
--host2 14.15.16.17 --ssl2 --user2 saya@domain.co.id <./adminpass.txt
Ok tinggal ditest, dan bila berhasil maka tinggal digabung dengan tools internal zimbra untuk mensingkronisasi seluruh akun.


(Langkah-langkah di atas telah dicobakan untuk installasi zimbra community edition versi 5 dan 8 baik sebagai target maupun sebgai sumber. Zimbra 5 terinstall pada OpenSuSE 10 32bit, sementara Zimbra 8 terintall pada Ubuntu 12.04 64bit)

Popular posts from this blog

Snort dan Suricata IDPS

Sugeng pagi, Mas! Pagi, gimana kabarnya? Baik, Mas. Gini, Mas! Saya lagi pusing ngurusin jaringan di kantor. Pusing kenapa? Itu lo, Mas, virus tau-tau nongol tanpa permisi.  Bikin jaringan jadi lemot. Yang lebih repotnnya lagi, kita gak tau dari sebelah mana penyebarannya. Lah, gitu aja kok pusing.  Kamu punya alat monitoring macem IDS gak? Apa itu IDS, Mas? IDS itu, singkatan coro londo Intrussion Detection System.  Maksudnya sistem buat mendeteksi aktifitas penyusupan. La, itu kan bukan antivirus, Mas! Lagian mana ada sih yang nyusup di kantor saya.  Apalagi kantor banyakan mainnya di jaringan private. La ini, yang salah! Jangan beranggapan bahwa setiap penyusupan itu datangnya dari luar. Ancaman kebocoran itu paling besar justeru datangnya dari dalam. Dan satu hal lagi penyusupan tidak harus terjadi dalam satu saat.  Seperti proses penyusupan yang dilakukan dengan menggunakan kuda trojan.  Para penyusup justeru anteng dulu di dalam kuda trojan....

Awal Perjalanan

Jalan di dusun Pedhudutan pagi ini masih sangat sepi. Meskipun adzan Shubuh telah berkumandang, dan jama’ah Shubuh telah kembali dari langgar, namun aktifitas penduduk masih belum terlihat bergeliat. Hanya beberapa penduduk yang terlihat telah mendahului pergi ke pasar menjemput pagi. Menjemput rezeki pagi ini. Wadasputih, lintasan pegunungan yang melingkupi dusun Pohkumbang, masih nampak hitam di ujung timur seakan mencanda mentari agar tetap dalam peraduannya meski semburat tangan sinarnya telah menggapai awan yang masih malas-malasan di atas sana. Padepokan Gagak Wulung, pagi ini, terasa sangat sepi. Tidak seperti hari-hari sebelumnya. Tidak ada suara cantrik mengalunkan pesan-pesan ilahi, maupun yang gladen, olah kanuragan. Bahkan dapur-dapur padepokan yang biasanya diisi oleh para simbok, istri-istri cantrik senior maupun para cantrik perempuan, pagi ini sepi. Hanya ada sedikit sisa asap pedhangan bekas menanak nasi tadi, sebelum subuhan. Semua cantrik berkumpul di depan pendo...

Analisis Interaktif Kerentanan PHP

Dasbor Analisis Kerentanan PHP 2025 Analisis Interaktif Kerentanan PHP CVE-2025-1735 (pgsql) & CVE-2025-6491 (SOAP) CVE-2025-1735 CVE-2025-6491 Ringkasan CVE-2025-1735: Ekstensi `pgsql` Kerentanan ini berasal dari penanganan kesalahan yang tidak memadai dalam ekstensi PostgreSQL PHP, yang berpotensi menyebabkan Injeksi SQL dan Penolakan Layanan (DoS). Bagian ini memvisualisasikan data kunci untuk memahami risikonya. Detail Kerentanan ...