SMS Gateway menggunakan Gammu di Ubuntu

Gammu adalah software opensource yang cukup handal untuk membangun SMS gateway. pada penerapannya, bisa dikembangkan menjadi berbagai macam aplikasi terapan seperti untuk pooling SMS, server pengisian pulsa dan sebagainya. Konsep dan cara kerja gammu sangat sederhana. Gammu melakukan koneksi ke HP. membaca SMS yang ada di handphone mengambilnya, dan menyimpannya ke dalam media penyimpanan di komputer. baik itu berupa file text atau ke dalam database seperti MySQL ataupun PostgreSQL.

Pada percobaan ini, saya menggunakan HP siemens M55 dengan kabel konektor BlueTech USB.

skema..

[hahdphone] <-> [gammu] <-> [Database Mysql] <-> [Intefaces]

Installasi Gammu

gammu dapat di download di website  resminya di sini
http://dl.cihar.com/gammu/releases/gammu-1.27.92.tar.gz

Download gammu
#wget http://dl.cihar.com/gammu/releases/gammu-1.27.92.tar.gz

Read the rest of this entry »

Installasi Server Linux untuk Warnet Speedy (2) – Optimalisasi Bandwidth

Untuk mengoptimalkan bandwidth user, yang perlu kita lakukan adalah menginstall proxy server. Di linux, squid adalah software yang dugunakan sebagai proxy server.

Fungsi proxy server ada beberapa. Diantaranya adalah

1. Web Cache

Fungsi ini adalah dimana proxy bertugas sebagai internet server. Dimana ketika ada permintaan website dari user, proxy akan mengambil datanya ke internet, kemudian menyimpannya (caching) dalam memory di proxy. untuk kemudian dapat digunakan kembali. jika ada  request pada halaman yang berisi gambar, text yang sebelumnya pernah diakses sebelumnya  maka data tersebut tidak harus diambil langsung ke internet melainkan data akan diberikan oleh proxy server local. jadi bandwidth lebih irit. Read the rest of this entry »

Installasi Server Linux untuk Warnet Speedy (1)

Baru – baru ini saya dapat job pasang server gateway di sebuah perusahaan yang tidak perlu saya sebutkan namanya. kenapa ada embel2 warnet di judulnya ? ya.. sebelas-duabelas lah.. masih  mirip – miriplah..

Skenarionya begini.

warnet berlangganan sapidi, terus yang akan kita lakukan adalah menginstall server warnet. yang berisi iptables, dns server, dhcp server, proxy, apache dan lain sebagainya. tutorial ini akan panjang, jadi saya split menjadi beberapa bagian.

diagram ini adalah skenarionya

jaringan lokal <–> server warnet <–> modem sapidi <–> internet…

Read the rest of this entry »

Setting NIS server ubuntu

NIS Server adalah sebuah layanan di jaringan untuk memberikan single sign on authentication.
Komputer client yang berbasis linux bisa login dengan menggunakan username di server.
Dengan menambahkan NFS, home direktori user,bisa dibuat untuk disimpan secara terpusat di server.
Skenario :
Server IP Address : 192.168.3.100
Client IP Address : 192.168.3.102 Read the rest of this entry »

DNS dan Apache virtualhost on Ubuntu . Multiple site dalam 1 server

Terkadang kita mempunyai sebuah komputer server yang dijadikan sebagai webserver sekaligus sebagai DNS server. Dimana, nantinya dalam satu server tersebut dapat mengelola beberapa website sekaligus meskipun hanya menggunakan satu unit server. Sebagai contoh, dalam satu server kita dapat mengelola beberapa website sekaligus misal : firman.edu, penmaru.firman.edu, ft.firman.edu dan seterusnya..

Pada percobaan kali ini, saya menggunakan Linux distribusi Ubuntu 9.04 (Jaunty Jackalope).

INSTALASI DAN KONFIGURASI DNS

untuk menginstall DNS, software yang harus diinstall adalah bind. saat ini, versi terakhri adalah versi 9.


$ sudo apt-get install bind9

langkah selanjutnya adalah membuat zone. Zone yang akan kita buat adalah zone dengan nama domain firman.edu

Edit file /etc/bind/named.conf dan tambahkan baris berikut :


zone "firman.edu" {
type master;
file "/etc/bind/firman.edu.db";
};

Langkah selanjutnya adalah membuat sebuah file dengan nama /etc/bind/firman.edu.db . Nama file ini harus sesuah dengan isi file /etc/bind/named.conf yang kita buat sebelumnya. kemudian isikan dengan baris berikut :

$TTL    604800
@       IN      SOA     @  root.firman.edu. (
                     2                   ; Serial
                    604800         ; Refresh
                    86400          ; Retry
                    2419200        ; Expire
                    604800 )       ; Negative Cache TTL

@               IN      NS      ns1
                   IN      A       192.168.1.100
ns1             IN      A       192.168.1.100

Load ulang konfigurasi DNS


$ sudo /etc/init.d/bind9 reload

Ubah konfigurasi DNS supaya diarahkan ke komputer kita sendiri dengan mengedit file /etc/resolv.conf

nameserver 192.168.1.100
nameserver 127.0.0.1

Cek konfigurasi dengan menggunakan tool nslookup ataupun dig


$ nslookup firman.edu

dan hasilnya, mestinya sbb :


Server: 192.168.1.100
Address: 192.168.1.100#53


Name: firman.edu
Address: 192.168.1.100

Jika hasilnya seperti di atas, artinya konfiguras DNS sudah beres. Jika ada yang salah, lihat lognya di file /var/log/syslog

INSTALLASI APACHE WEBSERVER, PHP & MYSQL


$ sudo apt-get install apache2 mysql-server php5 php5-mysql

Secara default, Dokumen Root apache2 yang diinstall di ubuntu disimpan dalam direktori /var/www

oleh karena itu, edit file index.html di direktori /var/www menjadi sbb :


Welcome to firman.edu

Simpan kemudian cek di web browser…

MEMBUAT SITE BARU

Site baru yang dimaksud adalah membuat website dengan menggunakan subdomain. tetapi mempunyai tampilan halaman web yang berbeda dengan halaman web utama. Contohnya kita akan membuat website dengan nama domain penmaru.firman.edu

1. Siapkan subdomain penmaru.firman.edu

Edit file /etc/bind/firman.edu.db dan tambahkan baris berikut

penmaru         IN       A      192.168.1.100

reload service DNS


$ sudo /etc/init.d/bind9 reload

Cek apakah domain penmaru.firman.edu sudah bisa diresolve atau belum


$ nslookkup penmaru.firman.edu

Hasilnya sbb :

Server: 192.168.1.100
Address: 192.168.1.100#53
Name: penmaru.firman.edu
Address: 192.168.1.100

2. Konfigurasi Apache Virtualhost untuk domain penmaru.firman.edu

Buat direktori untuk documentroot domain penmaru.firman.edu


$ sudo mkdir /web/penmaru.firman.edu -p

ubah kepemilikan dan permission filenya

$ chmod 755 -Rf /web
$ chown www-data.www-data -Rf /web

Buat sebuah file dengan nama penmaru.firman.edu dan simpan di dalam direktori /etc/apache2/sites-available dan isikan baris berikut


ServerName penmaru.firman.edu
ServerAlias www.penmaru.firman.edu
ServerAdmin firman@inixindojogja.com
DocumentRoot /web/penmaru.firman.edu
ErrorLog /var/log/apache2/penmaru.firman.error.log
CustomLog /var/log/apache2/penmaru.firman.access.log common
DirectoryIndex index.php index.html index.htm

Options -Indexes
Order Allow,Deny
Allow from all

Aktifkan site virtual host

$ sudo a2ensite penmaru.firman.edu

Restart apache


$ sudo /etc/init.d/apache2 reload

Countdown Timer Seperti 4shared.com

pernah donlot di 4shared.com  ada link donlotnyah yang countdown itu. ada yg nanya gmna cra bkinnya di milis. yawda, tak tulis dsni aja…

<script language="javascript">

i = 5;

var t;

function countdown()

{

t=setTimeout("countdown()",1000);

document.getElementById("content").innerHTML=i;

if(i==0) {

clearTimeout(t);

document.getElementById("content").innerHTML='<a href="http://www.taujago.web.id">Klick me ..</a>';

}

i--;

}

</script>

<body onload="countdown()">

<div id="content">

</div>

</body>

Kesalahan menyebut WWW

Kita sering mendengan penyebutan sebuah alamat website internet di berbagai media. Tapi banyak yang salah menyebutkannya. Mulai di media radio sekelas swaragama jogja bahkan stasiun televisi berita sekelas MetroTV pun, terkadang salah kenyebutkan “www”.

Sebenarnya WWW (World Wide Web) kalau ditinjau dari sisi teknis, hanyalah sebuah alias saja (Conanical Name). Namun, dibuatkannya www hanya untuk membuat standar pengelompokan layanan yang disediakan di internet. misalkan sebuah URL www.example.com  menandakan secara jelas bahwa alamat tersebut adalah sebuah halaman website. padahal kalau kita membuka webbrowser dan mengetikkan tanpa “www” pun tetap bisa di akses. misal :  example.com, detik.com dst.  tetapi selain itu, mungkin saja examle.com menyediakan layanan lain  seperti layanan transfer file (ftp) yang dapat di akses melalui alamat ftp.example.com  atau juga layanan email mail.example.com sehingga terciptalah “www” sebagai standar untuk halaman web. untuk menunjuk sebuah alamat website,  bisa juga tanpa menyebutkan “www”. Read the rest of this entry »

Management Raid di linux

melanjutkan artikel di sebelum ini tentang raid, http://taujago.web.id/index.php/2009/07/16/raid-di-linux/

Berikut ini saya akan membahas tentan bagaimana memanage raid yang sudah ada.

SIMULASI KEGAGALAN DEVICE

tidak salamanya sistem akan running well. mestinya akan ada saat dimana hardware akan mengalami kerusakan. jika kerusakan terjadi pada salah satu anggota raid, maka kita dapat melakukan tindakan recovery. seperti berikut

Membuat (simulasi) salah satu disk rusak


[root@linux-c ~]# mdadm --manage /dev/md0 --fail /dev/sda6
mdadm: set /dev/sda6 faulty in /dev/md0

[root@linux-c ~]# mdadm –detail /dev/md0
/dev/md0:
Version : 00.90.03
Creation Time : Thu Jul 16 09:12:54 2009
Raid Level : raid5
Array Size : 401408 (392.07 MiB 411.04 MB)
Used Dev Size : 200704 (196.03 MiB 205.52 MB)
Raid Devices : 3
Total Devices : 3
Preferred Minor : 0
Persistence : Superblock is persistent

Update Time : Fri Jul 17 09:14:35 2009
State : clean, degraded
Active Devices : 2
Working Devices : 2
Failed Devices : 1
Spare Devices : 0

Layout : left-symmetric
Chunk Size : 64K

UUID : 6fa881cb:eb293a09:2e07491f:08ad2ea9
Events : 0.6

Number Major Minor RaidDevice State
0 0 0 0 removed
1 8 7 1 active sync /dev/sda7
2 8 8 2 active sync /dev/sda8

3 8 6 – faulty spare /dev/sda6

walaupun salah satu anggota raid rusak, data dalam direktori yang di simpan di raid device tidak rusak.


[root@linux-c ~]# ll /mnt/testraid/
total 12
drwx------ 2 root root 12288 2009-07-15 11:48 lost+found
-rw-r--r-- 1 root root 0 2009-07-15 11:52 testfile.txt

[root@linux-c ~]# tail -3 /mnt/testraid/testfile.txt
98
99
100

Membuang disk yang rusak dengan cara sbb :


[root@linux-c ~]# mdadm --manage /dev/md0 --remove /dev/sda6
mdadm: hot removed /dev/sda6

Menambahkan disk baru ke dalam Raid


[root@linux-c ~]# mdadm --manage /dev/md0 --add /dev/sda10
mdadm: added /dev/sda10

Cek lagi ..


[root@linux-c ~]# mdadm --detail /dev/md0

Layout : left-symmetric
Chunk Size : 64K

Rebuild Status : 88% complete

UUID : 6fa881cb:eb293a09:2e07491f:08ad2ea9
Events : 0.20

Number Major Minor RaidDevice State
3 8 10 0 spare rebuilding /dev/sda10
1 8 7 1 active sync /dev/sda7
2 8 8 2 active sync /dev/sda8

Raid di linux

RAID (Redundant Array Inexpensive Disk) adalah sebuah mekanisme penggabungan beberapa disk secara fisik, sedangkan secara logikal tetap dianggap sebagai satu direktori. detailnya, silahkan baca di sini :

http://en.wikipedia.org/wiki/RAID

Misalkan kita menghendaki sebuah direktori memiliki ukuran 2Tb. sedangkan kita tidak memiliki disk dengan ukuran tersebut dan hanya memiliki 2 buah HD dengan ukuran masing – masing 1Tb. solusinya adalah dengan menggabungkan disk tersebut. sehingga kita mendapatkan direktori dengan ukuran 2Tb.

Raid memiliki beberapa level untuk konfigurasinya. beberapa diantaranya yang paling banyak digunakan adalah sbb:

- Level 0

level 0 adalah menggabungkan minimal 2 buah disk.  total ukuran disk untuk level 0  adalah akumulasi dari jumlah ukuran disk. tetapi kelemahannya adalah tidak ada fault tolerance.  Jadi, kalau salah satu disk rusak, maka data akan rusak

- Level 1

Level 1 bisa juga disebut dengan mirroring. Dibutuhkan minimal 2 buah disk. dimana, dua buah disk tersebut akan identik satu dengan yang lain. Sehingga jika salah satu disk rusak, maka yang lain bisa menggantikan.

- Level 5

Level 5 membutuhkan minimal 3 disk. ukuran total yang kita dapatkan adalah n-1. Misalkan ada buah 3 disk dengan ukuran masing2 100G, digabungkan dengan raid level 5, maka total ukurannya adalah 200G. sedangkan 100G digunakan untuk spare. Keuntungan dari raid level 5 adalah adanya fault tolerance. Raid level 5 memberikan toleransi kerusakan 1 disk. jika salah satu disk rusak, maka data tetap aman. tidak akan hilang.

Raid dapat dikonfigurasi pada level hardware ataupun pada level sistem operasi. bagi yang menggunakan komputer branded class server atau dedicated server, Raid sudah tersedia. sedangkan bagi yang hardwarenya belum support raid, dapat melakukan konfigurasi raid pada leve OS dalam hal ini, adalah linux.

Membuat Partisi

[root@linux-c ~]# fdisk /dev/sda

The number of cylinders for this disk is set to 4865.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): n
First cylinder (3055-4865, default 3055):
Using default value 3055
Last cylinder or +size or +sizeM or +sizeK (3055-4865, default 4865): +200M

Ubah ID partisi menjadi Linux Raid


Command (m for help): t
Partition number (1-6): 6
Hex code (type L to list codes): fd
Changed system type of partition 6 to fd (Linux raid autodetect)

Lakukan hal yang sama sehingga kita memiliki 3 buah partisi dengan ukuran masing – masing 200M dengan ID Linux Raid. Berikut ini adalah skema akhir partisi

Disk /dev/sda: 40.0 GB, 40020664320 bytes
255 heads, 63 sectors/track, 4865 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xd6aad6aa

Device Boot Start End Blocks Id System
/dev/sda1 * 1 2550 20482843+ 83 Linux
/dev/sda2 2551 2805 2048287+ 82 Linux swap / Solaris
/dev/sda3 2806 2867 498015 83 Linux
/dev/sda4 2868 4865 16048935 5 Extended
/dev/sda5 2868 2892 200781 83 Linux
/dev/sda6 2893 2917 200781 fd Linux raid autodetect
/dev/sda7 2918 2942 200781 fd Linux raid autodetect
/dev/sda8 2943 2967 200781 fd Linux raid autodetect

Membuat Raid Level 5


[root@linux-c ~]# mdadm --create --level=5 /dev/md0 --raid-devices=3 /dev/sda6 /dev/sda7 /dev/sda8

setelah membuat raid, cek apakah raid sudah oke atau belum


[root@linux-c ~]# mdadm --detail /dev/md0

/dev/md0:
Version : 00.90.03
Creation Time : Thu Jul 16 09:12:54 2009
Raid Level : raid5
Array Size : 401408 (392.07 MiB 411.04 MB)
Used Dev Size : 200704 (196.03 MiB 205.52 MB)
Raid Devices : 3
Total Devices : 3
Preferred Minor : 0
Persistence : Superblock is persistent

Update Time : Thu Jul 16 09:13:18 2009
State : clean
Active Devices : 3
Working Devices : 3
Failed Devices : 0
Spare Devices : 0

Layout : left-symmetric
Chunk Size : 64K

UUID : 6fa881cb:eb293a09:2e07491f:08ad2ea9
Events : 0.4

Number Major Minor RaidDevice State
0 8 6 0 active sync /dev/sda6
1 8 7 1 active sync /dev/sda7
2 8 8 2 active sync /dev/sda8

Melakukan format file system


[root@linux-c ~]# mkfs -t ext3 /dev/md0
mke2fs 1.40.8 (13-Mar-2008)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
100352 inodes, 401408 blocks
20070 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67633152
49 block groups
8192 blocks per group, 8192 fragments per group
2048 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729, 204801, 221185

Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 23 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

Buat direktori, dan mount raid device ke direktori tersebut


[root@linux-c ~]# mkdir /mnt/testraid
[root@linux-c ~]# mount /dev/md0 /mnt/testraid/

Cek ukuran direktori /mnt/testraid


[root@linux-c ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 20G 4.9G 14G 27% /
tmpfs 501M 1.1M 500M 1% /dev/shm
/dev/sda3 471M 11M 437M 3% /mnt/data
/dev/sr0 3.9G 3.9G 0 100% /media/DVD1-IL082008
/dev/sda5 190M 5.6M 175M 4% /mnt/musik
/dev/md0 380M 11M 350M 3% /mnt/testraid

perhatikan bagian ini
/dev/md0 380M 11M 350M 3% /mnt/testraid

ukuran direktori /mnt/testraid adalah 380M.

Kejahatan itu bernama “malas update blog”

Ketika seorang netter menlakukan klik pada tombol register untuk membuat blog, artinya sebuah ikatan, sebuah keharusan yang tidak tertulis, sebuah tanggung jawab untuk selalu menulis/mengupdate blog telah disematkan kepada si netter.  Artinya dia sudah sah  menjadi seorang BLOGGER. Dan sudah semestinya seorang BLOGGER (harus ditulis hurup besar ya? apa saya yang mode maksa=on ? :D  ) selalu mengupdate blognya. kalau tidak, artinya dia barus  saja melakukan sebuah kejahatan serius terhadap blognya. Dan saya harus menghadapi kenyataan bahawa, saya adalah salah satu dari pelaku kehatan itu.. lihatlah sodara – sodara. terakhir sebelum tulisan ini,  tulisannya bertanggal 8 feb 09. sekarang udah bulan juni.. waaa……….. maapkan aku sodara-sodara… hari ini,  aku akan berjanji.. akan selalu meng-apdet blog ini. tunggu saja…  zzzz…….