Tips Zimbra Mail Server : Mengenal Split DNS
Instalasi Zimbra dibelakang sebuah firewall (atau NAT) terkadang membutuhkan konfigurasi tambahan yang disebut split DNS / split-horizon / dual-horizon DNS. Split DNS memungkinkan user yang berbeda menerima jawaban yang berbeda unntuk satu pertanyaan yang sama. Split DNS mendeskripsikan dua zona yang berbeda untuk satu domain yang sama, satu zona untuk internal, satu zona untuk eksternal (biasanya internet).
Salah satu alasan Split DNS dilakukan adalah untuk menyembunyikan informasi DNS internal perusahaan dari pihak eksternal di Internet sehingga memungkinkan pemberian nama DNS untuk server-server yang berada pada jaringan lokal pada satu DNS server yang tidak dapat diresolve dari jaringan eksternal atau memperoleh informasi yang berbeda dengan jaringan internal. Terdapat beberapa perbedaan pendapat mengenai apakah hal ini berguna atau tidak, tetapi sejauh ini split DNS dapat membantu dalam menghemat resource bandwith. Dengan split DNS klien-klien lokal akan mendapat IP private dari mail server.
Sebagai gambaran, katakanlah PT Excellent Infotama Kreasindo memiliki mail server (mail.excellent.co.id) di jaringan internal dengan IP Private 192.168.1.111 dan IP Publik 110.212.110.212 dengan gateway (IP 192.168.1.1). Jika dalam infrastruktur “non-split” DNS, ketika user melakukan dig ke domain mail.excellent.co.id yang didapat adalah IP Publik. Dengan demikian user akan memerlukan bandwith untuk mengakses internet baru kemudian kembali lagi ke lokal. Jadi jika menggunakan skema split DNS, ketika jaringan internet bertanya alamat mail.excellent.co.id maka akan dijawab 110.212.110.212, tapi jika jaringan internal yang bertanya, akan dijawab alamat IP Private (lokal).
Untuk mulai melakukan setting split DNS, kita perlu membuat beberapa view dan mendaftarkan alamat jaringan yang sesuai dengan view yang dibuat. Masing-masing view mempunyai definisi data DNS zone tersendiri yang akan digunakan untuk menjawab request dari user.
Persiapan Pengaturan Split DNS
- Pastikan paket bind / bind9 / named sudah terpasang pada komputer yang akan dijadikan DNS server.
- Telah memahami pengaturan dasar DNS, meliputi pembuatan zone DNS, record DNS, dan edit file DNS zone.
- Backup file-file yang asli sebelum mulai melakukan pengaturan split DNS, yaitu file named.conf dan file zone pada folder DNS (lokasi file berbeda-beda terganung distro Linux yang digunakan).
- Banyak-banyak berdoa semoga tidak akan ada masalah selama & setelah melakukan pengaturan ini. Hihihi…. 😀
Modifikasi file named.conf
Mari kita mulai….
Implementasi split DNS hanya melakukan sedikit konfigurasi pada file named.conf. Sedangkan konfigurasi file zone sama dengan konfigurasi pada umumnya. Yang perlu diingat adalah masing-masing view harus berdiri sendiri dan memiliki file zone sendiri, walaupun semua domain yang dimuat sama dan kita harus membuat definisi zone dalam tiap view yang ada.
Pertama, kita pisahkan jaringan mana saja yang boleh meresolve domain internal, kemudian kita kelompokkan pada view yang sesuai. View eksternal memuat data yang dapat dilihat oleh seluruh dunia (internet), dan view internal memuat data yang hanya dapat dilihat dari jaringan internal perusahaan.
View eksternal : Semua koneksi internet ke DNS Server ( 0.0.0.0/0 )
View internal : IP Private perusahaan ( 192.168.1.0/24; 127.0.0.1/8 )
rubah konfigurasi file named.conf menjadi seperti berikut:
view “internal” { match-clients { 192.168.1.0/24; 127.0.0.0/8; }; zone “.” { type hint; file “/etc/bind/db.root”; }; zone “excellent.co.id” { type master; file “/etc/bind/excellent.co.id.int”: }; }; view “eksternal { match-clients { 0.0.0.0/0; }; zone “.” { type hint; file “/etc/bind/db.root”; }; zone “excellent.co.id” { type master; file “/etc/bind/excellent.co.id.eks”: }; };
Catatan:
- DNS Server membaca konfigurasi named.conf dari atas kebawah, itu sebabnya view internal kita tuliskan terlebih dahulu sebelum view eksternal.
- Lokasi file named.conf:
Debian Family : /etc/bind/named.conf
Red Hat Family : /var/named/chroot/etc/named.conf
SUSE Family : /var/lib/named/named.conf
Setelah selesai melakukan konfigurasi kita tinggal membuat 2 buah file zone, yaitu satu untuk internal & satu lagi untuk eksternal. Isi file zone tersebut sama, hanya dibedakan alamat IP nya saja. Contohnya:
zona excellent.co.id.eks (untuk view eksternal):
IN NS ns1.excellent.co.id. IN NS ns2.excellent.co.id. IN MX 10 mail.excellent.co.id. IN A 110.212.110.212 www IN A 174.xxx.xxx.xxx mail IN A 110.212.110.212 ns1 IN A 174.xxx.xxx.xxx ns2 IN A 175.xxx.xxx.xxx
zona excellent.co.id.int (untuk view internal):
IN NS ns1.excellent.co.id. IN NS ns2.excellent.co.id. IN MX 10 mail.excellent.co.id. IN A 192.168.1.77 www IN A 174.xxx.xxx.xxx mail IN A 192.168.1.77 ns1 IN A 192.168.1.1 ns2 IN A 192.168.1.2
Lihat bagian yang dicetak tebal, kita hanya perlu melakuan perubahan dibagian tersebut.
Restart DNS server dengan perintah:
service named restart
atau
/etc/init.d/named
atau
service bind9 restart
atau
/etc/init.d/bind9
Konfigurasi selesai, semoga bermanfaat dan selamat mencoba.
Kalau buat email di dua lokasi dgn domain yg sama gimana cara setting split domainya?
terimaksih
Dua mailserver ini untuk memecah jumlah akun ya?
Klo iya bisa dengan hanya mengatur satu split dns untuk salah satu mailserver (zimbra), kemudian di mailserver tersebut diatur untuk memforward email ke server kedua jika alamat email yg dituju tidak ada di server tersebut.
@Dewi,
Kalau yang ditanyakan namanya Split-Domain, panduannya bisa dibaca di file PDF dalam artikel ini :
https://www.vavai.com/2011/11/25/reportase-pertemuan-komunitas-zimbra-indonesia-19-november-2011/
nice tuts mas vavai..
sekedar ikut share kalau pengguna router mikrotik cukup mudah mas vavai
hanya menambahkan pada static dns yang sudah ada di mikrotik di arahkan ke ip lokal mail server.
dan pada dhcp server di buat dns ke ip mikrotik.
untuk menghindari user yang set dns static.. di buat tranparent dns dimana port 53 udp di redirect ke port 53 mikrotik.
@Masjito,
Wah, thanks mas. Sip. Sangat membantu karena banyak rekan-rekan yang menggunakan Mikrotik dan agak bingung caranya set Split-DNS ini.
ga jalan mas vavai split dns nya yg terbaca selalu view internal, karena query dari luar ke ip public di nat oleh mikrotik ke ip lokal jadi dns menganggap si mikrotik lah yg query. kalo menggunakan statik dns di mikrotik sih sudah pasti bisa tapi saya tidak mau menggunaknnya makanya saya ingin menggunakan split dns, kira2 gimana yah solusinya
Mas @anton, memang seperti itu mas, karena ip yang digunakan mikrotik untuk menghubungi dns server kan ip lokal, jadi akan masuk klasifikasi internal.
Kalau pakai mikrotik lebih mudah menggunakan dns static bawaan mikrotik aja mas seperti yang diinfokan oleh mas masjito. Jadi lebih mudah dalam manage nya.
Kira-kira kenapa tidak mau menggunakan dns static milik mikrotik mas?
Untuk memaksanya berjalan, bisa dengan menambah satu hop lagi diantara modem dan mikrotik mas. Tapi nanti jadinya mikrotik cuma sebagai gateway bayangan aja mas. Topologinya jadi
Modem —- gateway & dns server —- mikrotik —- client.
Tapi malah jadi ga’ efektif.
mas @welly karena saya ada aplikasi2 saya yang harus menggunakan dns sedangkan di mikrotik haya bisa A record saja, dan saya ga mau memasukan 2 dns misalnya di dns di tambah di mikrotik ditambah juga kalo topologi DMZ seperti mas sebutkan diatas rada rentan terhadap serangan kayanya yah. kalo memang benar2 tidak bisa mau tidak mau saya menggunakan dns server tsb hanya untuk internal saja, untuk external saya menggunakan dns yg ada di hosting, cuma repotnya saya harus minta dibuatkan PTR ke isp
Dengan topologi Modem —- gateway & dns server —- mikrotik —- client bisa tidak dua kali memasukkan dns mas, cukup di dns server (yg bukan mikrotik), lalu di mikrotik di set primary dns ke dns server yang bukan mikrotik. Jadi, permintaan dari lokal akan dikelola oleh mikrotik, tetapi dari eksternal dikelola oleh dns server satunya.
Masalah rentan atau tidak, sebenarnya sama saja mas. Malah jadi ada 2 gateway yang harus dilewati kalau ada orang yang mau iseng. Karena Dari eksternal –> gateway / dns server –> mikrotik –> client. Begitu sebaliknya.
Mas Vavai, saya sudah membuat email server di kantor saya menggunakan tutorial dari mas vavai…
saat ini sudah jalan email server-nya namun ada beberapa user yang tidak dapat mengakses pop3/smtp ..User tersebut adalah user yang tidak memiliki hak akses internet.
apakah dengan split dns ini user2 tersebut akan dapat melakukan akses pop3 dan smtp meskipun tdk ada akses inet ?
skema jaringan di saya luar(internet) –> router –> client
di router di setting NAT oleh konsultan kami.
regards ,
mas @yuro, servernya ada dimana? di luar apa di dalam? kalo di dalam (local) harusnya sih bisa karena yg bertugas mengirim email ke luar kan servernya.
server
|
internet —router—-client
atau
server
|
internet–router—switch
|
client
maap skema saya salah tuh, harusnya yg pertama server diatas router ( client & server beda network)
yg kedua server& client setara switch/ 1 network
maaf salah ketik saya, nama sya yuri 😀
server-ny ada di internal saya mas, tpi menggunakan IP Public, sedangkan user2 saya disini menggunakan ip lokal yaitu 192.168.2.0 – 192.168.2.10 ( Direksi ) dan user departmen 10.0.0.0/8
kalau saya mau pasang DNS Split dimana saya buat file zone-nya ?… kalau melalui webmin artinya saya bikin master zone lgi y ? atau hanya copy paste saja dari terminal dan di tambahkan eks dan int pada akhr nama file zone.
server —> router —> internet
untuk user juga user —> router —> internet
servernya menggunakan static ip public apa di NAT oleh router?
kalo di nat berarti si server punya ip private.
kalo split DNS berarti ada 2 zone, zone internal & external bikin aja pake webmin biar gampang.
clientnya DNS nya mengarah kemana? dns server atau ke router?
kalau saya sih pernah pakenya servernya dapet ip public dari hasil NAT di router, jadi client yg ga bisa akses internet tinggal di blok aja di routernya jadi tetep bisa mail walaupun server & client beda network. dan pertimbangan masalah security kalo server langsung dikasih ip public, kata temen saya yg kerja di ISP sih langsung kasih ip public di server sama aja bunuh diri 😀
Mas Vavai terima kasih tutorialnya, dan terima kasih juga mas anton , pertanyaan saya mirip dengan pertanyaan mas Yuri, server zimbra saya dibelakang router mikrotik (di NAT) apakah split DNS ini diharuskan jika hal sepertinya ( maaf hanya memerjelas). btw confif DNS splitnya apa di server zimbra tersebut, dikarenakan kantor saya DNS local yang diforward ke DNS ISP, dan alternate DNS menggunakan DNS ip private mikrotik. mohon pencerahannya
mas aan, menurut pengalaman saya tidak perlu di split2 karena dns servernya ada di belakang router kan? jadi request akan selalu dibaca oleh dns dari ip router.
Mas Anton, terima kasih info dan masukannya, sudah saya coba zimbra di belakang mikrotik ( dst-nat ) dan tanpa split DNS, dan berhasil… trimakasih maul lanjut lagi .. salam aan ( newest be )
Mas Vavai saya ada sub domain di luar (ip publik) saya hanya nambahkan di zona eksternal saja, tetapi kenapa ya dari intranet (LAN) ngak bisa akses ke subdomain tersebut tetapi kalau dari internet bisa. mohon pencerahan.
hatur nuhun
@Indrarachma,
Mas mesti buatkan records untuk DNS internal juga. Tentu saja jadi tidak bisa.
@Masim Vavai Sugianto.
maksudnya di records internal harus ditambahkan ip publiknya ? bukannya sudah dihandle oleh records eksternal ?
@ indrarachma
Iya mas harus dimasukkan juga di internal.
Jadi inti dari split dns adalah permintaan intranet sepenuhnya dikelola di internal dan terpisah dari luar.
Untuk request yang berasal dari internet dikelola (dijawab) oleh records dns external.
Karena asal request dari zona internal, maka yg jawab dns record yg ada di internal. Karena subdomain yang mas buat tidak dibuat di internal, maka akan dijawab tidak ada subdomain tsb.
Semoga membantu.
@Masim Vavai Sugianto
Oke mas terima kasih infonya sangat bermanfaat…
Mantap ini yang ane cari, masih kurang paham dengan Zimbra, mudah2n bisa sambilbelajar hehe