Sunday, January 09, 2011

Load Balancing dengan Mikrotik RB450G

Di salah satu kantor cabang kami, masih menggunakan ISP, meskipun kami sudah menyediakan ISP juga. Untuk sementara saya buatkan konfigurasi untuk kantor cabang dengan menggunakan 2 buah ISP sekaligus, sebut saja ISP AW dan ISP LA. Dengan menggunakan Mikrotik RB450G kedua ISP saya masukkan ke port ether1 (untuk ISP AW) dan port ether2 (ISP LA). Client dimasukkan ke port ether3. Pada dasarnya, konfigurasi mengacu kepada panduan dari situs Mikrotik Indonesia, yaitu artikel "Load Balance menggunakan Metode PCC".

Pengaturan Dasar

Hasil percobaan sementara menunjukkan, jika salah satu ISP saya putus koneksinya, client masih bisa browsing ke Internet. Topologi jaringan dan IP Address yang digunakan bisa dilihat pada gambar. Konfigurasi IP Address di RB450G :

/ip address
add address=202.173.18.186/29 interface=ether1
add address=192.168.1.6/27 interface=ether2
add address=192.168.0.1/24 interface=ether3


/ip dns
set allow-remote-requests=yes primary-dns=202.153.5.36 secondary-dns=202.153.0.2


Client menggunakan koneksi kabel UTP dengan IP Address antara 192.168.0.2 s/d 192.168.0.254. Subnet Mask di sisi client = 255.255.255.0, dan gateway di sisi client menggunakan IP 192.168.0.1.

Konfigurasi route di RB450G

/ip route
add dst-address=0.0.0.0/0 gateway=202.173.18.185 distance=2 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=192.168.1.1 distance=1 check-gateway=ping


Agar client bisa mengakses Internet, IP Private Client ke IP Public yang ada di interface ether1 dan ether2.

/ip firewall nat
add chain=srcnat out-interface=ether1 action=masquerade
add chain=srcnat out-interface=ether2 action=masquerade


Sampai langkah ini client sudah bisa mengakses Internet. Coba lakukan pengecekan dengan menggunakan PING dan Web Browser. Jika blum, cek sekali lagi konfigurasi Anda.

Pengaturan Mangle

Traffic yang keluar masuk router dikelompokkan atau dibedakan berdasarkan src-address, dst-address, src-port dan atau dst-port. Router akan mencatat jalur gateway yang dilewati diawal koneksi, sehingga pada paket-paket selanjutnya yang masih berkaitan dengan koneksi awalnya, akan dilewatkan pada jalur gateway yang sama juga. Kita akan membuat daftar IP yang masih dalam satu network router dan memasang mangle pertama kali sbb :

/ip firewall address-list
add address=202.173.18.184/29 list=lokal
add address=192.168.1.0/27 list=lokal
add address=192.168.0.0/24 list=lokal


/ip firewall mangle
add chain=prerouting dst-address-list=lokal in-interface=ether3 action=accept comment="traffic lokal"
add chain=output dst-address-list=list action=accept


/ip firewall mangle
add chain=prerouting connection-mark=no-mark in-interface=ether1 new-connection-mark=koneksi-dari-isp1 passthrough=yes action=mark-connection comment="traffic dari ISP1"
add chain=prerouting connection-mark=no-mark in-interface=ether2 new-connection-mark=koneksi-dari-isp2 passthrough=yes action=mark-connection comment="traffic dari ISP2"


/ip firewall mangle
add action=mark-connection chain=output comment=dns dst-address=202.x.x.x dst-port=53 new-connection-mark=dns passthrough=yes protocol=tcp comment="traffic DNS aw.net.id"
add action=mark-conenction chain=output dst-address=202.x.x.x dst-port=53 new-connection-mark=dns passthrough=yes protocol=udp
add action=mark-routing chain=output connection-mark=dns new-routing-mark=route-to-isp1 passthrough=no



Pengaturan Routing


Pengujian


Thursday, January 06, 2011

Akses Mikrotik Internal via Internet

Awalnya bingung juga bagaimana cara mengakses Router Board yang berada di Internal Private Network dari Public Network (dari rumah). Setelah bertanya ke situs www.mikrotik.co.id, akhirnya ada sedikit pencerahan. Intinya adalah dengan memanfaatkan NAT (Network Address Translation) yang tersedia pada RouterOS. Berdasarkan situs yang direkomendasikan Mikrotik Indonesia, kita dapat mengakses sebuah host di jaringan pribadi melalui jaringan publik melaui sebuah IP Public. Tapi sayangnya tutorial ini tidak menjelaskan bagaimana jika host di jaringan pribadi ada beberapa buah, tidak hanya satu.
Dengan sedikit modifikasi, tutorial tersebut menjadi sangat bermanfaat. Yang dimodifikasi adalah port yang akan diakses dari jaringan publik. Dalam situs Mikrotik dikatakan bahwa Winbox Console menggunakan port 8291/TCP. Sehingga isian "To Ports" pada Destination NAT diubah dari "0-65535" menjadi "8291". Isian "To Ports" pada Source NAT diubah dari "0-65535" menjadi "1002". Port 1002 bisa Anda ganti sesuai keinginan Anda.

Asumsi yang digunakan adalah :
10.140.1.30 : alamat IP Public dari si RB Utama
192.168.1.1 : alamat IP Private dari si RB Utama
192.168.1.2 : alamat IP RB Internal #1
192.168.1.3 : alamat IP RB Internal #2

Setting pada Destination NAT :
1. Setelah WinBox terbuka, masuk ke menu IP --> Firewall --> tab NAT --> Add
2. Tab General
Chain : dstnat
Dst. Address : 10.140.1.30
Protocol : tcp
Dst. Port : 1002
3. Tab Action
Action : dst-nat
To Address : 192.168.1.2
To Ports : 8291
4. OK

Setting pada Source NAT :
1. Setelah WinBox terbuka, masuk ke menu IP --> Firewall --> tab NAT --> Add
2. Tab General
Chain : srcnat
Src. Address : 192.168.1.2
Protocol : tcp
Src. Port : 8291
3. Tab Action
Action : src-nat
To Address : 10.140.1.30
To Ports : 1002
4. OK

Untuk RB Internal #2, silahkan ganti IP Address 192.168.1.2 menjadi 192.168.1.3 dan port 1002 menjadi 1003.

Dengan pengaturan seperti ini maka alamat IP Public untuk akses ke RB Internal #1 dengan WinBox menjadi 10.140.1.30:1002. Sedangkan untuk RB Internal #2, alamatnya menjadi 10.140.1.30:1003. Sekarang Router Board internal bisa diakses dari manapun dari Internet menggunakan WinBox.

Lihat :
http://wiki.mikrotik.com/wiki/NAT_Tutorial
http://www.mikrotik.com/testdocs/ros/2.9/guide/winbox.php

Cara Berhenti dari Milis Yahoo Group

Untuk berhenti dari milis di Yahoo! Group cukup mudah. Kirim email kosong ke nama_milis-unsubscribe@yahoogroups.com. Tunggu balasan atau konfirmasi dari Yahoo! Group dalam orde menit untuk memastikan bahwa anda benar-benar ingin keluar dari milis. Replay kembali e-mail tersebut. Tunggu balasan dari Yahoo! Group (dalam hitungan menit) yang menyatakan bahwa anda sudah tidak menjadi anggota milis.

Isi jawaban dari Yahoo! Group sebagai bentuk konfirmasi keluar dari milis, kira-kira seperti di bawah ini :

From: "Yahoo! Groups Notification"
Subject: Please reply to unsubscribe from lowongan-manager
Date: Thu, January 6, 2011 5:08 am
To: msmunir@batan.go.id

Hello,

We have received a request from you to unsubscribe from the
lowongan-manager group. Please confirm your request by
replying to this message. If you do not wish to unsubscribe from
lowongan-manager, please ignore this message.

Regards,

Yahoo! Groups Customer Care

Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/


Replay-lah e-mail di atas secara langsung, tanpa dimodifikasi apa-apa.

Isi jawaban dari Yahoo! Group yang menyatakan bahwa Anda sudah berhasil keluar dari milis adalah sbb :

From: "Yahoo! Groups Notification"
Subject: You have been unsubscribed from lowongan-manager
Date: Thu, January 6, 2011 5:10 am
To: msmunir@batan.go.id

Hello,

This is to inform you that your request to unsubscribe from
lowongan-manager has been completed.

Regards,

Yahoo! Groups Customer Care

Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/


Format alamat email untuk berhenti berlanggaan baku. nama_milis-unsubscribe@yahoogroups.com. nama_milis bersifat variabel, sesuai nama milis-nya.
Semoga bermanfaat.

Wednesday, January 05, 2011

Migrasi ISP

Hampir satu dekade terakhir, kami tidak pernah pindah ISP. Baru awal tahun 2011 ini kami merasakan pindah ISP. Di satu sisi dapat menimba pengalaman baru, namun disisi lain menambah pekerjaan baru. Pengalaman dan pekerjaan seperti dua sisi mata uang. Konsekuensi pindah ISP adalah rekonfigurasi topologi, pengaturan kembali IP Address internal, relokasi server-server ke data center baru, penggantian server DNS (Domain Name Service), rekonfigurasi server-server. Rekonfigurasi topologi diperlukan dalam rangka efisiensi bandwidth, begitu juga relokasi server. Jika server masih tetap di kawasan, bandwitdh kawasan akan tersita untuk server. Padahal bandwitdh untuk server sudah dialokasikan secara tersendiri. Sayang jika tidak dimanfaatkan.

Server yang direlokasi ke Data Center ISP :
  1. Mail Server HP ProLiant DL380 G5, serpong11, 70.162, HDD 4 x 300 GB SAS, RAM 10 GB
  2. Mail Server HP ProLiant DL380 G4, serpong4, 70.163, HDD 3 x 300 GB UltraSCSI, RAM 2 GB
  3. Web Server HP ProLiant ML370 G3, serpong6, 70.164, HDD 4 x 146 GB UltraSCSI (hanya 2 yang di-mount)
Server yang direlokasi ke Data Center Kuningan :
  1. Gateway : 67.1
  2. Router : 67.2
  3. Digilib (serpong8) : 67.3
  4. NHC : 67.4
  5. SIPL : 67.5
  6. Komputasi : 67.6
  7. Proxy
  8. PTNBR
Server Intranet :
  1. dl1 : 192.168.1.x
  2. IP Cam R. Server SRP : 192.168.1.x
  3. IP Cam R. Kabid SJK : 192.168.1.x
  4. IP Cam R. Workshop Bid. SJK : 192.168.1.x
  5. IP Cam Aula Gd. 71 : 192.168.1.x
  6. BrikerBox : 192.168.1.x
  7. NMS : 192.168.1.7
  8. CCTV : 192.168.1.x

Monday, January 03, 2011

Akses Webmail via HTTPS

Untuk lebih mengamankan akses ke webmail, webmail telah dilengkapi dengan protokol HTTPS. Namun sayangnya HTTPS membutuhkan sertifikat keamanan yang dapat dipercaya seperti VeriSign. Namun sayangnya juga, sertifkat keamanan butuh biaya yang besarnya belum diketahui dan belum tahu harus kemana untuk mendapatkannya. Masih banyak informasi yang harus dikumpulkan terkait dengan penggunaan sertifikat kemanan. Untuk itu sistem webmail belum sampai taraf menggunakan sertifikat keamanan yang valid seperti halnya Internet Banking. Namun demikian, show must go on.

Ketika mengakses halaman webmail http://serpong11.batan.go.id/ atau http://webmail.batan.go.id/ untuk yang pertama kali, anda akan dihadapkan pada halaman konfirmasi sertifikat keamanan dengan tulisan "Sambungan Ini Tidak Terpercaya", atau "This Connection is Untrusted". Pilihlah link yang terbawah dengan tulisan "Saya Paham Resiko Masalah Ini", atau "I Understand the Risks".

Setelah di-klik, akan muncul informasi lanjutan yang berbunyi :
Jika Anda paham apa yang sedang terjadi, Anda dapat mengatur Firefox agar mempercayai identifikasi situs ini. Walaupun Anda mempercayai situs ini, pesan kesalahan ini masih dapat berarti pihak tertentu sedang memodifikasi sambungan Anda.
Jangan menambahkan pengecualian kecuali Anda paham dan mengerti mengapa situs ini tidak menggunakan jenis sambungan aman.


Abaikan pesan ini dengan meng-klik "Tambah Pengecualian", atau "Add Exception...". Kalau anda tidak merasa aman dengan situs ini, silahkan gunakan situs mail lain yang aman.

Setelah tombol "Tambah Pengecualian" di-klik, akan tampil jendela "Tambahkan Pengecualian Keamanan". Klik tombol yang terletak di bagian bawah, yaitu "Konfirmasi Pengecualian Keamanan", atau "Confirm Security Exception". Sekarang anda sudah bisa mengakses webmail kami. Meskipun ada perasaan tidak aman, webmail yang sekarang jauh lebih aman dibanding sebelumnya. Per Januari 2011, webmail sudah dimigrasi dengan menggunakan server baru, dengan spek hardware dan software lebih tinggi. Mudah-mudahan unjuk kerjanya juga lebih tinggi.

Kami akan terus meningkatkan keamanan webmail server sambil jalan (rawat jalan). Mohon maaf jika kurang nyaman. Aman dan nyaman kadang kala berbanding terbalik.

Beberapa pertanyaan yang masih menggelitik. Sertifikat keamanan sebagai fungsi user atau host? Dimana sertifikat keamanan diinstalasi, sisi server, sisi client atau kedua sisi? Dimana bisa mengambil contoh penggunaan serifikat keamanan, Yahoo, BCA atau situs apa? Bagaimana menguji keamanan website setelah menggunakan HTTPS?

Lihat juga :
http://en.wikipedia.org/wiki/HTTP_Secure
http://www.verisign.com/
http://www.thawte.com/

Memisahkan Routing di Mikrotik

Salah satu fitur yang dibutuhkan di router Mikrotik adalah kemampuannya untuk memisahkan routing ke Internasional dan ke IIX atau lokal. Kalau menggunakan panduan BGP-Peer nya Mikrotik Indonesia, kita harus pernah beli di www.mikrotik.co.id dengan nilai minimal Rp 2jt. Sayangnya setiap kali saya beli router board, yang mewakili saya adalah rekanan kantor. Dan tampaknya rekanan membelinya secara langsung, tidak secara online. Kalau tahu BGP Peer harus beli dulu secara online baru bisa mendapatkan layanan dari BGP Router nya Mikrotik, sudah sejak kemaren-kemaren saya beli secara online saja.

Untuk mengatasi hal ini saya mencoba men-download table nice dari Mikrotik Indonesia secara manula. Table di-download dari : http://ixp.mikrotik.co.id/download/nice.rsc. Buka file ini lalu copy isi file mulai baris "/ip firewall address-list" sampai akhir file. Lalu paste ke terminalnya Winbox. Setelah selesai, coba cek melalui menu IP --> Firewall --> tab Address Lists. Di sini akan terlihat alamat-alamat IP lokal Indonesia.

Isi file nice.rsc nya Mikrotik Indonesia adalah :
# Script untuk menambahkan IP Address BGP yang terdaftar di Router NICE(OIXP)
# ke RouterOS dalam ADDRESS-LIST dengan nama "nice"
# Script created by: Valens Riyadi @ www.mikrotik.co.id
# Generated at 3 January 2011 03:18:06 WIB ... 899 lines
# Generated in 65.544 seconds
# How-to: http://www.mikrotik.co.id/artikel_lihat.php?id=23

/sys note set show-at-login=yes note="Using nice.rsc from www.mikrotik.co.id, 3 January 2011 03:18:06 WIB, 899 lines."

/ip firewall address-list
add list=nice address="1.2.3.4"
remove [find list="nice"]
add list=nice address="182.0.0.0/12"
add list=nice address="114.120.0.0/13"
add list=nice address="120.168.0.0/13"

....
add list=nice address="210.247.240.0/24"
add list=nice address="216.244.94.0/24"
add list=nice address="220.247.172.0/24"


Untuk keperluan pemisahan routing secara manual, file di atas harus dimodifikasi agar bisa menjadi file untuk menambah static routing. Perintah menambah static route pada prinsipnya adalah

/ip route
add dst-address=182.0.0.0/12 gateway=ether2-iix

Tadinya mau pakai

/ip route
add dst-address=182.0.0.0/12 gateway=ether2-iix routing-mark=nice

Malah jadi gak bisa.

Sebagai contoh kita akan mencoba melihat traceroute ke www.cbn.net.id. Sebelum diatur :
[root@localhost ~]# traceroute www.cbn.net.id
traceroute to www.cbn.net.id (210.210.145.202), 30 hops max, 60 byte packets
1 192.168.42.1 (192.168.42.1) 0.253 ms 0.280 ms 0.247 ms
2 192.168.1.1 (192.168.1.1) 0.479 ms 0.529 ms 0.584 ms
3 183.91.85.129 (183.91.85.129) 1.188 ms 1.158 ms 1.162 ms
4 202.152.1.113 (202.152.1.113) 1.084 ms 1.173 ms 1.174 ms
5 jktcbrigr1.idola.net.id (202.152.1.2) 1.650 ms 1.642 ms 1.699 ms
6 cbn.openixp.net (218.100.27.165) 2.068 ms 2.770 ms 2.771 ms
7 ip31-131.cbn.net.id (202.158.31.131) 2.697 ms 2.672 ms 2.755 ms
8 202.158.31.214 (202.158.31.214) 2.691 ms 1.614 ms 1.668 ms
9 ccard.cbn.net.id (210.210.145.202) 1.685 ms 1.667 ms 1.635 ms
[root@localhost ~]#


IP 183.91.85.129 adalah interface Internasional. Meskipun CBN adalah situs lokal, kenapa masih lewat interface Internasional?

Kemudian ditambahkan perintah baris sbb :

/ip route
add dst-address=182.0.0.0/12 gateway=ether2-iix

Setelah diatur static route nya, dengan menambahkan 2 baris di atas ini, hasil traceroute menjadi :
[root@localhost ~]# traceroute www.cbn.net.id
traceroute to www.cbn.net.id (210.210.145.202), 30 hops max, 60 byte packets
1 192.168.1.1 (192.168.1.1) 0.178 ms 0.159 ms 0.192 ms
2 183.91.67.1 (183.91.67.1) 1.277 ms 1.207 ms 1.187 ms
3 202.152.1.113 (202.152.1.113) 1.285 ms 1.258 ms 1.269 ms
4 jktcbrigr1.idola.net.id (202.152.1.2) 1.842 ms 1.876 ms 1.906 ms
5 cbn.openixp.net (218.100.27.165) 1.846 ms 2.050 ms 2.059 ms
6 ip127-131.cbn.net.id (202.158.127.131) 1.823 ms 1.894 ms 1.894 ms
7 net30.mgl-6500-2.cbn.net.id (202.158.127.242) 1.893 ms 1.876 ms 1.860 ms
8 ccard.cbn.net.id (210.210.145.202) 1.803 ms 1.966 ms 1.967 ms
[root@localhost ~]#


Sekarang ke CBN sudah lewat interface IIX.

Lihat :
Aturan BGP-Peer

Thursday, December 30, 2010

Perubahan Pengelolaan Nama Domain

Selama ini domain yang kami gunakan tidak pernah didaftarkan dan tidak pernah diurus. Semua tampaknya berjalan otomatis. ISP selalu mengurusnya. Namun, ketika harus pindah ke ISP lain, persoalan domain barulah muncul. Informasi DNS ada di ISP lama sementara kontak dengan ISP lama akan segera berakhir. Jadi, perlu ada upaya untuk memindahkan informasi DNS ini agar pengakses masih tetap bisa mengakses server berdasarkan nama domain meski sudah pindah ISP.

Untuk urusan memindahkan DNS, pihak yang dihubungi adalah temen yang pernah punya pengalaman sejenis, PANDI, ISP lama dan ISP baru. Tidak hanya dihubungi per e-mail, namun juga per telpon agar bisa lebih interaktif. Temen dihubungi untuk mengetahui seluk beluk pindah ISP. PANDI dihubungi karena ia adalah lembaga resmi pengelola domain .id. ISP lama dihubungi agar pada saat yang sudah ditetapkan, ia mau melepaskan informasi DNS yang ia pegang di DNS Server. ISP baru dihubungi agar pada saat yang sudah ditetapkan juga, ia segera melakukan pendaftaran di DNS Server-nya.

Dari temen yang pernah punya pengalaman pindah ISP, didapat informasi, bahwa untuk pindah domain kita cukup melihat informasi yang berada di situs PANDI. Jangan lupa siapkan KTP dan Surat Kuasa. KTP dan Surat Kuasa tidak perlu di foto copy, cukup di-scan ke PDF atau JPG. Pihak PANDI mau menerima dokumen jenis ini. Dari temen ini juga saya bisa dipinjamkan account PANDI untuk sekedar melihat domain yang ia kelola. Rasanya jika hanya omongan saja tanpa bisa melihat domain yang temen saya kelola, kurang marem.

Berdasarkan situs http://www.pandi.or.id/perubahan-data-nama-domain/ didapat informasi bahwa selain ke 2 dokumen di atas, perlu dipersiapkan dokumen Surat Permohonan ke Pandi dan Tanda Bukti Pembayaran. Besarnya pembayaran yang harus kami lakukan adalah Rp 300.000,- dengan rincian :
  1. Biaya perubahan pengelolaan nama domain sebesar Rp 100.000,-. Jika tahun depan pindah ISP lagi, sepertinya biaya ini tidak perlu dibayar lagi, karena pengelolaan sudah ditangan sendiri.
  2. Biaya iuran selama 4 tahun hingga 2012 sebesar 4 x Rp 50.000,- = Rp 200.000,-
Tanda bukti pembayaran via ATM di-scan ke JPG. Surat Permohonan ke Pandi di-scan ke PDF. Jadi sekarang ada 4 dokumen, yaitu :
  1. Surat Kuasa
  2. KTP
  3. Surat Permohonan
  4. Bukti transfer
Ke 4 dokumen ini di-email ke helpdesk@pandi.or.id untuk diproses lebih lanjut. Kami mengirim jam 09.19 dibalas oleh PANDI jam 09.44 s/d jam 10.47 pada hari yang sama. Balasan dari PANDI terdiri dari 5 macam e-mail, yaitu :
  1. domain@pandi.or.id tentang Notifikasi Permohonan Perpanjangan Domain
  2. domain@pandi.or.id tentang Payment Confirmation Sistem Pengelolaan Domain .ID - PANDI
  3. domain@pandi.or.id tentang Payment Approval Sistem Pengelolaan Domain .ID - PANDI
  4. domain@pandi.or.id tentang Selamat, Permohonan Pembaharuan Domain Anda Disetujui
  5. pembayaran@pandi.or.id tentang Re: Fwd: Permohonan perubahan pengelolaan domain
ISP lama juga perlu disurati secara resmi agar ia bisa siap-siap untuk menghapus nama domain dari DNS Server-nya, khususnya per 31 Desember 2010 tengah malam.

ISP baru perlu ditanyai untuk hal-hal sbb :
  1. IP Address untuk DNS Primer dan DNS Sekunder. Data ini akan dimasukkan ke PANDI dan juga server-server.
  2. IP Address, Subnet Mask, dan Gatewy untuk calon DNS Server kami
  3. Penempatan DNS Server di Data Center ISP baru
  4. Mengetahui siapa pengelola DNS Server
  5. Menginformasikan IP Address DNS Server kami ke pengelola DNS Server ISP
  6. Menginformasikan agar hostmaster ISP baru siap meng-advertise per 31 Desember 2010 tengah malam.
Kira-kira berapa lama proses advertise ini ya? Kita tunggu saja.

Saat saya SSH dari rumah, pesan kesalahan yang muncul adalah sbb :
[msmunir@localhost ~]$ ssh xxx@183.91.xxx.xxx
ssh_exchange_identification: Connection closed by remote host
[msmunir@localhost ~]$


Kenapa?
Solusi ?

DNS 2011

Untuk perpindahan DNS, pada waktu perpindahan (tengah malam 31 Desember 2010), agar mengarahkan "Name Server Data" di PANDI menjadi seperti berikut,

Name Server : ns.idola.net.id
IP Address : 202.152.5.36
Name Server : rajawali.idola.net.id
IP Address : 202.152.0.2

Pada pergantian DNS, waktu propagasi membutuhkan setidaknya 24 jam agar ter-update ke semua network di Internet.

Record DNS yang sekarang, beserta record DNS baru yg diinginkan ketika nanti server menggunakan IP Lintasarta, agar dapat kami buatkan dulu record-nya di DNS server kami, mohon untuk tidak menghapus terlebih dahulu record DNS tersebut sebelum perpindahan.

Record DNS yang sekarang :
202.46.xxx.xxx serpongx.xxxxx.go.id serpongx

Record DNS yang baru :
183.91.xxx.xxx serpongy.xxxxx.go.id serpongy

Wednesday, December 29, 2010

Instalasi Jaringan Fiber Optic Metronet

Gambar disebelah ini adalah semacam media converter dari kabel Fiber Optic (FO) Single Mode ke kabel UTP. Perangkat ini adalah Raisecom OPCOM3105-155-4E1-BL yang ditempatkan di NOC pelanggan. Perangkat menjadi semacam hub bagi 2 jalur Internet (Internasional dan IIX) dan bagi 4 jalur intranet (untuk 4 lokasi yang berbeda). Setiap perangkat hanya bisa untuk 4 port. Jadi untuk 6 jalur butuh 2 unit Raisecom.

Konfigurasi Raisecom1 adalah
  1. Segmen KPB-PSJ
  2. Segmen KPB-YGY
  3. Segmen KPB-SRP
  4. Segmen IIX
Konfigurasi Raisecom2 adalah :
  1. Spare
  2. Spare
  3. Spare
  4. Segmen KPB-BDG
Untuk Internasional 30 Mbps Simetris CIR 1:1 menggunakan media converter terpisah. Saya belum mencatat merek dan tipe perangkat yang digunakan.

Nomor Jaringan untuk keperluan pelaporan gangguan dan komplain :
  1. 2010009314 : Akses 10240 kbps (PSJ) dengan SDL Ethernet
  2. 2010009316 : Akses 4096 kbps (YGY) dengan Ethernet Leased Line
  3. 2010009317 : Akses 20480 kbps (SRP) dengan SDL Ethernet
  4. 2010009318 : Akses 2048 kbps (BDG) dengan .....
  5. 2010009320 : Co-Location @ Data Center TBS
  6. 2010009321 : Port IIX 9216 kbps
  7. 2010009324 : Akses 2 Mbps (Cianjur) dengan DSL
  8. 2010009325 : Akses 1 Mbps (Jepara) dengan DSL
  9. 2010009326 : Port Internasional 30720 kbps
  10. 2010009327 : HSDPA
  11. 2010009598 : Radiolink (backup no. jar 2010009317)
Status :
  1. 2010009314 : Akses 10240 kbps (PSJ) : Berita Acara Operasional OK
  2. 2010009316 : Akses 4096 kbps (YGY) : Berita Acara Operasional OK
  3. 2010009317 : Akses 20480 kbps (SRP)
  4. 2010009318 : Akses 2048 kbps (BDG) : Berita Acara Operasional OK
  5. 2010009320 : Co-Location @ Data Center TBS
  6. 2010009321 : Port IIX 9216 kbps : Berita Acara Operasional OK
  7. 2010009324 : Akses 2 Mbps (Cianjur)
  8. 2010009325 : Akses 1 Mbps (Jepara) : Berita Acara Operasional OK
  9. 2010009326 : Port Internasional 30720 kbps : Berita Acara Operasional OK
  10. 2010009327 : HSDPA : Berita Acara Aktivasi OK
Tahapan :
  1. SPK Survey
  2. SPK Pra dan Instalasi
  3. SPK Aktivasi
  4. Berita Acara Operasional

Sunday, December 12, 2010

Konfigurasi NTP Server di Fedora

Untuk keperluan sinkronisasi jam di semua server dan host dalam sebuah LAN, perlu ada sebuah host yang bertindak sebagai NTP Server. Ini lebih baik ketimbang semua host mengacu ke sebuah NTP Server yang berada di luar sana. Untuk menjalankan NTP Server dibutuhkan paket ntp dengan ntpd-nya. Yakinkan bahwa kedua paket sudah terisntalasi, misal dengan mengetikkan perintah baris "yum list ntp*", "ntpdate --help" atau "ntpdate 0.fedora.pool.ntp.org".

Sebelum menjalankan ntpd di calon server NTP, edit file /etc/ntp.conf
driftfile /var/lib/ntp/drift
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict -6 ::1
server 0.fedora.pool.ntp.org
server 1.fedora.pool.ntp.org
server 2.fedora.pool.ntp.org
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys

Tambahkan sebaris nama server acuan NTP Server ke dalam file /etc/ntp.conf :
server ntp.kim.lipi.go.id

Jalankan ntp daemon di calon NTP server:
# chkconfig ntpd on
# service ntpd start

Lakukan sinkronisasi dengan NTP Server luar
[root@nms ~]# ntpdate ntp.kim.lipi.go.id
12 Dec 11:16:26 ntpdate[2413]: the NTP socket is in use, exiting

Pesan "socket is in use" mengharuskan Anda untuk menghentikan terlebih duhulu ntpd-nya
[root@nms ~]# service ntpd stop
Mematikan ntpd: [ OK ]

Lakukan sinkronkan ulang
[root@nms ~]# ntpdate ntp.kim.lipi.go.id
12 Dec 11:16:40 ntpdate[2439]: adjust time server 203.160.128.2 offset -0.000117 sec

Jalankan ntp daemon kembali
[root@nms ~]# service ntpd start
Memulai ntpd: [ OK ]

Tes status NTP Server yang baru saja dibuat dari sisi servernya :
[root@svec ~]# ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
*vm1.jaringinter 216.218.254.202 2 u 36 64 377 1.895 -4.557 0.053
+netmon.cpe.rmut 203.185.69.60 2 u 11 64 377 421.424 -20.924 0.450
-221.139.48.11 115.139.9.150 2 u 3 64 377 223.772 -60.839 0.323
+ntp.kim.lipi.go .UTC. 1 u 4 64 377 5.203 -3.432 0.465
[root@svec ~]#


Sekarang seluruh client sudah bisa mengacu ke NTP Server baru ini. Soal caranya, mungkin setiap client memiliki cara yang berbeda-beda sesuai dengan distro atau sistem operasi yang digunakan. Sebelum melakukan sinkronisasi dari sisi client, cek kesiapan server. Untuk client Fedora :
# ntpdate 202.46.3.xx

Kalau server NTP nya belum siap, dari sisi client, akan ada pesan sbb :
[root@svec ~]# ntpdate 202.46.3.xx
12 Dec 11:31:27 ntpdate[4099]: no server suitable for synchronization found


Kalau server NTP nya sudah siap digunakan, akan ada pesan sbb :
[root@nms ~]# ntpdate 0.fedora.pool.ntp.org
12 Dec 11:42:58 ntpdate[5583]: adjust time server 203.160.128.3 offset -0.013135 sec


[root@nms ~]# ntpdate 1.fedora.pool.ntp.org
12 Dec 11:44:07 ntpdate[5656]: adjust time server 203.160.128.2 offset -0.004170 sec


[root@nms ~]# ntpdate 2.fedora.pool.ntp.org
12 Dec 11:44:41 ntpdate[5733]: adjust time server 202.134.6.170 offset 0.007364 sec


[root@nms ~]# ntpdate ntp.lipi.go.id
12 Dec 11:44:58 ntpdate[5760]: adjust time server 203.160.128.2 offset -0.002601 sec


[root@nms ~]# ntpdate id.pool.ntp.org
12 Dec 11:45:47 ntpdate[6012]: adjust time server 203.153.60.200 offset 0.006996 sec


Sumber : http://www.pool.ntp.org/zone/id

Masalahnya : bagaimana agar NTP Server yang barusan dibuat bisa siap? Padahal semua langkah sudah diikuti. Atau dengan kata lain, bagaimana agar pesan dari sisi client bisa berubah dari :
[root@svec ~]# ntpdate 202.46.3.xx
12 Dec 11:31:27 ntpdate[4099]: no server suitable for synchronization found


menjadi seperti :
[root@nms ~]# ntpdate id.pool.ntp.org
12 Dec 11:45:47 ntpdate[6012]: adjust time server 203.153.60.200 offset 0.006996 sec


Sudah dicoba untuk membuka port 123 (UDP) di sisi server, sisi client tetap mengeluarkan pesan "no server suitable for synchronization found". Emang sih, kalau dicek pakai http://www.yougetsignal.com/tools/open-ports/, port 123 masih closed. Tapi NTP server lain juga katanya closed tetapi tetap bisa digunakan. Salah dimana ya?

Di FreeBSD (serpong6), konfigurasi NTP-nya ada di /usr/local/etc/ntpd.conf. Cek di http://www.cyberciti.biz/faq/freebsd-install-configure-openntpd-server-to-sync-time/


Coba membuka port 123 UDP di NTP Server dengan iptables:
/sbin/iptables -A INPUT -p udp --dport 123 -j ACCEPT
/sbin/iptables -A OUTPUT -p udp --sport 123 -j ACCEPT

Cek dengam perintah baris "nmap -O ip_address", ternyata port 123 belum terbuka juga. Cek dengan yougetsignal, port 123 juga belum terbuka. Ini menyebabkan ntpdate juga belum bisa dijalankan? Entahlah.

Setelah menunggu seharian, akhirnya NTP Server berhasil juga (dengan sendirinya?). Ini agak mengherankan. Keberhasilan ditandai dengan pesan dari sisi client sbb :
[root@nms ~]# ntpdate -u 202.46.3.xx
12 Dec 15:50:20 ntpdate[28830]: step time server 202.46.3.xx offset 11.703232 sec


Konklusi
Setelah ntp terisntalasi pada NTP Server, ubah atau sesuaikan isi file /etc/ntp.conf seperti di bawah ini :
driftfile /var/lib/ntp/drift
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict -6 ::1
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
server 2.id.pool.ntp.org prefer
server 1.asia.pool.ntp.org
server 3.asia.pool.ntp.org
server ntp.kim.lipi.go.id


Setelah server di restart, butuh 10 menitan agar client bisa menjalankan ntpdate. Di server NTP saya tidak perlu menjalankan ntpd dan iptables. ntpd sudah otomatis jalan saat boot. Sedangkan iptables tampaknya memang tidak diperlukan. Port 123 meski tetap tertutup, client tetap bisa menjalankan ntpdate asalkan sabar menunggu 10 menit-an.

Agar tidak perlu menjalankan ntpd setiap kali komputer di reboot, masuk ke menu Sistem --> Administrasi --> Layanan --> pilih layanan ntpd --> Aktifkan --> Jalankan. Langkah ini dapat diulangi untuk layanan ntpdate. Jika menggunakan perintah baris, gunakan perintah baris "chkconfig". Untuk melihat status setiap daemon, gunakan perintah baris "chkconfig --list". Untuk mengaktifkan salah satu layanan, misal ntpd, gunakan perintah baris "chkconfig ntpd on". Untuk menghentikan layanan, misal ntpd, gunakan perintah baris "chkconfig ntpd off".

Saya mencoba restart server beberapa kali, setelah 10 menit berjalan, client baru bisa melakukan sinkronisasi dengan server. Saya belum mencoba menghapus port 123 udp di firewall. Untuk menghapus port 123 UDP dari firewall, masuk ke menu Sistem --> Administrasi --> Firewall --> masukkan password root --> pilih Port-port Lainnya --> pilih port yang mau dihapus, misal Port = 123, Protocol = udp, Layanan = ntp. --> Hapus. Pilih menu Berkas --> Apply --> Keluar.

Melihat open port tapi yang UDP

[root@svec ~]# nmap -sU -P0 -T Aggressive -F 202.46.3.xx

Starting Nmap 5.21 ( http://nmap.org ) at 2010-12-13 12:51 WIT
Nmap scan report for 202.46.3.xx
Host is up (0.0000080s latency).
Not shown: 95 closed ports
PORT STATE SERVICE
111/udp open rpcbind
123/udp open ntp
631/udp open|filtered ipp
2049/udp open nfs
5353/udp open|filtered zeroconf

Nmap done: 1 IP address (1 host up) scanned in 1.25 seconds
[root@svec ~]#


Opsi di nmap :
-sU = UDP scan
-PO[protocol list]: IP Protocol Ping
-T<0-5>: Set timing template (higher is faster)
-F: Fast mode - Scan fewer ports than the default scan

Transparent Proxy dengan Squid

Transparent proxy adalah web cache yang berfungsi membelokkan setiap permintaan port 80 (HTTP) ke proxy server. Transparent proxy memudahkan setting browser di sisi client agar bisa menggunakan proxy secara otomatis. Transparent proxy dapat digunakan untuk melakukan berbagai filter, yaitu alamat client, alamat tujuan, kata-kata terlarang, dan waktu akses. Asumsinya, gateway dan proxy masih dalam satu komputer.

Edit file /etc/squid/squid.conf :
http_port 8080 transparent
cache_mgr msmunir@yahoo.com
visible_hostname proxy.msm.com
cache_dir ufs /var/spool/squid 100 16 256

acl blok dstdomain "/etc/squid/tujuan_terlarang.txt"
http_access deny blok

acl ipblok src "/etc/squid/ipblok.txt"
http_access deny ipblok

acl msmnet src 192.168.2.0/27
http_access allow msmnet

http_access deny all


Sintak di atas jangan sampai kebolak-balik. Misal, jika "http_access allow msmnet" diletakkan di atas, maka deny apapun untuk komputer-komputer yang tergabung dalam msmnet menjadi tidak ada gunanya. Tulisan italic di atas silahkan ganti dengan yang disuka.

Isi file "/etc/squid/tujuan_terlarang.txt" :
www.facebook.com
www.yahoo.com


Isi file "/etc/squid/ipblok.txt" :
192.168.2.5

192.168.2.0/27 adalah client dengan alamat 192.168.2.1 s/d 192.168.2.30.

Setelah konfigurasi disimpan, jalankan perintah baris di bawah ini.
# ifconfig
# /etc/rc.d/init.d/network restart
# ifconfig
# echo 1 > /proc/sys/net/ipv4/ip_forward
# /etc/init.d/iptables stop
# iptables -A FORWARD -s 192.168.2.0/24 -j ACCEPT
# iptables -A POSTROUTING -t nat -s 192.168.2.0/24 -j MASQUERADE
# iptables -A PREROUTING -t nat -p tcp -s 192.168.2.0/24 -d 0/0 --dport 80 -j REDIRECT --to-ports 8080
# service squid restart


Kalau ingin mengubah konfigurasi squid (squid.conf), cukup restart squid-nya saja.
# service squid restart

Contoh filter di squid
Berdasarkan alamat client :
acl msmnet src 192.168.2.0/27
http_access allow msmnet

Berdasarkan alamat tujuan :
acl blok dstdomain "/etc/squid/tujuan_terlarang.txt"
http_access deny blok


Berdasarkan kata-kata terlarang :
acl keywordblok url_regex -i "/etc/squid/keywordblock.txt"
http_access deny keywordblock


Berdasarkan waktu akses :
acl waktu-akses time MTWHF 08:00-16:00
http_access deny alamat_download.txt waktu-akses


Misal isi alamat_download.txt :
.kaspersky.com
.symantecliveupdate.com
.symantec.com
.multiply.com
.grisoft.com
.avg.com
.kaspersky-labs.com


Pilihan deny dan allow silahkan gunakan sesuai dengan kebutuhan. Yang penting sintak pada squid.conf harus berurutan, dari yang mikro ke yang makro. Jangan dari yang makro ke yang mikro. Sempat semalaman saya bingung kenapa squid gak bisa mem-filter.