Monthly Archives: October 2011

Bahaya Ext4! Baca ini sebelum pakai Ext4 di CentOS 5.6 dan 6!


Seperti yang saya tulis sebelumnya bahwa file sistem ext4 merupakan lanjutan dari ext3 dengan keunggulan lebih cepat dibandingkan ext3. Tetapi anehnya, meskipun ext4 didukung di CentOS 5.6 tetapi tidak ada secara default di Anaconda, artinya anda tidak dapat memilih ext4 sbg format file saat instlasi CentOS 5.6! Kecuali anda secara manual memasukkan option “ext4” sebelum instalasi dimulai.

Selidik punya selidik ternyata memang masih ada bug serius di ext4, yaitu data bisa hilang! Hal ini karena “delayed alllocation” di ext4 masih belum sempurna, belum bisa menangani jika tiba-tiba listrik mati misalnya.

Penasaran akhirnya saya coba ext4 dan melakukan copy data 4 GB dan bersamaan jalankan fsck kemudian langsung cabut power, hidupkan Server lagi dan ditengah jalan cabut lagi power! Hasilnya … kernel panic! Data pun hancur dengan sukses!

Sebenarnya teknik “delayed allocation” ini berbahaya dan sudah dihindari oleh Microsoft di NTFS, NTFS menawarkan fitur ini hanya sebagai option!

 

Karena bug ini tampaknya ext4 akan mengikuti cara Windows 7/2008 mengatasi allocation ini dengan menggunakan database model, seperti dikutip di Ostatic.com (http://ostatic.com/blog/recent-bug-report-details-data-loss-in-ext4-tso-…) sbb:

 

“Ts’o says the fixes currently in the works should preserve the
performance enhancements and data organization functions of ext4 while
minimizing the chance of data loss. He says ideally, application and
desktop libraries should be reorganized, utilizing small database
structures in lieu of many small files in private home directories.”

 

Mengapa hal ini baru dikomplain setelah CentOS/RHEL mendukung ext4? Inilah dunia Freeware, umumnya user bersikap “wait and see”, sampai keluar versi stabil barulah user melakukan percobaan ūüôā emangnya ada yang mau buang-buang waktu untuk test versi alpha/beta CentOS/RHEL?

So, saran saya, jika anda ada waktu lakukan percobaan migrasi ke ext4 atau tunggu sampai stabilitas ext4. Kalo saya ini sibuk dan maunya yang pasti dan aman … jadi saya jujur aja karena test membuktikan data saya hancur maka saya …¬† “wait and see” aja dulu.

sumber: http://www.centos-id.com/content/bahaya-ext4-baca-ini-sebelum-pakai-ext4-di-centos-56-dan-6

 

HEMAT PULSA – Eurotech GSM GATEWAY+ Quintum DX + ASTERISK


Design Nework

Pada tutorial sebelumnya “https://virtualpabx.wordpress.com/2011/10/01/solusi-hemat-pulsa-dengan-quintum-fwt/” saya sudah menuliskan bagaimana cara penghematan pulsa dengan menggunakan teknologi ftw , namun pada saat di implementasikan di client kurang sesuai dengan kebutuhan mereka. Request yang baru adalah setiap provider harus dapat di setting secara dinamis via web, dan ahamdurillah!!!!! setelah mencoba meng-explore dan mencoba beberapa hari case ini dapat diselesaikan sesuai dengan kebutuhan mereka.

Perangkat yang digunakan:

  1. Quintum Tenox DX (4E1) ¬†–¬†http://www.net.com/pages/home.aspx.
  2. FWT GSM – Eurotech merupakan salah satu produk israel, silahkan baca lebih detail referensinya (http://www.mobilecomms-technology.com/contractors/gsm/eurotech1/) . FWT GMS ini support 32 SIM CARD GSM dan sudah berbasis IP. Untuk remote ke box ftw dapat menggunakan tools client yang sudah disediakan eurotech sendiri.
  3. SIP SERVER (asterisk)
Jumlah provider yang digunakan saat ini adalah:
  1. PSTN INDOSAT
  2. INDOSAT
  3. TELKOMSEL
  4. XL

Total jumlah call yang dapat dihandle si quintum adalah 120 Call ( 3 x 32 SIMCARD + 32 channel PSTN INDOSAT) = 128 – 4 (dchanell) = 124. Jumlah ini sangat banyak karena jumlah agent juga > 120 agent:)

Beberapa hal yang harus diperhatikan untuk mencapai tujuan ini adalah:

  1. Dapat mensetting quintum sehingga dapat di arahkan ke provider mana akan di “lempar” sesuai dengan nomor yang di call oleh agent via web ataupun xlite ataupun IPhone:)
  2. Kemamampuan untuk routing di asterisk sendiri.

Interface Web Setting Call Routing Priority
Gambar dibawah ini menunjukkan interface yang digunakan oleh admin untuk setting call priority, Contoh, ¬†semua nomor telkomsel yang di call via web,xlite, iphone priority pertamanya adalah “TELKOMSEL”, Jika Channel telkomsel sudah full maka akan di “lempar ke INDOSAT”, jika fulll lagi maka akan di “lempar ke PSTN” dan terakhir ke “XL”




Table call_priority, master_provider,prefix_trunk,prefix_number
Berikut adalah table table yang digunakan agar bersifat dinamis, artinya ketika ada prefix baru untuk provider XYZ maka bisa tamhakan di web dan otomatis di generate ke config extensions.conf di asterisk. Jika adalah provider baru yang tambah di client maka otomatis di tambahkan ke table “prefix_trunk”. Untuk proses relaod asterisk dengan menggunakan php dapat di baca di ¬†“https://virtualpabx.wordpress.com/2011/11/06/reload-asterisk-using-socket-php-ami-manager/”

Demikian tutorial singkat ini dibuat, karena saya sendiri kurang mampu untuk menuliskan panjang lebar:)

Semoga memberikan gambaran dan inspirasi bagi semua pembaca, siapa tau ada angan-agan, rencana ke di plan selanjutnya untuk menghemat pulsa CC anda:)

MUSTAFA TAMBUNAN

arp-scan – Scanning and fingerprinting tool


arp-scan adalah salah satu tool via comman dline yang dapat digunakan untuk mendeteksi ip dalam suatu LAN (subnet), tool ini mirip seperti network scanner.

Instalasi dapat dilakukan via rpm atau from source.

Install from source (download)

http://www.nta-monitor.com/tools/arp-scan/archive/arp-scan-1.8.tar.gz

tar -zxvf arp-scan-1.8.tar.gz -C /usr/src/

./configure && make && make isntall

Install from rpm

download dari url dan sesuaikan dengan versi anda

http://pkgs.repoforge.org/arp-scan/

cara menjalankannya

arp-scan –interface=eth0 192.168.0.0/24

Thx semoga bermanfaat

SOLUSI HEMAT PULSA DENGAN QUINTUM + FWT


 


Perusahaan call center beberapa tahun terkrahir ini semakin berfikir bagaimana melakukan penghematan pulsa, software, hardware yang digunakan. Mulai mengganti pesawat telp analog dengan XLITE (teknologi VOIP), mengganti PBX dengan asterisk dsb hingga penghematan pulsa dengan menggunakan FTW.

Perangkat yang digunakan 1 buah QUINTUM TENOR DX  dengan 4E1, masing-masing E1 ini terdiri dari 32 channel dan 1 channel digunakan untuk signaling jadi total channel yang dapat digunakan 31,128-4 = 122 channel.

Line E1 menggunakan ke provider INDOSAT

Line E2 menggunakan ke provider TELKOMSEL

Line E3 menggunakan ke provider THREE (3)

Line E4 menggunakan ke provider PSTN (TELKOM)
Berikut adalah casenya + berdasarkan priority (Artinya jika salah satu provider full maka akan dialihkan ke provider lain)

Urutan Priority

1. TELKOMSEL-> TELKOMSEL ->  THREE -> PSTN

2. INDOSAT->INDOSAT->  THREE -> PSTN

3. THREE -> PSTN

4. PSTN

Asumsi trunk untuk masing-masign provider sudah di config di quintum

TELKOMSEL = 1000

INDOSAT = 2000

THREE = 3000

PSTN = 4000

“Masing-masing trunk sudah di defenisikan di quintum, silahkan cari tutorialnya dan explore sendiri:)” dan pastikan di sisi asterisk sudah ter-register si quintum:)

Berikut adalah lampiran di file extension.conf

;createted by mustafa@inteix.co.id

[globals]
CALL_TELKOMSEL=1000
CALL_INDOSAT=2000
CALL_THREE=3000
CALL_PSTN=4000

MAX_TELKOMSEL=31
MAX_INDOSAT=31
MAX_THREE=31
MAX_PSTN=31

[macro-dial-telkomsel]
exten => s,1,Set(GROUP()={$ARG2})
exten => s,n,NoOp(Current calls in TELKOMSEL : ${GROUP_COUNT(${ARG2})})
exten => s,n,Gotoif($[ ${GROUP_COUNT({$ARG2})} > ${MAX_TELKOMSEL} ]?three:telkomsel)
exten => s,n(telkomsel),Dial(SIP/${CALL_TELKOMSEL}/${ARG1},,tT)
exten => s,n(three),Macro(dial-three,${ARG1},provider_three)

[macro-dial-indosat]
exten => s,1,Set(GROUP()={$ARG2})
exten => s,n,NoOp(Current calls in INDOSAT : ${GROUP_COUNT(${ARG2})})
exten => s,n,Gotoif($[ ${GROUP_COUNT({$ARG2})} > ${MAX_INDOSAT} ]?three:indosat)
exten => s,n(indosat),Dial(SIP/${CALL_INDOSAT}/${ARG1},,tT)
exten => s,n(three),Macro(dial-three,${ARG1},provider_three)

[macro-dial-xl]
exten => s,n,Set(GROUP()={$ARG2})
exten => s,n,NoOp(Current calls in XL : ${GROUP_COUNT(${ARG2})})
exten => s,n,Gotoif($[ ${GROUP_COUNT({$ARG2})} > ${MAX_XL} ]?three:xl)
exten => s,n(xl),Dial(SIP/${CALL_XL}/${ARG1},,tT)
exten => s,n(three),Macro(dial-three,${ARG1},provider_three)

[macro-dial-three]
exten => s,1,Set(GROUP()={$ARG2})
exten => s,n,NoOp(Current calls in THREE : ${GROUP_COUNT(${ARG2})})
exten => s,n,Gotoif($[ ${GROUP_COUNT({$ARG2})} > ${MAX_THREE} ]?pstn:three)
exten => s,n(three),Dial(SIP/${CALL_THREE}/${ARG1},,tT)
exten => s,n(pstn),Macro(other-other-gsm,${ARG1},other_provider)

[macro-other-gsm]
exten => s,1,Set(GROUP()={$ARG2})
exten => s,n,NoOp(Current calls in OTHER GSM : ${GROUP_COUNT(${ARG2})})
exten => s,n,Gotoif($[ ${GROUP_COUNT({$ARG2})} > ${MAX_OTHER_GSM} ]?pstn:three)
exten => s,n(three),Dial(SIP/${CALL_OTHER_GSM}/${ARG1},,tT)
exten => s,n(pstn),Macro(dial-pstn,${ARG1},pstn)

[macro-dial-pstn]
exten => s,1,Set(GROUP()={$ARG2})
exten => s,n,NoOp(Current calls in PSTN : ${GROUP_COUNT(${ARG2})})
exten => s,n,Gotoif($[ ${GROUP_COUNT({$ARG2})} > ${MAX_PSTN} ]?HANGUP)
exten => s,n,Set(areacode=${EXTEN:1:3})

exten => s,n,Gotoif($[ ${areacode}=021 | ${areacode}=025 ]?lokal:sljj)
exten => s,n(lokal),Dial(SIP/${CALL_PSTN}/${ARG1:3},,tT)
exten => s,n(sljj),Dial(SIP/${CALL_PSTN}/${ARG1},,tT)

[macro-dial-axis]
exten => s,1,Set(GROUP()={$ARG2})
exten => s,n,NoOp(Current calls in AXIS : ${GROUP_COUNT(${ARG2})})
exten => s,n,Gotoif($[ ${GROUP_COUNT({$ARG2})} > ${MAX_AXIS} ]?pstn:axis)
exten => s,n(axis),Dial(SIP/${CALL_AXIS}/${ARG1},,tT)
exten => s,n(pstn),Macro(dial-pstn,${ARG1},pstn)

[ecentrix-agents]
;TELKOMSEL = 0811,0812,0813,0852,0853
exten => _9081[123]X.,1,Macro(dial-telkomsel,${EXTEN:1},provider_telkomsel)
exten => _9081[123]X.,n,Hangup()
exten => _9085[23]X.,1,Macro(dial-telkomsel,${EXTEN:1},provider_telkomsel)
exten => _9085[23]X.,n,Hangup()

;INDOSAT = 0814,0815,0816,0855,0856,0857,0858
exten => _9081[456]X.,1,Macro(dial-indosat,${EXTEN:1},provider_indosat)
exten => _9081[456]X.,n,Hangup()
exten => _9085[678]X.,1,Macro(dial-indosat,${EXTEN:1},provider_indosat)
exten => _9085[678]X.,n,Hangup()

;XL = 0817,0818,0819,0859,0878
exten => _9081[789]X.,1,Macro(dial-xl,${EXTEN:1},provider_xl)
exten => _9081[789]X.,n,Hangup()
exten => _90859X.,1,Macro(dial-xl,${EXTEN:1},provider_xl)
exten => _90859X.,n,Hangup()
exten => _9087[789]X.,1,Macro(dial-xl,${EXTEN:1},provider_xl)
exten => _9087[789]X.,n,Hangup()

;THREE = 0898-0899
exten => _9089[6-9]X.,1,Macro(dial-three,${EXTEN:1},provider_three)
exten => _9089[6-9]X.,n,Hangup()

; (OTHER GSM)
;AXIS = 0898-0899
exten => _9083[18]X.,1,Macro(dial-other-gsm,${EXTEN:1},other_gsm)
exten => _9083[18]X.,n,Hangup()

Demikian tutorial ini dibuat , semoga memberi inspirasi untuk hemat pulsa:)

Rsyn Backup –delete-after:)


Pada kesempatan ini akan dijelaskan sinkronisasi backup dengan menggunakan rsync yang di integrasikan dengan openssh. Cara ini saya terapkan di salah satu sistem call center yang merupakan client perusahaan.Cara ini sebenarnya agak sedikit “koyol” tapi apa boleh dikata karena keterbatasan hardware /server. Apila ada beberapa server direkomendasikan¬† menggunakan HA.¬† Kenapa saya katakan terbatas karena server hanya ada 2 yaitu 1 server untuk IPBX dan satu untuk server CRM. Untuk database¬† saya menggunakan replikasi mysql dengan tipe cross aritnya server IPBX replikasi ke server CRM dan database CRM di replikasi ker server IPBX. Masing-masing OS menggunakan Centos 5.5 versi 64 bit.

Direktory yang akan di sinkronisasikan adalah /var/www/html/, semua direktory /var/www/html yang di IPBX akan di backup ke /var/www/html/ server CRM dan sebaliknya.

Berikut adalah implementasinya.

IPBX : 192.168.137.100

CRM : 192.168.137.200

[root@centos5-01 ~]# uname -r
2.6.18-194.el5
[root@centos5-02 ~]# uname -r
2.6.18-194.el5

Generate public key di masing-masing server

[root@centos5-01 ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
/root/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
05:70:56:f6:4c:f2:76:53:1b:85:6e:e5:57:cd:f7:ff root@ipbx

[root@centos5-01 .ssh]# ls -l
total 12
-rw——- 1 root root 1675 Oct¬† 1 12:17 id_rsa
-rw-r–r– 1 root root¬† 391 Oct¬† 1 12:17 id_rsa.pub
-rw-r–r– 1 root root 3154 Sep 25 21:44 known_hosts

[root@centos5-01 .ssh]# ssh-copy-id -i id_rsa.pub root@192.168.137.200
10
root@192.168.137.200’s password:
Now try logging into the machine, with “ssh ‘root@192.168.137.200′”, and check in:

.ssh/authorized_keys

to make sure we haven’t added extra keys that you weren’t expecting.
Lakukan pengetesan apakah ssh ke server CRM tanpa password
[root@centos5-01 .ssh]# ssh root@192.168.137.200
Last login: Sat Oct  1 11:38:45 2011 from 192.168.137.100

SUKSES

“Lakukan hal yang sama dari server CRM ke server IPBX”

Next

[root@centos5-01 ~]# cd /var/www/html/

root@centos5-01 html]# ls -l
total 2420
drwxr-xr-x 15 cactiuser users    4096 Oct  1 11:43 cacti
drwxr-xr-x 15 root      root     4096 Oct  1 12:24 dahsboard

Direktory yang akan di backup adalah dashboard ke server crm /var/www/html/

Create 1 buah shell script di direktory /usr/bin ( ini terserah anda)

vim rsync-var-www

#!/bin/bash
/usr/bin/rsync -avz –delete-after -e ‘ssh -p 22’ /var/www/html/dashboard/ root@192.168.137.200:/var/www/html/

Option –delete-after digunakan agar isi direktory dashaboard selalu sama dengan isi dir di server “backupnya” tentunya setelah cron dijalankan sesuai dengan parameter yang di set.

Masukkan ke crontab

crontab -e

Tambahkan script di bawah

0 1 * * *  sh /usr/bin/rsync-var-www.sh > /dev/null 2>&1

Backup akan di jalankan setiap hari jam 1 pagi hari (dini hari)

Hal yang sama lakukan dari server CRM ke server IPBX

Demikian tutorial ini dibuat semoga bermanFAAT:)

Thx

 

Troubleshoot SSH yang lambat antar host


Beberapa yang lalu teman saya ingin menjalankan backup data voice recording antar host menggunakan rsyn yang di integrasikan dengan openssh.  Size file recording yang akan di pindahkan 50 GB, ketika mengenerate ssh-keygent dan ingin memindahkan public_key (id_rsa.pub) ke server backup backup dengan menggunakan ssh-copy-id tetapi respose dari sisi server backup sangat lambat.

Berikut adalah tampilannya

[root@server212 .ssh]# ls -l
total 16
-rw——- 1 root root 1191 Oct¬† 1 07:03 authorized_keys
-rw——- 1 root root 1671 Sep 21 02:31 id_rsa
-rw-r–r– 1 root root¬† 396 Sep 21 02:31 id_rsa.pub
-rw-r–r– 1 root root 1588 Sep 23 08:19 known_hosts

[root@server212 .ssh]# ssh-copy-id -i id_rsa.pub root@203.86.xx.xx -v
debug1: Authentications that can continue: publickey,gssapi-with-mic,password
debug1: Next authentication method: gssapi-with-mic

Cara untuk mengatasi case ini adalah dengan meng-edit /etc/ssh/sshd_config di sisi server backup (remote)

[root@server213 .ssh]# vim sshd_config

Sebelum

# GSSAPI options
GSSAPIAuthentication yes
#GSSAPIAuthentication no
GSSAPICleanupCredentials yes

Sesudah

# GSSAPI options
#GSSAPIAuthentication no
GSSAPIAuthentication no
GSSAPICleanupCredentials no
#GSSAPICleanupCredentials yes

Restart service sshd

[root@server213 ssh]# /etc/init.d/sshd restart

Coba ssh ke remote server dan gunakan option -v (verbose) harusnya lebih cepat:)
Semoga bermanfaat


shisdew

Listens until think alike

moses.spaceku@yahoo.com / voip ipbx

Hosted PBX, IP-PBX SOHO/ CALL CENTER, VOICE GATEWAY, VOICE CARD, COST EFECTIVE SOLUTIONS (LCR), GSM/CDMA GATEWAY

%d bloggers like this: