Thursday, February 9, 2017

Memanfaatkan Fitur Netwatch Mikrotik untuk Memonitor Koneksi

  4 comments
11:39 AM

Assalamu'alaikum Wr. Wb.
Di artikel ini saya akan menulis bagaimana saya memanfaatkan fitur Netwatch dari MikroTik untuk memantau apakah Server saya hidup dan dapat diakses ataukah tidak melalui suara beep yang sudah saya setting sebelumnya.

a. Pengertian
Netwatch adalah fitur dari MikroTik RouterOS yang dapat dijadikan sebagai pemantau koneksi jaringan kita. Dengan menggunakan Netwatch kita bisa memantau kondisi koneksi secara realtime tanpa harus selalu menatap System Monitoring, karena kita dapat menggunakan berbagai cara untuk memberitahu kita apakah Koneksi OK atau sedang Trouble seperti dengan Suara Beep, Pesan Email, dan bahkan SMS.

b. Latar Belakang
Dengan semakin dituntutnya Uptime koneksi 24/7 dan Uptime SLA mendekati 100% maka para Administrator Jaringan dituntut untuk selalu memonitor kondisi jaringannya, apakah normal atau sedang trouble.

c. Maksud dan Tujuan
Semakin berkembangnya aplikasi monitoring yang semakin hari semakin canggih, kita akan memanfaatkannya untuk membantu kita memonitor jaringan secara realtime tanpa campur tangan manusia. Sehingga Administrator tidak harus selalu menatap dan memonitor secara 24 jam penuh. Salah satu Tool yang akan kita gunakan adalah aplikasi bernama Netwatch yang secara default sudah ada di MikroTik RouterOS.

d. Waktu Pengerjaan
Waktu yang digunakan untuk melakukan konfigurasi ini berkisar antara 5-10 Menit.

e. Alat dan Bahan
- 1 Perangkat MikroTik Routerboard (dengan atau tanpa Beeper. cth dengan Beeper: RB750Gr3, RB951Ui-2HnD, dan Router dengan Harga yang cukup lumayan lainnya).

f. Langkah Pengerjaan
1. Silahkan teman-teman masuk ke perangkat Routerboard masing-masing melalui Winbox.

2. Buka menu Tools -> Netwatch. Lalu klik [+] untuk menambahkan Monitoring.

3. Isikan Host dengan IP yang ingin dijadikan acuan apakah Jaringan OK ataukah Trouble. Contohnya apabila Netwatch diimplementasikan di Warnet, maka teman-teman dapat mengarahkan Host ke IP Public DNS Google yaitu 8.8.8.8.
Sesuaikan Interval, yaitu setiap berapa Detik, Menit, atau tiap Jam Netwatch akan melakukan testing koneksi ke Host yang bersangkutan.
4. Apabila sudah silahkan ke Tab Up. Script yang ada di tab ini akan dieksekusi apabila Ping Test ke Host yang sudah di set menghasilkan Reply. Teman-teman dapat menggunakan Script sederhana seperti menghidupkan Beeper, mengirimkan Email, hingga mengirimkan SMS ke nomor teman-teman.

Disini saya menggunakan Beeper sederhana.
5. Kemudian ke Tab Down. Script yang ada di tab ini akan dieksekusi apabila Ping Test ke Host yang sudah di set menghasilkan RTO atau selain Reply. Sama seperti Tab Up, teman-teman dapat menggunakan berbagai macam Script untuk mengindikasikan Jaringan Down atau Trouble.
Disini saya juga menggunakan Beeper sederhana.

Untuk Scriptnya:
Up
:beep length=100ms frequency=800;
:delay 300ms;
:beep length=100ms frequency=1000;
Down
:beep length=100ms frequency=1000;
:delay 300ms;
:beep length=100ms frequency=800;
6. Setelah itu klik OK.

Netwatch sudah aktif! teman-teman dapat mencobanya dengan mematikan dan menghidupkan koneksi ke Host yang bersangkutan :))

g. Referensi
--

h. Kesimpulan
Dengan digunakannya fitur Netwatch ini, kita akan semakin mudah dalam memonitor keadaan jaringan secara realtime.

Nah apabila teman-teman adalah seorang komposer, mungkin teman-teman dapat menyalurkan bakat teman-teman disini dan membuat lagu :))

Mungkin cukup sekian yang dapat saya sampaikan,  semoga bermanfaat bagi teman-teman semua :)
Dan seperti biasa, Terima Kasih!
Wassalamu'alaikum Wr. Wb.

Read More

Wednesday, February 8, 2017

Integrasi Fitur PPPoE Server + Hotspot MikroTik dengan MikroTik Userman

  4 comments
10:38 AM

Assalamu'alaikum Wr. Wb.
Di artikel ini saya akan menulis bagaimana saya mengintegrasikan Fitur PPPoE + Hotspot MikroTik dengan RADIUS Server Eksternal, MikroTik Userman.

a. Pengertian
RADIUS (Remote Authentication Dial-In User Service), merupakan sebuah protokol keamanan yang digunakan sebagai AAA (Autentikasi, Autorisasi, Akuntansi) secara terpusat kepada pengguna sebelum akhirnya pengguna tersebut dapat mengakses jaringan.

Userman atau User Manager sendiri adalah salah satu RADIUS Server yang dibuat oleh MikroTik, Userman dapat digunakan untuk keperluan autentikasi Akun Hotspot, PPP, Wifi, Login Router, serta mengatur DHCP secara terpusat.

b. Latar Belakang
Dengan semakin berkembang dan bertambah banyaknya layanan-layanan yang berbanding lurus dengan bertambahnya Pengguna, maka dibutuhkan sebuah Manajemen yang lebih baik dan terpusat. Oleh karena itu digunakanlah RADIUS.

c. Maksud dan Tujuan
Penggunaan RADIUS memudahkan pengelolaan data pengguna karena dilakukan secara terpusat, serta dengan digunakannya RADIUS Server secara eksternal maka meminimalisir kehilangan data akibat kerusakan.

d. Waktu Pengerjaan
Waktu yang dibutuhkan untuk melakukan pekerjaan ini kurang lebih 15 - 30 Menit.

e. Alat dan Bahan
- VirtualBox - Official Download / apt install virtualbox virtualbox-qt
- MikroTik CHR - Official Download 6.38.1
- Userman Package - Official Download 6.38.1
- MikroTik hAP
- Kabel UTP RJ45

f. Topologi

g. Langkah Pengerjaan
1. Silahkan download dan persiapkan Alat serta Bahan yang dibutuhkan, kemudian Copy file Image CHR yang sudah didownload agar menjadi 3 file, satu untuk cadangan dan dua lainnya yang akan digunakan.
2. Hidupkan dan Hubungkan MikroTik hAP ke PC lalu Masuk dengan Winbox. Kemudian buat settingan dasar IP dan Hotspot untuk Ethernet 2.
3. Lakukan Instalasi VirtualBox di PC teman-teman. Setelah instalasi VirtualBox selesai, silahkan buka dan buat Dua Buah Profile Virtual Machine (VM) seperti biasa namun dengan menggunakan Disk Image CHR yang sudah kita download dan gandakan menjadi dua. Sebelum VM distart, konfigurasikan agar koneksi jaringan yang digunakan oleh VM menggunakan Bridged Network. Apabila sudah disetting, silahkan Start kedua VM nya.
4. Secara default, CHR memiliki settingan DHCP Client yang sudah aktif. Maka dari itu kita bisa langsung menambahkannya ke IP Binding MikroTik hAP agar Hotspot dapat di Bypass oleh kedua CHR kita. Agar tidak repot memasukkan MAC Addressnya satu persatu, teman-teman dapat menuju Tab Host pada menu Hotspot. Disana akan terlihat Client-client yang terkoneksi ke Hotspot kita, terlepas apakah Client tersebut telah melakukan Login atau hanya sekedar terkoneksi.
Klik dua kali pada IP Address yang dimiliki oleh CHR kita, pada bagian Type pilihlah Bypassed kemudian kllik OK. Lakukan hal yang sama untuk CHR yang lain dan PC kita untuk sementara waktu.
Setelah Hotspot ter-bypass, seharusnya CHR sudah dapat diakses dan mengakses.
Tanpa melakukan Bypass terhadap PC kita pun sebenarnya kita tetap dapat melakukan akses ke CHR melalui MAC Address, namun untuk mengakses User Manager nantinya, kita diharuskan untuk melakukan Login Hotspot terlebih dahulu atau dengan cara Bypass.

5. Masuk ke CHR - RADIUS melalui Winbox. Kemudian teman-teman Extract dan Upload paket User Manager yang ada didalam archive Extra Packages ke CHR RADIUS melalui Winbox -> Files.

6. Setelah terupload, lakukan Reboot router agar paket Userman yang kita upload tadi diinstall oleh MikroTik. Untuk mendapatkan resource yang maksimal di spek minimal, teman-teman dapat mematikan (disable) semua fitur lain MikroTik yang tidak digunakan. Paket yang Wajib aktif agar RouterOS berjalan adalah paket System.
Apabila teman-teman juga mematikan Paket DHCP sebelumnya, maka setelah Reboot teman-teman akan kehilangan IP karena DHCP Client tidak ada. Ini normal, sebagai gantinya teman-teman dapat menambahkan IP secara manual seperti biasa di IP -> Address. Hotspot Bypass pun tetap akan berlaku apabila teman-teman memasukkan IP yang sama seperti memakai DHCP Client sebelumnya.

7. Apabila CHR - RADIUS sudah dapat diakses kembali melalui IP, teman-teman dapat langsung mengakses Web Config User Manager dengan alamat:
http://IP_atau_DOMAIN_CHR_RADIUS/userman

Teman-teman akan disambut dengan tampilan Login MikroTik User Manager. Secara default, Identitas Login yang dapat digunakan pertama kali sama seperti ketika mengakses perangkat MikroTik pertama kali. Yaitu dengan Username admin dan Tidak ada Password.

8. Setelah masuk ke Webfig Userman, hal pertama yang akan kita lakukan adalah menambahkan Detail Informasi Router yang akan dijadikan RADIUS Client (dalam kasus ini MikroTik hAP). Masukkan Nama, IP Router (IP yang teman-teman setting di IP -> Address) dan Shared Secret yang digunakan seperti layaknya Password. Kemudian klik tombol Add untuk menambahkan.
9. Kemudian kita buat Profile yang akan digunakan sebagai acuan data untuk user-user kita nantinya (bukan akun). Dalam hal ini, yang harus diperhatikan adalah Shared Users.
Kita harus menentukan kebijakan apakah akun dengan profile ini hanya diperbolehkan untuk mengakses satu layanan dalam satu waktu saja atau boleh mengakses banyak layanan dalam satu waktu. Namun perlu juga diingat bahwa apabila kita mensetting Shared Users lebih dari 1, maka pengguna dengan akun tersebut dapat melakukan multi-login pada akunnya. Tidak perduli apakah untuk menggunakan layanan yang sama atau berbeda.

Kita pun juga dapat membuat limitasi (batasan) penggunaan pada akun tersebut, seperti Batas Penggunaan (Kuota), Kecepatan Upload dan Download, bahkan Durasi Koneksi yang diperbolehkan. Kita dapat membuatnya di Tab Limitations. Setelah limitasi kita buat, kita dapat memasukkannya di Profile yang kita buat sebelumnya agar pengguna dengan profile tersebut menerapkan kebijakan batasan yang sudah kita setting di Limitations.
10. Selanjutnya setelah profile dibuat, kita membuat akun untuk user kita nantinya. Kita dapat membuatnya di menu Users. Klik Add lalu klik One untuk menambahkan satu persatu akun atau Batch untuk men-generate banyak akun sekaligus. Disini saya hanya akan membuat satu.
Isikan informasi dasar akun seperti Username, Password, nah Profile yang telah kita buat akan kita gunakan disini. Kemudikan klik Add untuk membuat Akun.
Sampai disini konfigurasi di sisi RADIUS Server sudah selesai, selanjutnya kita melanjutkan konfigurasi di sisi MikroTik hAP selaku RADIUS Client.

11. Karena sebelumnya kita belum membuat PPPoE Server, maka disini kita akan membuatnya.
Untuk bagaimana cara membuat PPPoE Server di MikroTik teman-teman dapat membacanya disini.

12. Setelah PPPoE Server dibuat, kita aktifkan opsi RADIUS Server untuk PPP kita. Masih di menu PPP, kita klik Tab Secrets lalu klik PPP Authentication & Accounting. Kemudian berikan checklist pada opsi Use Radius lalu klik OK.
13. Selanjutnya kita tambahkan konfigurasi pada Hotspot kita agar menggunakan RADIUS juga. Pada menu Hotspot klik Tab Server Profiles, Klik dua kali pada Profile Server yang kita gunakan lalu menuju Tab RADIUS, kita berikan checklist pada opsi Use RADIUS. Kemudian klik OK.
14. Dan yang terakhir kita tambahkan Detail RADIUS Server di menu Radius yang ada di menu utama Winbox. Klik [+] kemudian berikan checklist pada PPP dan Hotspot lalu isikan IP beserta Shared Secrets yang sudah kita setting sebelumnya, IP disini merujuk ke Server RADIUS. Jika sudah silahkan klik OK.
Konfigurasi selesai, teman-teman dapat mencobanya dengan membuat Interface PPPoE Client di sisi CHR yang satunya dan mencoba login Hotspot dengan akun yang sudah dibuat melalui PC kalian, namun sebelumnya jangan lupa untuk mematikan IP Binding Hotspot Bypass untuk PC kalian.

Log dari MikroTik hAP (RADIUS Client) dan Userman (RADIUS Server). (Maaf saya lupa untuk mensetting waktu sebelumnya, jadinya log sedikit berantakan).

h. Referensi
- MikroTik Wiki - What is User Manager
- Mikrotik Indonesia - Integrasi Hotspot dengan User Manager

i. Kesimpulan
Dengan diterapkannya sistem pengelolaan akun terpusat seperti diatas, maka manajemen akun pun akan lebih mudah dan lebih aman dalam hal kehilangan data akibat kerusakan. Karena database akun terpisah dengan Router utama. Dan hal diatas pun dapat kita implementasikan secara nyata untuk berbagai keperluan seperti Automatic Billing untuk Hotspot Wifi, Manajemen Bandwidth dan Tagihan Bulanan untuk RT-RW Net, dan masih banyak lagi.

Mungkin cukup sekian yang dapat saya tulis, semoga bermanfaat bagi teman-teman semua!
Apabila terdapat kesalahan saya mohon maaf sebesar besarnya dan seperti biasa Terima kasih!
Wassalamu'alaikum Wr. Wb.

Read More

Tuesday, February 7, 2017

Cara mudah membuat PPPoE Server dengan MikroTik

  4 comments
10:37 AM

Assalamu'alaikum Wr. Wb.
Pada kesempatan ini saya akan menuliskan bagaimana cara termudah membuat PPPoE Server menggunakan Fitur PPPoE Server dari MikroTik.

a. Pengertian
PPPoE (Point-to-Point over Ethernet) merupakan sebuah Protokol Jaringan yang digunakan untuk mengenkapsulasi Frame PPP didalam koneksi Ethernet. PPPoE biasanya digunakan oleh ISP untuk menghubungkan Perangkat Modem dari Pengguna agar terkoneksi ke Jaringan ISP dan ke Internet dengan menggunakan bantuan Tunneling.

b. Latar Belakang
Dikarenakan cara kerja PPPoE adalah dengan mengenkapsulasi Frame, yang mana Frame berada di OSI Layer 2 (Data Link) maka agar PPPoE dapat saling terkoneksi maka kedua belah pihak Client - Server harus mengetahui kedua MAC Addresss. Karena dasar inilah kita akan memanfaatkannya untuk menciptakan koneksi aman antara Client dan Server.

c. Maksud dan Tujuan
Dengan digunakannya koneksi PPPoE ini akan menciptakan koneksi Individual antara user satu dngan user yang lain, yang mana ini bertujuan untuk meminimalisir terjadinya Man-in-the-Middle-Attacks atau penyerang yang berada di tengah-tengah antara kita dengan pihak ISP. 

Ini biasa terjadi, contohnya apabila kita menggunakan jaringan lokal secara bersama-sama dan salah satu teman kita menggunakan aplikasi NetCut. Karena cara kerja NetCut adalah memanipulasi MAC Address dari Router dan Client (di Layer 2), nah agar NetCut bekerja NetCut harus dapat mengetahui IP dan MAC Address dari korban. Apabila MAC sudah diketahui, MAC akan mulai menspoofing MAC Client dan mengirimkan MAC palsu ke Router. Karena MAC tidak sesuai maka paket yang dikirim tidak akan sampai kembali. Berbeda apabila kita menggunakan PPPoE, karena user satu dan lainnya tidak dapat saling melihat namun dapat saling terkoneksi.

d. Waktu Pengerjaan
Untuk membuat Server PPPoE ini dibutuhkan waktu kurang lebih 5 Menit.

e. Alat dan Bahan
- Satu MikroTik sebagai PPPoE Server (Model bebas)

f. Langkah Kerja
1. Silahkan teman-teman login ke MikroTik masing-masing, saya menganggap teman-teman sudah dapat terkoneksi ke perangkat melalui Winbox.

2. Setelah masuk, pastikan teman-teman melihat menu PPP yang ada di menu Utama Winbox kemudian klik menu tersebut. Apabila tidak ada silahkan cek apakah paketnya dihidupkan dan diinstall ataukah tidak di System -> Packages.
3. Untuk membuat PPPoE Server kita tinggal menuju Tab PPPoE Servers lalu klik [+], namun dengan cara itu teman-teman harus mensetting satu persatu IP untuk tiap User dalam artian Static/Fixed IP pada sisi server

Yang akan kita lakukan disini adalah mengotomatiskan pembagian IP tersebut. Sehingga sebelumnya kita buat IP Pool terlebih dahulu di IP -> Pool. Tambahkan IP dengan Range yang diinginkan, contohnya disini saya membuat Range dari 10.20.30.1 - 10.20.30.100 kemudian klik OK.

4. Apabila sudah, kembali ke menu PPP -> Profiles. Isikan Name (penamaan bebas), Local Address (berikan IP diluar Range yang sudah dibuat), dan Remote Address (masukkan nama konfigurasi IP Poolnya, dan bila perlu isikan juga DNS nya apabila dibutuhkan. Apabila sudah klik OK.

5. Kemudian kembali ke tab PPPoE Servers kemudian klik [+] untuk menambahkan. Disini yang akan kita ubah adalah Service (Isikan dengan nama bebas), Interface (Pilih Interface yang akan digunakan sebagai Jalur PPPoE nantinya, dan ubah Default Profile agar mengarah ke Profile yang sudah kita buat lalu klik OK.

6. Terakhir kita tinggal menambahkan data user yang dapat menggunakan layanan PPPoE yang kita buat. Klik tab Secrets lalu klik [+] untuk menambahkan. Isikan Name untuk Username, Password, dan arahkan Service menuju PPPoE dan Profile menuju Profile yang sudah kita buat. Apabila sudah klik OK.

7. Pembuatan PPPoE Server selesai!! Untuk mencobanya di perangkat MikroTik lain teman-teman dapat menambahkan Interface PPPoE Client yang dapat teman-teman tambahkan melalui menu Interfaces -> Interface -> PPPoE Client atau PPP -> Interface -> PPPoE Client.

Pembuatan Selesai!

g. Referensi 

h. Kesimpulan
Dengan mengimplementasikan PPPoE, kita dapat menciptakan koneksi antara Client-Server yang lebih aman. Agar manajemen akun semakin baik dan efektif, teman-teman dapat menggabungkan PPP dengan RADIUS Server, contohnya MikroTik Userman.

Cukup sekian yang dapat saya tulis, semoga bermanfaat bagi teman-teman semua!
Dan seperti biasa, Terima Kasih!
Wassalamu'alaikum Wb. Wb.

Read More

Monday, February 6, 2017

Konfigurasi Pertama Pasca Instalasi Debian (Post-Install Initial Config)

  No comments
3:38 PM

Illustrasi - Image Source
Assalamu'alaikum Wr. Wb.
Disini saya akan menuliskan hal-hal yang pertamakali akan saya lakukan ketika Pertama kali login ke sistam operasi Debian yang baru saja diinstall (dalam hal ini Debian 8.6 Jessie).

Artikel ini menggunakan Command Line Interface (CLI) atau Mode Teks untuk melakukan konfigurasinya karena saya menggunakan Debian untuk keperluan OS Server. Sebagian mungkin tidak relevan, dan sebagian mungkin masih relevan dan masih dapat diterapkan pada penggunaan Debian untuk OS Desktop. Juga perhatikan perbedaan versi major Debian yang anda gunakan karena berbeda versi Debian maka nama paket yang tersedia pun besar kemungkinan berbeda,

a. Pengertian
Konfigurasi Pertama (Initial Config) merupakan konfiguras-konfigurasi yang dilakukan pasca instalasi untuk memastikan Sistem Operasi yang diinstall memenuhi dasar Persyaratan untuk masuk ke tahap selanjutnya sesuai dengan tujuan awal kita menginstalasi OS tersebut.

b. Latar Belakang
Dikarenakan banyaknya orang yang biasa mengabaikan hal-hal dasar seperti ini sehingga mereka tidak dapat melanjutkan konfigurasi ke tahap selanjutnya.

c. Maksud dan Tujuan
Untuk membantu teman-teman yang ingin mempelajari OS GNU/Linux, khususnya Debian-derivatives (Debian, dan turunan Debian) mengenai hal-hal dasar yang dilakukan ketika Pasca Instalasi.

d. Alat dan Bahan
- OS Debian [kondisi sudah diinstall]
- Koneksi Internet (Disarankan Online untuk melakukan pembaharuan sistem)

e. Waktu yang diperlukan
Waktu yang diperlukan untuk dapat melakukan Konfigurasi dasar ini mulai dari 10 Menit sampai berjam-jam tergantung dari kecepatan Internet masing-masing.

f. Langkah Kerja

1. Setting Interface Jaringan
Setelah instalasi Debian selesai dan teman-teman login untuk pertama kali, hal pertama yang pasti dilakukan adalah mengkonfigurasi Debian agar dapat terkoneksi ke-Jaringan. Konfigurasi ini opsional apabila di jaringan teman-teman memakai DHCP Server dan ketika instalasi Debian berhasil mendapatkan konfigurasi DHCPnya.

Namun apabila Debian akan digunakan untuk Sistem Operasi Server maka wajib hukumnya untuk mensetting IP Address nya menjadi Static. Untuk mensetting konfigurasinya, dapat dilakukan melalui:
~# nano /etc/network/interfaces
Namun, sebelumnya pastikan kalian mengetahui nama interface yang akan kalian setting. Dapat dicek melalui
~# ip link show
Beberapa contoh konfigurasi yang dapat kalian pakai:
-- DHCP
auto <nama interface>
iface <nama
 interface> inet dhcp
-- Static
auto <nama interface>
iface <nama interface> inet static
address 192.168.1.1
netmask 255.255.255.0
dns-nameservers 192.168.1.254
broadcast 192.168.1.255
network 192.168.1.0
gateway 192.168.1.254
Kemudian simpan dengan CTRL + X lalu "y".
Setelah itu restart service Networking dengan:
~# service networking restart
2. Koreksi Hostname dan Full Hostname
Terkadang kita hanya asal memasukkan Hostname dan Domain ketika melakukan Instalasi Debian. Padahal hal ini penting terlebih apabila PC/Server kita berada di Jaringan Public, karena Hostname & Full Hostname merepresentasikan PC/Server kita ketika berada di Jaringan.
~# nano /etc/hosts
Defaultnya file akan terisi seperti ini:
127.0.0.1 localhost
127.0.1.1 fajar

Kita akan ubah menjadi seperti ini:
127.0.0.1 localhost
192.168.10.1 fajar.smkn1pedan.id fajar
Setelah itu simpan dengan menekan CTRL+X lalu "y"
Kemudian kita edit file /etc/hostname dan isikan dengan Hostname yang bukan FQDN
~# nano /etc/hostname
Lalu kita reboot.

3. [ Opsional ] Perbaiki Settingan Locales
Apabila kita melakukan Instalasi tanpa koneksi Internet, maka ada kemungkinan ketika kita melakukan Instalasi Package akan mendapat pesan Locale Error, bagaimana cara membenarkannya? Yaitu dengan melakukan setting ulang Package Locales
~# dpkg-reconfigure locales
Kita beri checklist pada id_ID.UTF-8 UTF-8 dan untuk Default Locale pilih en_US.UTF-8.

4. Edit Repository List Aptitude (Package Manager)
Apabila Debian teman-teman sudah dapat terkoneksi ke Jaringan, saatnya kita edit file Repository List Aptitude teman-teman.
~# nano /etc/apt/sources.list
--------------- atau ---------------
~# apt edit-sources
Beberapa list Repository Lokal yang dapat kalian gunakan (pilih salah satu):
-- Kambing UI
deb http://kambing.ui.ac.id/debian jessie main contrib non-free
deb-src http://kambing.ui.ac.id/debian jessie main contrib non-free
-- Kartolo Datautama
deb http://kartolo.sby.datautama.net.id/debian jessie main contrib non-free
deb-src http://kartolo.sby.datautama.net.id/debian jessie main contrib non-free
Save lalu lakukan update cache dengan:
~# apt update
5. Perbarui Paket-paket Sistem
Setelah Cache Aptitude nya diperbarui (No.2) lakukan Pembaruan Sistem untuk memastikan versi kernel dan paket-paket aplikasi yang kita gunakan adalah versi terbaru. Yang mana dengan menggunakan versi terbaru maka kecil kemungkinan kita akan mengalami Bug, Celah, atau Error yang dapat membahayakan atau mengganggu sistem* (tergantung Channel Branch yang digunakan).
~# apt upgrade
Apa bedanya apt upgrade dengan apt dist-upgrade? Teman-teman dapat melihat pertanyaan yang sudah dijawab di forum Askbuntu.comWhat is “dist-upgrade” and why does it upgrade more than “upgrade”?

6. Remote Server: OpenSSH (Untuk metode lain: Klik disini)
Untuk keperluan manajemen yang lebih baik dan fleksibel, kita dapat menggunakan protokol SSH. Secara default, OpenSSH Server tersedia sebagai Pilihan Opsional ketika kalian melakukan Instalasi Debian. Namun apabila kalian tidak memberikan checklist ketika instalasi, kalian dapat menginstallnya dengan:
~# apt install openssh-server
Setelah instalasi OpenSSH selesai, teman-teman dapat mengakses melalui Client yang mempunyai SSH Client. Entah menggunakan Terminal Linux atau Aplikasi Third-Party seperti PuTTY, Bitvise SSH Client, XShell, dsb.

7. [Opsional] Install Aplikasi Monitoring Server
Tool Monitoring Server amat berguna terlebih bila digunakan di Headless Computer seperti Server untuk mengawasi kesehatan Servernya, dimana tidak ada Monitor, Keyboard, ataupun Mouse pada Komputer tersebut.

Beberapa Tool monitoring yang dapat kalian gunakan:
1. netdata (Web Based) -- Artikel -- Official
2. Monitorix (Web Based) -- Official
3. Glances (Text & Web Based) -- Official

g. Referensi
--

h. Kesimpulan
Melakukan konfigurasi awal adalah sesuatu yang penting untuk dilakukan agar dapat melanjutkan konfigurasi-konfigurasi selanjutnya, karena konfigurasi awal inilah yang menjadi pondasi untuk melakukan konfigurasi lanjutan.

Sekian yang dapat saya sampaikan, semoga bermanfaat bagi teman-teman semua :)
Dan seperti biasa, Terima Kasih.
Wassalamu'alaikum Wr. Wb.

Read More

Friday, February 3, 2017

Instalasi LAMP Stack (Linux, Apache2, MariaDB, PHP7.0, phpMyAdmin) Debian 8 Jessie

  No comments
7:20 PM

Assalamu'alaikum Wr.Wb.

LAMP Stack - Source Image

a. Pengertian

L.A.M.P Software Bundle (Stack), merupakan sebuah paket Aplikasi Server untuk keperluan menjalankan Aplikasi berbasis Web. LAMP merupakan singkatan dari Linux, Apache2, MariaDB / MySQL, dan Hypertext Preprocessor (PHP), Perl, atau Python. Linux merupakan OS yang digunakan, Apache2 sebagai Webservernya, MariaDB sebagai Sistem Database, dan PHP, Perl, atau Python adalah Bahasa Pemrogramannya.

b. Latar Belakang
Instalasi Paket Program LAMP adalah instalasi yang sudah umum yang biasa dilakukan oleh para System Administrator. Karena Apache2 adalah Web Server yang sudah umum digunakan serta MariaDB dan PHP adalah Database System dan Programming Language yang umum digunakan oleh Web Programmer.

c. Maksud & Tujuan
Dengan melakukan Instalasi Paket Program yang memang sudah 'diakui' oleh kedua belah pihak yaitu System Administrator dan Web Programmer maka akan membuat kedua belah pihak saling diuntungkan. Yaitu sama-sama tidak perlu repot-repot untuk melakukan penyesuaian yang ekstrim untuk keduanya saling mendukung dan berjalan.

d. Jangka Waktu
Instalasi ini memerlukan waktu kira-kira 10-20 menit. Bisa lebih cepat atau lebih lama tergantung dari sibuk atau tidaknya Traffic jaringan.

e. Alat & Bahan
- Koneksi Internet (Apabila menggunakan Repository Luar Jaringan)
- Repository Debian (Bisa menggunakan Ketiga DVD Debian, atau yang sudah disediakan oleh Administrator Jaringan masing-masing).
- OS Debian 8 Jessie

f. Langkah Kerja
1. Saya mengasumsikan Debian sudah diinstall dengan benar dan sudah dilakukan Initial Setting sampai dapat terkoneksi ke Jaringan. Apabila sudah, silahkan teman-teman remote Debian melalui SSH/Telnet.

2. Edit Repository List Debian dengan melakukan perintah Shortcut:
~# apt edit-repository
lalu pilih Editor yang teman-teman sukai. atau dengan versi yang panjang...
~# nano /etc/apt/sources.list
3. Tambahkan Repository berikut:
Repo DotDeb untuk PHP7, karena Official Repo Jessie hanya memiliki PHP sampai PHP5.6
deb http://packages.dotdeb.org jessie all
deb-src http://packages.dotdeb.org jessie all
wget https://www.dotdeb.org/dotdeb.gpg && apt-key add dotdeb.gpg
Mirror Repo terdekat dengan channel main dan non-free, cth Kartolo.
deb http://kartolo.sby.datautama.net.id/debian jessie main non-free
deb-src http://kartolo.sby.datautama.net.id/debian jessie main non-free
4. Setelah ditambahkan, silahkan perbarui Cache Aptitude nya dengan melakukan:
~# apt update
5. Apabila tidak ada Error, mari mulai Instalasinya.

- Apache2
~# apt install apache2
Setelah instalasi selesai, teman-teman dapat mencoba membuka IP atau Domain yang mengarah ke PC/Server untuk melihat apakah instalasinya berhasil atau tidak. Instalasi berhasil apabila ketika dibuka menampilkan Default Page dari Apache2 beserta logo Distro yang digunakan.

- MariaDB
~# apt install mariadb-server
Terkadang ketika Instalasi, teman-teman akan diminta untuk memasukkan Password untuk akun Root MariaDB. Apabila tidak diminta, tidak apa-apa kita bisa membuat passwordnya setelah instalasi.

Setelah instalasi MariaDB selesai, kita lakukan Konfigurasi Awal setelah Instalasinya.
~# mysql_secure_installation
Enter current password for root (enter for none):
<Masukkan password ketika instalasi, apabila tidak diminta maka kosongkan saja>
Change the root password? [Y/n]:
<Apabila belum membuat password, maka ketikkan "Y" lalu Enter, apabila sudah membuat dan tidak ingin mengganti maka ketikkan "n">
Remove Anonymous User? [Y/n]:
<Ketikkan "Y" saja untuk menghapus User Anonim yang ada secara default ketika menginstall MariaDB>
Disable root login remotely? [Y/n]:
<Apabila konfigurasi ini bukan untuk diri pribadi, tentu ketikkan "Y">
Remove test database and access to it? [Y/n]:
<Ketikkan "Y" saja untuk menghapus database testing yang ada secara default>
Reload Privilege table now? [Y/n]:
<Ketikkan "Y" saja untuk mengatur ulang database agar sesuai dengan yang kita konfigurasikan lagi>
Setelah itu restart MariaDB dengan:
~# service mysql restart
- PHP7.0
~# apt install libapache2-mod-php7.0 php-pear php7.0 php7.0-cgi php7.0-cli php7.0-common php7.0-fpm php7.0-mcrypt php7.0-mbstring php7.0-gd php7.0-json php7.0-mysql 
Setelah Instalasi PHP7.0 selesai, Versi PHP7.0 ini tidak secara otomatis aktif. Teman-teman harus mengaktifkannya sendiri sesuai dengan instruksi yang diberikan ketika Instalasi selesai.

Apabila sudah diaktifkan, teman-teman dapat mencoba membuat file Test Page PHP yang ketika dibuka akan memuat semua Informasi dari PHP mulai dari Hostname, Kernel, OS, sampai dengan Modul dan Konfigurasi yang digunakan oleh PHP. Untuk membuatnya :
~# nano /var/www/html/test.php
Isi Filenya:
<?php
          phpinfo();
?>
Jika muncul seperti ini, maka dapat kita pastikan PHP sudah bisa digunakan.
- Web-based Database Management: phpMyAdmin
~# apt install phpmyadmin
Ketika Instalasi teman-teman akan diminta untuk memilih antara Apache2, dan Lighttpd, karena kita menggunakan Apache2 maka pilihlah Apache2. Kita juga akan diminta untuk memasukkan Password Root MariaDB dan Password baru untuk Akun baru yang dibuat oleh phpMyAdmin untuk manajemen databasenya.

Jika sudah, teman-teman dapat membukanya di:
http://IP_atau_Domain_Server/phpmyadmin
Tips:
- Apabila ketika masuk ke akun Root teman-teman mendapatkan pesan Access Denied (Using password: yes) meski password yang teman-teman masukkan sudah yakin benar, teman-teman dapat melakukan pengubahan Plugin Autentikasi yang digunakan oleh Root pada database. Biasanya meski teman-teman tidak bisa login melalui phpMyAdmin tapi teman-teman dapat login tanpa menggunakan password melalui Root Shell atau sudo.
~# mysql -u root -p
Apabila teman-teman dapat masuk tanpa password:
~# use mysql;
~# update user set plugin='' where User='root';
~# flush privileges;
~# quit;
Setelah instalasi paket LAMP selesai, teman-teman sudah dapat menggunakannya untuk menjalankan Aplikasi Web berbasis PHP. Namun optimasi performa disini juga diperlukan, mengingat Apache2 tanpa Tweaking akan memakan resource yang cukup besar. Mungkin tidak terasa apabila traffic masih rendah, tetapi bila traffic sudah semakin tinggi akan terasa beratnya. Sehingga sebisa mungkin lakukan tuning dan tweaking module dan config agar sesuai dengan aplikasi yang dijalankan serta mematikan atau membuang hal-hal yang tidak dibutuhkan.

g. Referensi
Wikipedia - LAMP (Software Bundle)
Dotdeb & Dotdeb - Instructions
Superuser - mysql (mariadb) ERROR 1698 (28000)

h. Kesimpulan
Dengan menginstal Paket LAMP diatas, maka kita sudah dapat menjalankan sebagian besar aplikasi berbasis Web yang dibangun dengan Bahasa Pemrograman PHP. Namun hal yang dilakukan diatas hanyalah sebatas instalasi awal, untuk diterapkan di Lingkungan Produksi haruslah disesuaikan dan dioptimasi semaksimal mungkin untuk dapat menghandle banyak Request dari banyak User serta agar Resource yang ada dapat digunakan seefisien mungkin.

Demikian yang dapat saya tulis, semoga bermanfaat bagi teman-teman semuanya.
Dan seperti biasa, Terima Kasih!
Wassalamu'alaikum Wr. Wb.

Read More

Thursday, February 2, 2017

MikroTik Point-to-Point (PPTP) VPN Tunneling

  2 comments
3:18 PM

Assalamu'alaikum Wr. Wb.
Kita akan melakukan percobaan Point-to-Point Tunneling dengan PPTP antar perangkat MikroTik. Dikarenakan kekurangan alat, disini saya akan menggunakan Dua buah VM MikroTik Cloud Hosted Router (CHR) untuk melakukan percobaan.

a. Pengertian
PPTP atau Point-to-Point Tunneling Protocol adalah salah-satu metode lama yang sering digunakan untuk melakukan pembuatan sebuah Jaringan Virtual Pribadi atau biasa kita sebut Virtual Private Network (VPN).

b. Latar Belakang
Dengan semakin berkembangnya Teknologi Internet yang memungkinkan semua hal dapat kita akses dari satu tempat secara remote.

c. Maksud dan Tujuan
Pembuatan VPN ini dimaksudkan untuk memudahkan kita untuk mengakses semua konten yang berada di sebuah Jaringan Lokal melalui Jaringan Internet dengan bantuan sebuah Tunnel atau Terowongan yang dibentuk oleh VPN. Sehingga dimanapun kita berada selama kita mempunyai akses Internet kita akan selalu terhubung ke Jaringan Lokal tersebut seolah-olah kita benar-benar berada di Jaringan Lokal tersebut.

d. Jangka Waktu
Pengerjaan Konfigurasi ini kurang lebih +- 10 Menit

e. Alat & Bahan yang digunakan
1. (x1) MikroTik RB951Ui-2nD (hAP)
2. (x2) VM MikroTik CHR
3. VirtualBox

f. Langkah Kerja
Kita akan menggunakan topologi sederhana untuk melakukan percobaan ini

TOPOLOGI TUNNELING
Seperti yang tertera digambar Topologi diatas, MikroTik hAP akan dijadikan layaknya Public Network, sedangkan masing-masing CHR akan digunakan layaknya Router yang mempunyai akses ke Jaringan Luar yaitu Internet. Untuk VPN Server akan kita setting disisi CHR 1, sedangkan CHR 2 akan dijadikan sebagai Client.

Kedua VM CHR kita akan set untuk sama-sama memiliki dua Ethernet. Ethernet pertama akan diset menjadi Bridge dan Ethernet kedua akan diset menjadi Host-only Network. Mengapa Host-only? karena sesuai namanya, yang berarti itu akan seperti Private Network antara Satu VM dengan Host (PC kita). Jadi jaringan tersebut tidak akan dapat diakses oleh VM yang lain.

Langkah-langkah:
1. Silahkan masuk ke CHR 1 untuk melakukan Konfigurasi PPTP Server. Apabila teman-teman tidak dapat melakukan Initial Setting dari Winbox melalui MAC Address, maka teman-teman dapat memasukkan IP untuk masing-masing Interface melalui mode CLI.

Dari window Virtual Machine kalian (VirtualBox), silahkan login ke CHR dengan detail user admin dan tidak ada password. Jika kalian hafal dengan menu-menu yang ada di Winbox, maka kalian akan dengan mudah beradaptasi dengan setting melalui CLI. Karena susunan yang ada di Winbox sama dengan yang ada di mode CLI.

Untuk memberikan IP:
[admin@MikroTik] ip addr add
address: <masukkan ip disini & prefix subnet>
interface: <masukkan nama ethernet disini>


Karena saya menggunakan VM, maka secara otomatis PC saya sudah mempunyai IP yang sudah diset di Network Interface VirtualBox. Apabila teman-teman menggunakan Interface fisik, silahkan teman-teman setting IP di PC kalian.

Setelah Initial Setting memberikan IP sudah, teman-teman seharusnya sudah dapat masuk ke CHR melalui Winbox

2. Setelah masuk ke CHR 1 yang akan digunakan sebagai VPN PPTP Server, silahkan buka menu PPP. Apabila tidak ada, pastikan teman-teman menginstall dan meng-enable modul PPP yang ada di System -> Packages.

3. Disini kita akan membuat PPTP kita memberikan IP secara otomatis kepada Client. Oleh karena itu kita akan membuat Range IP untuk Client kita nantinya di IP -> Pool. Klik [+] kemudian tambahkan Range IPnya, contoh format: 192.168.150.1-192.168.150.50

4. Apabila sudah, kembali ke Menu PPP -> Interface. Klik pada Button PPTP Server kemudian berikan checklist pada Enabled lalu klik Apply.


5. Kita akan buat Profile baru untuk settingan User kita nantinya. Klik menu Profiles kemudian klik [+]. Konfigurasikan seperti ini, dan jangan lupa untuk menyesuaikannya dengan konfigurasi teman-teman.


6. Setelah itu kita dapat langsung membuat akun untuk User VPN nya. Klik pada tab Secrets lalu klik [+]. Masukkan Username pada User, dan masukkan Password untuk user tersebut. Disini pada Profile, kita arahkan ke Profile yang sudah kita buat.


Konfigurasi pada sisi PPTP Server sudah selesai, kita akan mensetting PPTP Client pada CHR 2

7.  Apabila CHR 2 juga masih baru, silahkan lakukan hal yang sama seperti Nomer 1 sampai 2.

8. Pada menu PPP -> Interface. Kita Klik [+] lalu pilih PPTP Client. Isikan IP PPTP Server ke Connect to. Kemudian masukkan Username dan Passwordnya. Jangan lupa untuk mencentang Add Default Route agar kita dapat melakukan Komunikasi ke IP Local dari PPTP Server.


9. Agar IP Local antara CHR 1 dan CHR 2 dapat saling berkomunikasi, kita tambahkan Static Route pada sisi PPTP Server yaitu CHR 1.


10. Apabila sudah, silahkan lakukan Ping antar Local IP...

... Reply ...
Percobaan PPTP VPN sederhana kita sudah berhasil!

g. Referensi
Mikrotik Indonesia - Konfigurasi VPN PPTP pada Mikrotik

h. Kesimpulan
Pembuatan VPN PPTP Tunneling cukup mudah dilakukan dengan bantuan perangkat MikroTik, dan juga manfaat dari VPN itu sendiri cukup besar apalagi bagi kita yang harus selalu terhubung ke sebuah jaringan lokal untuk bekerja. Atau hanya untuk sekedar mengakses sebuah data dari Server yang berada di Jaringan Lokal.

Cukup sekian yang dapat saya tulis, semoga bermanfaat bagi teman-teman semua.
Dan seperti biasa, Terima Kasih!
Wassalamu'alaikum Wr. Wb.

Read More

Wednesday, February 1, 2017

Konfigurasi BIND9 untuk Domain Authority (Authoritative-Only DNS) di Local Network

  No comments
11:56 PM

Assalamu'alaikum Wr. Wb.

a. Pengertian
DNS atau Domain Name System atau Sistem Penamaan Domain, adalah sebuah sistem yang menyimpan, mengontrol dan menerjemahkan sebuah Nama Domain menjadi Internet Protocol Address atau sebaliknya. DNS bekerja pada Protokol UDP Port 53.

Sedangkan BIND (Berkley Internet Name Domain) sendiri adalah salah-satu aplikasi DNS Server Open Source yang pertama kali dibuat pada tahun 1980-an oleh 4 orang siswa dari Universitas California. Dan mulai 2009 BIND dikembangkan oleh Internet Systems Consortium (ISC) dan versi BIND yang paling baru adalah BIND10

b. Latar Belakang
Dengan kemampuan manusia yang sulit untuk mengingat sebuah Internet Protocol Address, terlebih IPv6 yang mempunyai Alamat yang sangat panjang maka dipakailah Sistem Penamaan Domain ini yang dapat menerjemahkan sebuah nama menjadi IP ataupun sebaliknya.

c. Maksud dan Tujuan
Tujuan daripada DNS ini sendiri adalah untuk memudahkan Manusia dalam mengingat suatu alamat Host agar lebih mudah untuk mengaksesnya, yaitu dengan Nama Domain tidak dengan Alamat IP.

d. Jangka Waktu
Perkiraan waktu untuk melakukan konfigurasi ini +- 1 Jam

e. Alat dan Bahan
1. Aplikasi DNS Server BIND9
2. (Opsional) Dua buah Server, bisa berupa Fisik maupun Virtual
3. Distro Linux (Distro Server, Debian Prefered)


f. Langkah Kerja
Kita akan melakukan konfigurasi DNS Server BIND9 sebagai Authoritative-Only DNS dengan Konfigurasi sederhana yang akan kita pakai adalah sebagai berikut:



*Note: Semua perintah yang digunakan disini memerlukan akses level Super User, jadi pastikan teman-teman dapat memiliki akses tersebut dengan sudo ataupun login ke akun Root

Langkah-langkah:
1. Login ke Server Pertama yang akan dijadikan Master DNS Server. Bisa melalui beberapa cara, namun saya sarankan melalui SSH, karena lebih fleksibel menurut saya.

2. Konfigurasi Hosts untuk menyesuaikan Nama Domainnya nanti.
~# nano /etc/hosts

Ubah:
192.168.207.1 : Menjadi IP Server tersebut
ns1.smkn1pedan.id : Menjadi Full Hostname serta FQDN
ns1 : Ubah menjadi Hostname Server tersebut

Setelah diubah silahkan Save dengan menekan CTRL+X lalu y

3.Sesuaikan Hostname agar sama dengan yang dikonfigurasikan di /etc/hosts.
~# nano /etc/hostname
Ubah isinya sesuai dengan Hostname yang sudah kita setting, kemudian Reboot untuk memuat konfigurasi baru Hostnamenya atau mudahnya lakukan perintah berikut:
~# hostname -F /etc/hostname
4. Setelah Hostname sudah diubah, teman-teman dapat langsung menginstal BIND9 dan komponen tambahannya:
~# apt update
~# apt install bind9 bind9utils dnsutils
5. Setelah instalasi BIND selesai, hal yang pertama yang akan kita lakukan adalah mensetting agar BIND berjalan pada IP Versi 4 karena disini kita hanya akan menggunakan IPv4. File yang akan kita konfigurasi disini adalah file bind9 yang terletak di /etc/default
~# nano /etc/default/bind9
# run resolvconf?
RESOLVCONF=no

# startup options for the server
OPTIONS="-4 -u bind"
Tambahkan "-4" tanpa tanda kutip.

6. Selanjutnya kita mulai menambahkan data Forward & Reverse Zone untuk Master DNS. File konfigurasi yang terkait dengan ini adalah named.conf.local yang terletak di folder /etc/bind
~# cd /etc/bind
/etc/bind # nano named.conf.local
Tambahkan dan sesuaikan baris berikut:
// Data untuk Forward Zone, Ubah "smkn1pedan.id"
// dan IP allow-transfer menyesuaikan
// konfigurasi teman-teman

zone "smkn1pedan.id" {
        type master;
        file "/etc/bind/db.smkn1pedan.id";
        allow-transfer { 192.168.207.2; };
};


// Data untuk Reverse Zone, Ubah konfigurasi
// menyesuaikan dengan milik teman-teman

zone "168.192.in-addr.arpa" {
        type master;
        file "/etc/bind/db.192";
        allow-transfer { 192.168.207.2; };
};
*Info:
Untuk Reverse Zone, konfigurasi "168.192.in-addr.arpa" bukanlah sembarang penamaan. Penamaan dari Reverse Zone ini akan mempengaruhi bagaimana DNS bekerja memproses permintaan Reverse dan Forward Zone. Serta Konfigurasi ini berperan penting bagi DNS untuk melakukan Lookup Host yang sesuai dengan permintaan.

Jadi mengenai Reverse Zone, "168.192.in-addr.arpa". Sesuai dengan penamaannya Reverse, sehingga Konfigurasi memang dibuat Terbalik.

*ps: Ini hanya asumsi saya, sehingga saya sangat menerima masukan mengenai ini:
Saya belum mengerti betul tetapi karena konsep penamaan Nama Domain yang semakin ke Kiri maka nama tersebut akan semakin Spesifik atau Unique. Sedangkan IP Address semakin ke Kanan maka IP tersebut semakin Spesifik. Mungkin tujuan daripada Reverse Zone adalah untuk menyamakan kedua hal tersebut.

7. Kemudian kita akan mengkonfigurasi bagaimana BIND akan beroperasi, file yang terkait dengan ini adalah file named.conf.options yang juga terletak di /etc/bind
/etc/bind # nano named.conf.options
Ubah konfigurasinya dengan menambahkan:
options {
        directory "/var/cache/bind";
        recursion no;
        allow-transfer { none; };

        dnssec-validation auto;

        auth-nxdomain no;
        listen-on-v6 { none; };
};
Kenapa recursion no? Jangan lupa, kita membuat DNS Server dengan konfigurasi Authoritative-Only. Yang mana konfigurasi ini hanya akan merespon kepada Client yang meminta data mengenai domain yang kita setting. Dengan kata lain, apabila Server tidak memiliki data mengenai request yang diberikan, maka Authoritative Server akan memberikan pesan error atau melempar request tersebut ke Server DNS lain (contohnya ke Recursive Server atau malah menuju ke Root DNS untuk melakukan Lookup dari yang paling atas)

8. Setelah itu kita akan membuat masing-masing database mengenai Record dari masing-masing zone. Disini kita akan mencontoh file konfigurasi yang sudah ada sebelumnya. File yang akan kita contoh adalah db.local dan db.127.
/etc/bind # cp db.local db.smkn1pedan.id
/etc/bind # cp db.127 db.192
9. Kemudian kita konfigurasi file-file tersebut. Kita akan mulai dengan mengkonfigurasi Forward Zone yaitu db.smkn1pedan.id.
/etc/bind # nano db.smkn1pedan.id
Edit dan sesuaikan seperti berikut ini:
Untuk Value dari Serial, silahkan isi sesuai Standar Internasional yaitu YYYYMMDD atau Tahun Bulan Tanggal dari pembuatan Zone tersebut. Jangan lupa untuk setiap pengubahan, value dari Serial harus dinaikkan satu digit. Oleh karena itu akan lebih mudah apabila selain dengan YYYYMMDD kita tambahkan juga 2 Digit Angka untuk Version Control seperti dibawah. 
$TTL    604800
@       IN      SOA     smkn1pedan.id.  root.smkn1pedan.id. (
                        2017020401      ; Serial
                                604800      ; Refresh
                                  86400      ; Retry
                              2419200      ; Expire
                                604800 )    ; Negative Cache TTL

; NS Record
@       IN      NS      ns1.smkn1pedan.id.
@       IN      NS      ns2.smkn1pedan.id.

; A Record untuk NS
ns1     IN      A       192.168.207.1
ns2     IN      A       192.168.207.2

; A Record untuk Subdomain Lainnya
www     IN      A       192.168.200.1
pxvm    IN      A       192.168.199.1
Perhatikan tanda dot (.) diakhir record!! Yang mana tanda dot tersebut artinya adalah Root Domain. Hanya sebuah titik namun apabila terlupakan bisa menjadi kesalahan yang cukup fatal namun sepele, karena dalam beberapa kasus BIND tidak akan mau bekerja apabila konfigurasi belum benar.

10. Selanjutnya kita konfigurasi Reverse Zone, yaitu db.192
/etc/bind # nano db.192
Edit dan sesuaikan konfigurasinya:
$TTL    604800
@       IN      SOA     smkn1pedan.id.  root.smkn1pedan.id. (
                        2017020402      ; Serial
                                604800      ; Refresh
                                  86400      ; Retry
                              2419200      ; Expire
                                604800 )    ; Negative Cache TTL

; Data NS Record
; Isi sama seperti di Forward Zone
@       IN      NS      ns1.smkn1pedan.id.
@       IN      NS      ns2.smkn1pedan.id.

; Pointer (PTR) Record
; Reverse IP <space> IN <space> NS <space> Nama Domain

; PTR untuk Nameserver
1.207   IN      PTR     ns1.smkn1pedan.id.
2.207   IN      PTR     ns2.smkn1pedan.id.

; PTR untuk Subdomain lain
1.200   IN      PTR     www.smkn1pedan.id.
1.199   IN      PTR     pxv.smkn1pedan.id.
Nah disinilah bagaimana konfigurasi dari Reverse Zone disini db.192 dengan yang ada di named.conf.local sebelumnya saling berkaitan. Karena Reverse Zone disini seperti Address Pool yang akan dibaca oleh BIND untuk melakukan Resolving Domain >< IP.

Contohnya disini pada konfigurasi named.conf.local saya menggunakan "168.192.in-addr.arpa". Teman-teman sudah bisa menebaknya? Yap, dengan 168.192 maka Pool yang akan dibaca oleh BIND adalah 192.168.0.0, dimana 0 yang pertama adalah IP Segmen dan yang kedua adalah IP Host.

Mengapa saya mensetting seperti ini? Coba lihat konfigurasi saya, Saya menggunakan 3 Segmen IP berbeda untuk Address (A) Record dari DNS ini. Yaitu 207, 200, dan 199, tentu tidak mungkin bukan apabila saya menambahkan Reverse Zone lagi untuk masing-masing segmen IP? Nah untuk itulah saya melakukannya.

11. Apabila sudah, silahkan lakukan pengecekan Syntax Konfigurasi sebelum melakukan Restart BIND. Caranya adalah:
/etc/bind # named-checkconf
 # Apabila tidak mengeluarkan Output apapun maka Secara Syntax konfigurasi kita sudah benar.
/etc/bind # named-checkzone www.smkn1pedan.id db.smkn1pedan.id
# Apabila mengeluarkan output Zone Loaded dan OK maka Data untuk Record tersebut sudah benar, untuk memastikan silahkan cek satu persatu Record yang sudah kita buat

12. Setelah itu kita Restart BIND dan lakukan Monitoring dari Service BIND untuk mengecek apakah terdapat error atau tidak
/etc/bind # service bind9 restart
/etc/bind # tail -f /var/log/syslog
# Apabila terdapat All Zones Loaded dan Running serta tidak ada pesan Error ataupun Warning maka dapat kita pastikan BIND sudah berjalan dan dapat digunakan

Konfigurasi untuk Master DNS sudah selesai! Selanjutnya kita setting Slave DNS untuk mem-backing apabila terjadi sesuatu dengan Master DNS. Juga karena standard untuk Nameserver adalah minimal ada 2 Server maka kita akan membuatnya sekalian.

13. Untuk Slave DNS, lakukan Hal-hal dari Nomor 1 sampai 5 seperti diatas namun juga dengan penyesuaian.

14. Apabila sudah silahkan buka Konfigurasi BIND named.conf.options dan konfigurasikan seperti Master DNS diatas

15. Kemudian disini adalah bagian yang berbeda, yaitu named.conf.local.
Buka file tersebut dan konfigurasikan menyesuaikan Server teman-teman
// Sesuaikan IP untuk mengarah
// ke Master DNS teman-teman

zone "smkn1pedan.id" {
        type slave;
        file "db.smkn1pedan.id";
        masters { 192.168.207.1; };
};

zone "168.192.in-addr.arpa" {
        type slave;
        file "db.192";
        masters { 192.168.207.1; };
};
Mengapa untuk file kita tidak memakai Absolute Path? karena kita tidak tahu pasti dimana BIND akan meletakkan File Konfigurasi yang nantinya akan kita terima dari Master DNS.

16. Setelah itu kita Restart BIND untuk menerima Konfigurasi Zone dari Master DNS kita. Dan juga lakukan tail ke /var/log/syslog sama seperti diatas untuk mengecek apakah ada Error atau Miskonfigurasi atau tidak. Apabila tidak, selamat! DNS Server teman-teman sudah dapat digunakan. Teman-teman tinggal mengedit dan menambahkan Master dan Slave DNS teman-teman ke List DNS Server di Resolver masing-masing.

Itulah langkah-langkah untuk mensetting BIND9 dengan konfigurasi Authoritative-Only!

g. Referensi
Wikipedia - BIND
Internet Systems Consortium (ISC) - BIND 10
DigitalOcean - How To Configure Bind as an Authoritative-Only DNS Server on Ubuntu 14.04

h. Kesimpulan
Dengan diterapkannya Sistem Penamaan Domain ini sudah pasti akan sangat membantu manusia dalam mengingat sebuah Alamat Komputer dengan cara mengingat namanya, bukan mengingat kombinasi dari angka-angka Alamat IP.

Mungkin cukup sekian yang dapat saya bagikan, apabila terdapat kesalahan saya mohon koreksinya karena saya juga belum terlalu paham mengenai DNS. Semoga bermanfaat bagi teman-teman semua.
Dan seperti biasa Terima Kasih!
Wassalamu'alaikum Wr. Wb.

Read More