Sunday, August 10, 2008

instalasi radio online di USA



Melalui Forum Shoutcast aku dapat teman sekaligus menjadi client untuk pembuatan system radio online bernama Voice Network(www.voicesnetwork.com) . Website radio online ini dimiliki oleh Second Life. http://www.secondlife.com yang berada di California USA. Second Life Entertainment Voices Radio Station ini memiliki server VPS di Dallas, dan aku diberi akses root dan password untuk masuk ke systemnya men setup radio online menggunakan shoutcast. Dari cerita Ambrielle yang memberikan pekerjaan ini mengatakan dulu pernah diserahkan pekerjaan ini ke orang lain, tapi sampai batas waktu yang diberikan tidak pernah jalan sehingga dibatalkan. Terus dia bilang bahwa besok radio ini sudah grand opening. Mepet juga nih waktunya, minta cepat lagi. Waktu deal harga dia juga gak ada nego langsung deal saja, hehehe....orang bule sich..

Setelah aku masuk ke server nya di Dallas melalui putty dan remote online aku melihat memang ada bekas settingan shoutcast. Server VPS nya menggunakan Linux Centos canggih juga space dan RAM nya besar dengan 4 IP Public. Lalu aku remove dulu semua bekas instalasi dan konfigurasi shoutcast yang lama. Kemudian aku instalasi ulang(fresh) shoutcast yang baru. Perlu diketahui teknik instalasi shoutcast ku ini memakai skema 1 sesuai pada artikel yang sudah kutulis pada artikel Membuat Radio Online . Radio analog dan DJ Stationnya terpisah dari server VPSnya. Jadi jika instalasi dan konfigurasi server shoutcast ini selesai maka radio analog dan dj stationnya akan terkoneksi ke server ini melalui IP dan port yang sudah dibuka.

Selesai instalasi dan konfigurasi yang perlu diperhatikan membuka firewall untuk port radio streaming agar bisa menerima koneksi dari radio analog dan juga bisa diakses listener. Setelah selesai aku berikan IP dan port serta username dan password ke Ambrielle untuk mencoba langsung dari radio analognya. Sukses si Ambri senang sekali karena radionya jalan sekarang. Dia langsung kirim duit ke paypal ku. :)

Sampai sekarang radionya kulihat masih online terus dengan user cukup banyak, si Ambri juga minta pengembangan untuk multi stream dan different mountpoints. Happy Streaming !! Go international nih !!
root@server [/shoutcast]# ./sc_serv &
[1] 29984
root@server [/shoutcast]# *******************************************************************************
** 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:
<07/23/08@07:35:06> [SHOUTcast] DNAS/Linux v1.9.8 (Feb 28 2007) starting up...
<07/23/08@07:35:06> [main] pid: 29984
<07/23/08@07:35:06> [main] loaded config from sc_serv.conf
<07/23/08@07:35:06> [main] initializing (usermax:100 portbase:8000)...
<07/23/08@07:35:06> [main] No ban file found (sc_serv.ban)
<07/23/08@07:35:06> [main] No rip file found (sc_serv.rip)
<07/23/08@07:35:06> [main] opening source socket
<07/23/08@07:35:06> [main] source thread starting
<07/23/08@07:35:06> [main] opening client socket
<07/23/08@07:35:06> [main] Client Stream thread [0] starting
<07/23/08@07:35:06> [main] client main thread starting
<07/23/08@07:35:06> [source] listening for connection on port 8001
<07/23/08@07:35:10> [sleeping] 0 listeners (0 unique)

Saturday, August 02, 2008

How to email FROM specific IPs, using Postfix

Clientku di India baru saja menambah 4 (internet protocol) IP address baru pada server colocationnya di Ohio USA. Kemudian dia memintaku untuk setup ke empat IP tersebut ke dalam server colo nya dan setup outgoing mail pada setiap IP untuk setiap domainnya. Secara dia mempunyai 5 domain dan 1 domain sudah running pada IP utama (eth0) di server sebelumnya.

Untuk memasukkan ke 4 IP lainnya ke dalam servernya sangat mudah dilakukan dengan settingan IP Alias di linux pada eth0, sehingga terdapat eth0:0, eth0:1, eth0:2, eth0:3.

Untuk mensetting outgoing mail pada masing-masing IP sesuai alamat domainnya atau istilah kerennya "Other Postfix instance" sedikit memusingkan. Akhirnya kembali ke laptop ehhhh.... postfix.org dengan membaca kembali Postfix main.cf file format. Setelah berpusing ria memainkan alur logika dan otak atik eksperiment aku menemukan beberapa langkah untuk mensetup permintaan orang India ini.

Konfigurasi utama di postfix yang sudah jalan pada server ini ada pada /etc/postfix dan /var/spool/postfix. Dengan IP 209.51.x.100 dan domain namadomain100.net.in

Isi didalam konfigurasi /etc/postfix/main.cf yang perlu dicermati agar bisa kita gunakan dalam kasus ini adalah : queue_directory, myhostname, smtp_bind_address, inet_interfaces, alternate_config_directories. Untuk direktory adalah /etc/postfix, /var/spool/postfix, /etc/init.d/postfix

Berikut langkah untuk membuat semuanya menjadi nyata didalam dunia maya dengan contoh setup pada salah satu IP tambahan yaitu IP 209.51.x.200 dengan namadomain200.net.in :

1. Kita buat copy direktory dan file pada konfigurasi utama postfix yang sudah berjalan dengan perintah cp -rp /etc/postfix /etc/postfix200

2. Edit /etc/postfix/main.cf dan tambahkan :
alternate_config_directories = /etc/postfix200
smtp_bind_address = 209.51.x.100
inet_interfaces = 209.51.x.100
myhostname = mail.namadomain.net.in

3. Pada Postfix instance kita harus membuat direktori /var/spool sendiri dan tidak share dengan /var/spool utama dengan perintah mkdir /var/spool/postfix200

4. Kita edit /etc/postfix200/main.cf untuk memasukkan tambahan IP dengan hosname ke domain lain.
queue_directory = /var/spool/postfix200
smtp_bind_address = 209.51.x.200
inet_interfaces = 209.51.x.200
myhostname = mail.namadomain200.net.in

5. Jalankan postfix -c /etc/postfix200 check

6. Untuk running Postfix instance kita haru buat scripts baru agar tidak bentrok dengan yang utama,
cp /etc/init.d/postfix /etc/init.d/postfix200

7. Edit /etc/init.d/postfix200
Ganti semua path yang ke /etc/postfix menjadi /etc/postfix200, termasuk untuk /var/spool/, /var/lock/subsys/, jadi mengikuti path postfix200.

8. Jalankan postfix200 : postfix -c /etc/postfix200 start

9. Cek pake netstat -nltup :

tcp 0 0 209.51.xxx.100:25 0.0.0.0 *LISTEN 13733/master

tcp 0 0 209.51.xxx.200:25 0.0.0.0 * LISTEN 13957/master

jika services master muncul dengan binding ke IP 209.51.xxx.100 dan 209.51.xxx.200 dengan port 25 sudah sukses nih memasukkan IP lain untuk outgoing mail.

10. Cek pakai mail client dan masukkan settingan pada outgoing mail : mail.namadomain200.net.in lalu kirim email ke gmail. Jika sukses cek email tersebut di webmail gmail dan klik messages header dengan mengklik Show original : Hasilnya sbb :
Delivered-To: henry.gultom@gmail.com
Received: by 10.150.92.11 with SMTP id p11cs198399ybb;
        Thu, 31 Jul 2008 10:25:16 -0700 (PDT)
Received: by 10.114.25.19 with SMTP id 19mr10440208way.225.1217525114616;
        Thu, 31 Jul 2008 10:25:14 -0700 (PDT)
Return-Path: <kumar@namadomain200.net.in>
Received:from mail.namadomain200.net.in (x.xxx.xlhost.com [209.51.xxx.200])
        by mx.google.com with ESMTP id 4si50043yxq.8.2008.07.31.10.25.14;
        Thu, 31 Jul 2008 10:25:14 -0700 (PDT)
Baris yang dibold menunjukkan instalasi beda IP untuk outgoing mail smtp berhasil, email FROM specific IPs pada postfix sudah jalan.

Sekarang bagaimana dengan 3 IP dan 3 domain lainnya?

Tinggal ulangi langkah 1,3,4,5,6,7,8,9,10 diatas dan untuk langkah ke 2 hanya menambahkan path alternate_config_directories ke path lainnya seperti : alternate_config_directories = /etc/postfix300 dst. Ini dilakukan pada file /etc/postfix/main.cf

Dalam artikel ini nama domain dan IP disamarkan.

Contact me :
henry@gultom.or.id