Thursday, July 31, 2008

upgrade dns server linux

Boss besar urusan ISP kantorku suruh aku cek DNS kantor apakah terkena dampak Dan Kaminsky DNS cache poisoning. Kemudian kulanjutkan dengan pengecekan melalui situs :

http://www.doxpara.com/
https://www.dns-oarc.net/oarc/services/dnsentropy
https://www.dns-oarc.net/oarc/services/porttest
#dig +short porttest.dns-oarc.net TXT
#dig @4.2.2.3 +short porttest.dns-oarc.net TXT


pingin juga pakai metasploit dan exploit bailiwicked :D

Dari pengujian diatas diketahui versi Bind (the Berkeley Internet Name Domain) yang terinstall sebagai DNS Server terdapat DNS cache poisoning. Dan sudah seharusnya di patch. Akhirnya aku dijinkan eksekusi server dengan hard upgrade, bukan soft upgrade. Kalau soft upgarde hanya mem-patch dns servernya ke versi yang sudah bebas vulnerable. Tapi aku usulkan untuk hard upgrade dalam arti sekalian sistem operasi nya dan bind nya di upgrade. Installasi fresh dari awal. Pekerjaan ini dilakukan pada mesin Primary DNS, dan mesin Secondary DNS. Semua client kantor di Jakarta dan luar Jakarta memakai kedua DNS ini sebagai koneksi ke internet. Sehingga harus dilakukan upgrade ini untuk menghindari hal-hal yang tidak diinginkan. Sistem operasi DNS memakai Debian, dan melalui mailing list Debian Security aku juga menerima pemberiahuan akan dns cache poisoning ini :

http://lists.debian.org/debian-security-announce/2008/msg00184.html

Installasi ini dilakukan pada mesin Secondary DNS dulu dan kemudian dilanjutkan ke Primary DNS, sehingga tidak ada down time untuk DNS ke seluruh client. Aku pinginnya Secondary DNS turun mesin diganti yang baru, tapi karena semua serba mendadak jadinya pergantian mesin Secondary DNS menyusul setelah bagian gudang mengirimkan mesin baru ke NOC. Eksekusinya malam menjelang dini hari. Menurut pengelola ISC Bind, dalam waktu dekat mereka juga akan mengeluarkan patch kembali pada versi Bind 9.3.4-P1.1 dengan versi P2. Nampaknya harus terus memantau aktifitas di ISC Bind untuk mengetahui release-release terbaru mereka untuk DNS Server versi Bind.

Berikut proses instalasi yang sempat di dokumentasikan.

- Instalasi dan Konfigurasi Hard Upgrade Primary DNS(Bind-Chroot)

- Instalasi dan Konfigurasi Hard Upgrade Secondary DNS(Bind-Chroot)

Multiple DNS implementations vulnerable to cache poisoning

DNS(Domain Name System), berfungsi untuk mengatur proses penterjemahan nama domain ke nomor IP atau sebaliknya. DNS merupakan sistem yang menyimpan informasi tentang nama host dan nama domain dalam bentuk basis data tersebar (distributed database) di dalam jaringan komputer, misalkan Internet.

DNS diimplementasikan dalam sebuah system melalui software BIND (Berkeley Internet Name Domain), djbdns , Daniel J. Bernstein's DNS), MaraDNS, QIP (Lucent Technologies), NSD (Name Server Daemon), PowerDNS, Microsoft DNS. Perangkat lunak tersebut memakai metode DNS.

Bulan Juli 2008 dunia IT digemparkan dengan penemuan Dan Kaminsky, Director of Penetration Testing, IOactive yang mengangkat kembali kelemahan pada DNS Cache Poisoning. 3 tahun lalu kasus ini pernah diungkap oleh Ian Green dengan topik DNS Spoofing. Cuman kali ini Dan Kaminsky sangat serius mengungkap kelemahan ini, kemudian beredar di internet exploit bailiwicked yang dapat digunakan untuk dapat meracuni nameserver cache dalam waktu 5-10 detik. Dari rilis pemberitahuan US-CERT diberitahukan beberapa perangkat lunak DNS yang terkena dampak Racun Dan Kaminsky ini. Salah satunya ISC BIND. Dan ISC juga merilis patch softwarenya yang vulnerable melalui pemberitahun di situsnya.

Menurut Jaikumar Vijayan, Computerworld :

DNS servers are responsible for routing all Internet traffic to their correct destinations. The so-called cache-poisoning vulnerability that Kaminsky discovered could allow attackers to redirect Web traffic and e-mails to systems under their control, according security researchers. The flaw exists at the DNS protocol level and affects numerous products from multiple vendors.

Untuk memastikan ini, aku coba install Bind yang belum dipatch, pada salah satu server untuk menjadi sasaran. Lalu melalui laptop aku install Metasploit dan menjalankan expolit bailiwicked AU-EX-2008-0002.txt & CAU-EX-2008-0003.txt, untuk meracuni server Bind yang sudah kuinstall.

hasilnya :

client 202.51.212.xx query (cache) 'com/ANY/IN' denied: 30 Time(s)
client 202.51.212.xx query (cache) 'gmail.com/ANY/IN' denied: 32
Time(s)
client 202.51.212.xx query (cache) 'hotmail.com/ANY/IN' denied: 31
Time(s)
client 202.51.212.xx query (cache) 'net/ANY/IN' denied: 30 Time(s)
client 202.51.212.xx query (cache) 'nosuch.domain/ANY/IN' denied:
30 Time(s)
client 202.51.212.xx query (cache) 'www.yahoo.com/ANY/IN' denied: 31
Time(s)


ho..ho...gawat nih, ayo patch dns server anda segera, khususnya ISP(internet services provider).

Thursday, July 03, 2008

Membuat Radio Online (skema 1)

Tentunya dunia broadcast sudah tidak asing lagi di Indonesia, dan dengan tidak sampai hitungan 1 jam kita bisa memiliki sebuah stasiun radio online yang bisa digunakan untuk bisnis ataupun hanya sekedar ingin selalu bisa bersama dengan kerabat dan teman untuk mendengarkan lagu - lagu favorit, cd audio, seminar atau apapun yang ingin diperdengarkan pada khalayak di Indonesia. Bisa juga untuk broadcast media untuk lagu - lagu ciptaan sendiri dengan domain sendiri. Dengan instalasi dan konfigurasi Radio Online, kini lagu - lagu atau semua media audio dapat dengan mudah didengar oleh siapa saja. Jadi Radio Online itu adalah menyiarkan secara live lewat internet semua siaran analog dari studio radio.

Aku mencoba latihan membuat radio online secara live, sebelum final proyek pembuatan radio online swasta di Balikpapan. Aku menerima proyek pembuatan radio online salah satu radio swasta di Balikpapan setelah survey ke studio mereka yang sudah memiliki perangkat radio untuk siaran langsung menggunakan gelombang radio FM. Radio mereka ini memiliki content siaran news, religius, dan dakwah. Proyek ini masih menunggu finishing ruangan untuk server dan penarikan bandwidth internet dedicated ke kantor radio mereka.

Setelah memahami cara kerja/knowledge tentang radio online, ada 2 skema yang bisa dibuat dalam implementasi radio online ini. Pada latihan sekarang aku memakai skema 1, dan skema 2 akan aku implementasi di final proyek sebuah radio swasta di Balikpapan. Sebenarnya tidak jauh berbeda implementasi skema 1 dan skema 2, perbedaannya hanya pada penempatan PC DJ(disk jockey) dan server streaming yang digunakan serta jumlah bandwidth internet yang dipakai baik dari sisi PC DJ dan server streaming. Konfigurasi software didalamnya juga berbeda sesuai kemauan masing-masing. Simplenya sebagai berikut :

Skema1 :

Komponen A : User(listener)---->Internet<----Server Streaming Radio.

Komponen B : PC/komputer DJ---->Internet.

Komponen A dan Komponen B dihubungkan oleh koneksi bandwidth internet yang berbeda.

Skema 2 :

User(listener)----->Internet<----Server Streaming Radio+PC DJ<----Mixer Audio(radio analog)<----Penyiar(microphone), Tape, CD Player.

pada skema 2 komponen A dan B digabung, berada dalam satu server menggunakan bandwidth internet yang sama.

Pada latihan live ini aku memakai skema 1 karena aku tidak bisa berada dekat perangkat mixer audio di studio radio. Perangkat skema 1 yang di ujicobakan sbb :

Untuk Komponen A : sebagai Server Streaming Radio aku gunakan server VPS(Virtual Private Servers ), memory 256 MB, space 20 GB, O/S Linux Ubuntu-Server8.04, dengan bandwidth internet 512 kbps(kilo bit per second). Server ini terletak di Gedung Cyber(IIX Jakarta). User(listener) akan membaca IP publik yang ada di server ini dengan port koneksi yang sudah kita buka melalui konfigurasi file software streaming radio yang dalam implementasi ini menggunakan SHOUTcast Server.

Untuk komponen B : Uji coba pertama menggunakan laptop ku sebagai PC/komputer DJ dengan bandwidth internet 3,5G HSDPA IndosatM2, Uji coba kedua menggunakan komputer biasa dengan bandwidth internet dedicated 128 kbps. Kedua uji coba ini sukses berjalan baik dan berkomunikasi dengan server streaming SHOUTcast pada komponen A. Untuk O/S menggunakan Windows XP Profesional SP2, Winamp, Plugin winamp

SHOUTcast DSP Plugin, dan kumpulan lagu-lagu mp3.

Instalasinya sebagai berikut :

Komponen A : Server Streaming Radio SHOUTcast VPS sudah terinstall O/S Linux Ubuntu-Server8.04 dengan IP static : 202.145.xx.xxx, settingan IP ini sudah bisa keluar ke Internet. Setelah Instalasi Sistem operasi dan konfigurasi IP maka aku install software Streaming Radio menggunakan SHOUTcast server for Linux. Berikut Instalasi dan konfigurasi SHOUTcast for server.

root@iixsvr:/home/user1# wget http://www.shoutcast.com/downloads/sc1-9-8/sc_serv_1.9.8_Linux.tar.gz
--21:17:07-- http://www.shoutcast.com/downloads/sc1-9-8/sc_serv_1.9.8_Linux.tar.gz
=> `sc_serv_1.9.8_Linux.tar.gz'
Resolving www.shoutcast.com... 207.200.98.25
Connecting to www.shoutcast.com|207.200.98.25|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 60.840 (59K) [application/x-gzip]

100%[=================================>] 60.840 127.06K/s

21:17:10 (126.91 KB/s) - `sc_serv_1.9.8_Linux.tar.gz' saved [60840/60840]

root@iixsvr:/home/user1# tar -zxvf sc_serv_1.9.8_Linux.tar.gz
README.TXT
sc_serv.conf
sc_serv
root@iixsvr:/home/user1# ls
README.TXT sc_serv sc_serv_1.9.8_Linux.tar.gz sc_serv.conf
root@iixsvr:/home/user1# mkdir shoutcast

pindahkan file README.TXTÂ sc_serv sc_serv.conf ke dalam folder shoutcast.

root@iixsvr:/home/user1/shoutcast# nano sc_serv.conf

disini aku edit sesuai kebutuhan latihan dulu saja pada beberapa bagian berikut :
maxuser 32
password renata
port 8000
adminpassword 123456

(save config)
ctrl-x untuk save dan exit dari editor nano.

Maxuser maksudnya jumlah user(listener) yang dapat mengakses/terkoneksi mendengarkan radio kita, Password disini maksudnya adalah password yng akan kita masukkan pada DSP Plugin Winamp pada PC DJ, Port 8000 adalah port SHOUcats server ini yang dibuka/digunakan untuk streaming radio. Adminpassword adalah passowrd admin untuk interface mengadministrasi SHOUTcats Server via web based..

Selesai mengedit file sc_serv.conf Aku jalankan servicesnya :

root@iixsvr:/home/user1/shoutcast# ./sc_serv sc_serv.conf
*******************************************************************************
** SHOUTcast Distributed Network Audio Server
** Copyright (C) 1998-2004 Nullsoft, Inc. All Rights Reserved.
** Use "sc_serv filename.ini" to specify an ini file.
*******************************************************************************
Event log:
<06/30/08@21:21:18> [SHOUTcast] DNAS/Linux v1.9.8 (Feb 28 2007) starting up...
<06/30/08@21:21:18> [main] pid: 4554
<06/30/08@21:21:18> [main] loaded config from sc_serv.conf
<06/30/08@21:21:18> [main] initializing (usermax:32 portbase:8000)...
<06/30/08@21:21:18> [main] No ban file found (sc_serv.ban)
<06/30/08@21:21:18> [main] No rip file found (sc_serv.rip)
<06/30/08@21:21:18> [main] opening source socket
<06/30/08@21:21:18> [main] source thread starting
<06/30/08@21:21:18> [source] listening for connection on port 8001
<06/30/08@21:21:18> [main] opening client socket
<06/30/08@21:21:18> [main] Client Stream thread [0] starting
<06/30/08@21:21:18> [main] client main thread starting
<06/30/08@21:21:46> [sleeping] 0 listeners (0 unique)
<06/30/08@21:21:47> [main] SIGINT; exiting!(0 unique)

Sampai disini instalasi dan konfigurasi komponen A selesai. Tetapi masih belum menerima koneksi streaming dari PC DJ yang akan kita setup.

Komponen B : Uji coba nya menggunakan laptopku dengan sistem operasi Windows XP Profesional SP 2. Dengan catatan koneksi internet di laptop sudah jalan menggunakan HSDPA IM2. Berikut tahapannya :

- Install Winamp versi 5 keatas(sebaiknya yang terbaru), unduh di www.winamp.com

- Install SHOUTcast DSP Plugin for windows, unduh di http://www.shoutcast.com/downloads/shoutcast-dsp-1-9-0-windows.exe


-Konfigurasi plugin SHOUTcast DSP dan Winamp untuk memasukkan lagu-lagu yang ingin kita streaming kan.

Berikut screenshot gambarnya :



Di laptopku sebagai bandwidth internet untuk PC DJ memakai IM2 HSDPA yang sudah terkoneksi baik.



ini langkah menginstal SHOUTcast DSP Plugin, sebelumnya harus sudah install winamp dahulu. Jadi anggap Winamp sudah terinstall dan sekarang install SHOUTcast DSP Plugin, Klik 2 kali file shoutcast-dsp-1-9-0-windows.exe yang sudah kita unduh. Lalu ikut petunjuk seperti di gambar Next-Next-Next saja,






Disini DSP Plugin diinstall di folder Winamp yang sudah terinstall sebelumnya,



Sampai disini proses instalasi SHOUTcast DSP Plugin untuk winamp selesai, tinggal konfigurasi menu didalam DSP Plugin.



Jalankan Winamp---lalu klik 'Option'----'Preferences'



Pada menu sebelah kiri 'Pilih DSP/EFFECT'-----klik 2 kali 'Nullsoft SHOUTCast Sources DSP v1.0.0(dsp_sc.dll)' di menu sebelah kanan,



Sebuah menu akan muncul dengan TAB konfigurasi : 'Main', 'Output', 'Encoder', 'Input'.

Pilih 'Ouput' dan aku edit bagian 'Output Configuration' sbb :

'Address' : 202.145.xx.xxx (ini adalah IP Server Streaming Shoutcast yang sudah dikonfigiurasi diatas)
'Port': 8000 (port yang akan dimasukin/diopen dari jalur PC DJ ke SHOUTcast Radio Streaming secara online) Password : masukkan password yang kita masukkan pada file sc_serv.conf sebelumnya. Jadi konfigurasi disini sama dengan konfigurasi yang kita edit pada file sc_serv.conf,



Pilih 'Encoder' dan rubah Encoder Setting menjadi '128kbps, 44.100kHz Mono' ini tergantung keinginan masing-masing. Lalu kembali ke bagian Output dan klik tombol Conect, nanti terlihat ada proses Status Sent berapa bytes lihat gambar dibawah.



Lagu mp3 yang kita input di Winamp akan distreaming ke server Shoutcast, agar dapat didengarkan user(listener).



Setelah Conect, klik Tab Main dan lihat Input Level berjalan, Kita juga bisa mengalirkan lagu-lagu ke playlist winamp dan menjalankannya.



Klik juga Input dan kita lihat bar input level tanda koneksi berjalan. Disini Input device aku pilih Winamp, kalau aku berada pada skema 2 maka Input Device harus diganti menjadi Soundcard Input. Secara Line in Soundcard akan tersambung ke Mixer Audio penyiar/tape/cd player.

User(listener) akan mendengar Radio online ini melalui browser dengan alamat : http://202.145.xx.xxx:8000/listen.pls File listen.pls digenerate otomatis oleh SHOUTcast Server.

Kita cek event log pada server linux Streaming Shoutcast, terlihat salah satu listener dengan ip 202.51.xxx.xxx sedang mendengarkan lagu streaming ini :

<06/30/08@21:34:17> [source] connected from 124.81.149.194
<06/30/08@21:34:17> [source] icy-name:Marching band ; icy-genre:Drum Band
<06/30/08@21:34:17> [source] icy-pub:1 ; icy-br:128 ; icy-url:http://www.trendmarching.or.id
<06/30/08@21:34:17> [source] icy-irc:#trendmarching ; icy-icq:0 ; icy-aim:gtomslinux
<06/30/08@21:34:49> [source] no data (30s timeout). disconnecting.
<06/30/08@21:35:18> [source] connected from 124.81.149.194
<06/30/08@21:35:18> [source] icy-name:Marching band ; icy-genre:Drum Band
<06/30/08@21:35:18> [source] icy-pub:1 ; icy-br:128 ; icy-url:http://www.trendmarching.or.id
<06/30/08@21:35:18> [source] icy-irc:#trendmarching ; icy-icq:0 ; icy-aim:gtomslinux
<06/30/08@21:40:38> [dest: 202.51.xxx.xxx] starting stream (UID: 0)[L: 1]{A: WinampMPEG/5.52}(P: 0)
<06/30/08@21:46:15> [dest: 202.51.xxx.xxx] connection closed (337 seconds) (UID: 0)[L: 0]{Bytes: 4914967}(P: 0)

Jika kita browsing ke http://202.145.xx.xxx:8000 akan menemukan Status Lagu, Song History dan Admin Page untuk interfaces User(Listener). Tapi Admin Page hanya bisa dibuka menggunakan password yang kita masukan pada file sc_serv.conf





Demikianlah proses instalasi dan konfigurasi Radio Online skema 1 sebagai latihan, kesokan harinya aku coba PC/Komputer lain dengan bandwidth lebih baik dalam kondisi banyak listener dan suara streaming terdengar baik, bersih dan tidak delay, yah kadang ada juga delay sedikit, tinggal di tunning.

Untuk Skema2 yang berhadapan langsung dengan audio mixer dan penyiar akan aku susul artikelnya setelah penyelesaian proyek tersebut on site di Balikpapan.

Resources : www.shoutcast.com, forum SHOUTcast technical support.

Contact me :
henry@gultom.or.id

Tuesday, July 01, 2008

setup mailserver linux

Untuk mensetup sebuah mailserver tidak makan waktu lama, dengan catatan semua software dan kawan-kawannya telah menjadi favorit makanan sehari-hari.

Minggu lalu via telepon aku deal dengan salah seorang yang membutuhkan jasa tersebut, dari perkenalan,teknis penginstalan, sampai deal harga semua via telepun, sangking ngebetnya nih orang pingin hari itu juga dilaksanakan, sampai dia rela antar komputer servernya ke tempat saya. Setelah saya bicarakan teknis dan apa-apa saja yang diperlukan akhirnya mengerti. Dan disepakati keesokan harinya untuk dilakukan di kantornya secara live.

Kebetulan dapat off dari kantor, aku isi waktu dengan mendatangi kantornya di Gedung Patra Jasa Jl. Gatot Subroto. Aku hanya bawa cd netinstall Debian 4 Etch. Karena teknisnya insalasi sistem operasi on site, dan konfigurasi secara remote. Untuk Instalasi sistem operasi Debian Etch untuk server hanya butuh waktu 1 jam jika tidak ada kendala berarti khususnya koneksi ke internet, karena untuk system instalasi dasar masih membutuhkan koneksi ke internet dalam tahap akhir instalasi ini. 1 jam selanjutnya aku seting essential program yang diperlukan dalam instalasi mailserver ini. Bagian IT yang memakai jasanya ikut dan tampak serius melihat setiap proses instalasi ini, sembari belajar silahkan dilihat dan ditanya macam2 juga, kataku dalam hati. Stelah semua selesai termasuk menginstall ssh untuk keperluan remote kurang dari 3 jam aku pulang, karena ada janji dengan temanku urursan keluarga. Nanti malam dilanjutkan kataku, karena di sana servernya hidup terus jadi bisa remote nanti sebelum tidur menyelesaikan konfigurasi mailserver.

Malamnya aku remote ke mesinnya yang ada di lantai 17 Gedung Patra Jasa dari rumah menggunakan IM2. Lumayan cepat karena sama-sama masih dalam jalur IIX Indonesia, hanya lintas ISP saja.

Kebutuhan yang diinginkan client inilah adalah POP3, SMTP, Antivirus, Anti Spam, Webmail, Mail Admin via web, firewall. Karena alur instalasi ini sudah sering kulakukan jadi tidak sulit lagi, semua berjalan cepat dan lancar. Software-software yang di tanamkan ke servernya adalah : Qmail dkk, Vpopmail, Mysql, Vqadmin, Postifx, Amavisdnew, Spamassassin, Pyzor, Razor, DCC, SaneSecurity, Clamav, Aide, iptables, SquirrelMail, fail2ban. Tanpa basa basi server disana ikut saja apa yang kuketik, dan kurang dalam waktu 3 jam konfigurasi selesai. Testing create email baru, test mengunakan mailclient, smtp oke semua. Cek ketangguhan firewal oke(server sendiri kok di hack hehehhe...). Done !!

Besok pagi ngantor seperti biasa dan koordinasi dengan bagian IT nya, bahwa pekerjaan telah selesai, tinggal training dan tanya jawab dalam mengadministrasi mailserver tersebut.