Jumat, 26 November 2010

Instalasi BIOS

Versi terbaru dari BiOS Baliwae - Billing Open Source Baliwae saat tulisan ini dibuat adalah versi 1.1 - Miracle, Be Strong.

Persyaratan

Pastikan Anda sudah menyiapkan web server berbasis linux untuk billing ini. Server untuk keperluan billing tersebut dapat dijadikan satu dengan proxy server warnet Anda atau dipasang terpisah misal di komputer operator. Pastikan server tersebut dapat menjalankan web PHP dan database MySQL. Hampir kebanyakan distro linux saat ini telah menyediakan paket web server PHP dan MySQL didalam CD Instalasinya. Operator dan client bisa juga menggunakan Operating System selain GNU/Linux, misal Ms. Windows, namun fungsi billing menjadi terbatas hanya sebatas menghitung perhitungan waktu saja. Fitur utama seperti reboot, poweroff, logout, screenshot tidak dapat berfungsi.
Untuk web server Anda bisa menggunakan aplikasi semacam Apache, Lighttpd, dsb. Silahkan lihat dokumentasi di website masing - masing untuk petunjuk instalasinya, atau search di Google.
Untuk client Anda bisa gunakan sembarang distro GNU/Linux. Namun saya rekomendasikan Anda menggunakan distro berbasis Desktop KDE. Karena fitur khusus seperti logout di BiOS versi <= 1.1 hanya dapat digunakan pada KDE. Hal ini karena billing memanfaatkan fasilitas DCOP yang ditawarkan oleh KDE. Meski demikian fitur seperti screenshot, poweroff, reboot tetap dapat digunakan di semua distro tanpa tergantung ada tidaknya KDE. Untuk operator dengan OS GNU/Linux direkomendasikan menggunakan browser Konqueror bawaan KDE untuk mengakses aplikasi operator.php. Atau menggunakan browser Mozilla Firefox versi 3. Hal ini karena kedua browser telah mendukung akses ke protocol samba. (smb://). Pastikan juga plugin flash player dapat dijalankan dengan baik pada browser yang digunakan. Hal ini karena ada beberapa fitur dari billing yang menggunakan fungsi dari flash. Seperti fitur output laporan dengan grafis 3D dan fitur auto update billing.
Antara server dan client pastikan terhubung dalam jaringan dengan ip statis (non DHCP). Untuk versi KDE, BiOS berjalan baik di generasi versi 3.5.x. Belum diketahui apakah dapat berjalan sempurna juga di KDE 4.0.
Untuk client pastikan di tiap komputer telah terpasang browser Mozilla Firefox (versi 1.5 keatas), aplikasi ImageMagick, OpenSSH, dan Samba Server. Browser Firefox nantinya dipakai sebagai frontend billing di client, ImageMagick dan Samba dimanfaatkan untuk fitur screenshot, sementara OpenSSH (jalan di port 22 di tiap-tiap client) wajib ada karena dimanfaatkan untuk fungsi remote.
Aplikasi yang dibutuhkan diatas kebanyakan telah disertakan pada sebagian besar distro. Contoh: Mandriva 2008.

Instalasi Pada Server Billing

Saya anggap aplikasi webserver PHP dan MySQL telah dapat berjalan baik pada komputer yg akan dijadikan server billing.
Buat direktori khusus untuk billing ini di direktori web server anda. Pada beberapa varian distro biasanya root webnya ada di /var/www/html/ dan untuk user direktorinya ada di /home/[user]/public_html.
OK, untuk contoh kali ini saya contohkan billing di install di direktori user yang dapat diakses lewat web, yakni di /home/budi/public_html
copy file BiOS-v1.1.tar.bz2
extract
tar jxvf BiOS-v1.1.tar.bz2
maka di /home/budi/public_html akan terbentuk direktori billing.
pindah ke direktori billing
cd billing
Kita buat database untuk billing ini. Dalam contoh ini saya buat database dengan nama "bios".
Perintah di console:
$ mysqladmin -u root -p create bios

Import table database yang tersimpan di file bios.sql ke database mysql Anda. Perintahnya:
$ mysql -u root -p bios < bios.sql

(sesuaikan root dengan username mysql, dan bios dengan nama database yang anda inginkan)
selanjutnya edit file: bios-config.php
Anda cukup mengubah variabel ini:
mysql_user
mysql_pass
mysql_dbname
url_location.
Sesuaikan dengan setting di sistem anda.
Contoh:
$mysql_user='root'; --> user mysql
$mysql_pass='tes123'; --> pass mysql
$mysql_dbname='bios'; --> nama database yg tadi dibuat
$url_location='http://192.168.1.25:80/~budi/billing/'; --> url lokasi billing
Selanjutnya buka browser dan akses url_location yang sudah di set diatas (sesuaikan dengan alamat web server billing anda)
Contoh: http://192.168.1.25:80/~budi/billing/operator.php
Apabila muncul tampilan seperti Gambar 01, maka instalasi bisa dibilang berhasil :)

Gambar 01.
Untuk user dan password default administrator adalah:
username: admin
password: tes123
seharusnya kini Anda akan melihat tampilan welcome page seperti Gambar 02

Gambar 02. Welcome Page..

Klik menu SETTING (lihat Gambar 03)


Gambar 03. Halaman Setting / Pengaturan
Ubah nama warnet, dan alamat dengan nama warnet Anda. MOTD dengan pesan yang ingin Anda tampilkan di komputer client.
Set sistem operasi yang dipakai operator ke GNU/Linux bila Anda menggunakan Linux.
Pada bagian Harga, set harga sewa per jam warnet Anda. Default Rp. 3000 / jam. Set pada minimum pemakaian dengan biaya minimal yang harus dibayarkan client untuk dapat bermain di warnet Anda. Default Rp. 100. Set dengan Rp. 0, bila tidak ada minimum pemakaian. Ubah charge pemakaian setiap 1 detik ke nilai lain bila Anda tidak ingin mencharge pemakaian per detik. Misal Anda ingin mengenakan charge pemakaian tiap 5 menit awal, maka ubah variabel ini menjadi 5 x 60 detik = 300 detik.
Pada bagian Sekuriti, masukkan ip yang berhak mengakses aplikasi operator.php. Untuk banyak ip pisahkan dengan tanda|. Contoh: 192.168.1.25|127.0.0.1|222.222.222.222. Kosongkan apabila Anda ingin mengijinkan semua ip dapat mengakses operator.php.
Pada bagian Screenshot, ubah resolusi dengan resolusi screenshot yg Anda inginkan. Defaultnya 640x480 pixel, jpg. Ubah screenshot name dan folder dengan nama file screenshot dan nama folder di home direktori client dimana screenshot akan disimpan. Folder di client ini nantinya akan dishare dengan memanfaatkan protokol samba. Nama file Misal .screen.jpg (awalan . akan membuat file/direktori tersebut menjadi hidden).
logikanya file screenshot nanti akan diakses melalui: smb://ip_client/.bios-dir/.screen.jpg
Untuk protokol file sharing lain silahkan set manual di kolom yang tersedia. Saat Anda mengeset "Sistem operasi yang dipakai operator" dengan GNU/Linux maka otomatis default protocol yg dipakai adalah samba (smb://ip_client) atau bila Windows otomatis menggunakan (file:////ip_client)
Pada bagian Remote Access, ubah "Client default login username /SSH" dengan username client linux Anda. Untuk itu silahkan samakan user name untuk seluruh client warnet Anda. Untuk password antar client boleh beda.

Klik menu CLIENT (lihat Gambar 04)


Gambar 04. Halaman pengaturan
Di bagian ini Anda dapat melakukan tambah/kurang/edit/delete komputer client di warnet yang berhak mengakses program billing. Silahkan masukkan Nama client, IP client (IP Statis), dan Desktop yang digunakan. Untuk desktop ada 4 pilihan saat ini, yakni KDE, GNOME, XFCE dan Windows. Namun yang benar-benar sudah fully compatible adalah desktop KDE. Untuk tiga lainnya masih dalam tahap pengembangan khususnya pada fitur logout.

Klik menu Operator (lihat Gambar 05)


Gambar 05. Halaman operator
Pada bagian ini Anda dapat menambah user lain yang dapat mengakses aplikasi operator.php namun dengan hak akses dibawah level user admin. Alias anda dapat menambah user untuk operator / pegawai warnet Anda.
Adapun operator selain admin (selain yang ID nya 1) hanya dapat melihat menu Index, Billing, dan Laporan. Laporan juga terbatas hanya dapat melihat transaksi yang ada selama yang bersangkutan sedang bertugas. Tidak dapat melihat laporan operator lainnya.
Untuk menambahkan cukup dengan mengisi:
Nickname --> akan menjadi user login
Nama lengkap --> akan tercetak pada struk billing
Password --> password login
Dapat mengedit laporan hariannya --> Defaultnya TIDAK. artinya yang bersangkutan tidak dapat mengedit laporan transaksi yang terjadi (misal hapus transaksi, atau mengubah nilai transaksi)
.

Instalasi Pada Client

Frontend pada client memanfaatkan browser Firefox. Silahkan setting browser Firefox.
Buka Firefox. Pada kolom URL ketikkan "about:config"
Pada isian Filter ketik: signed.applets.codebase_principal_support
Set value menjadi true
Selanjutnya, filter : browser.sessionstore.enabled
Set value menjadi false
maksud signed.applets.. adalah agar jendela firefox bisa kita atur panjang lebar nya otomatis lewat script dalam program billing. Untuk browser.session di disable. Tujuannya untuk mencegah firefox merestore session yang disimpan sesaat sebelum browser di close mendadak saat komputer client di logout/reboot.
Selanjut silahkan tes dengan membuka url: http://ip_server/lokasi_file_client.php
contoh: http://192.168.1.25:80/billing/client.php dari firefox di client
Bila ada muncul pertanyaan berkaitan security, jangan lupa beri centang pada bagian dont ask again, supaya tidak ditanya2 lagi. (Lihat Gamba 06);

Gambar 06. Security
Apabila IP client sebelumnya telah didaftarkan di menu client (operator.php), billing seharusnya akan mulai menghitung dengan penampilan seperti pada Gambar 07.

Gambar 07. Tampilan di Client
Anda sebagai operator / admin dapat memantau penggunaan billing secara realtime lewat operator.php pada menu Billing. Lihat Gambar 08
Gambar 08. Billing
OK sampai tahap ini, proses instalasi sudah mencapai 70% :)

Instalasi Lanjut pada Server dan Client

Pastikan pada komputer server telah terpasang paket openssh. Secara defacto paket ini mestinya sudah ada di setiap distro linux. Paket ini digunakan oleh billing untuk melakukan remote access via SSH.
Silahkan login sebagai user root pada komputer server, dari console ketikkan perintah:
$ su
(password root)
Edit file /etc/ssh/ssh_config
misal pakai aplikasi joe
# joe /etc/ssh/ssh_config
Edit variable - variable yg ada sehingga nilainnya menjadi:
ForwardAgent yes
Protocol 2,1
Host *
#ForwardX11 yes --> didisable
pindah ke direktori root
# cd
jalankan perintah:
Jalankan:
# ssh-keygen -t rsa
nanti otomatis akan ada 2 file tersimpan di /root/.ssh
# ls /root/.ssh
id_rsa id_rsa.pub
Kedua file ini nantinya digunakan sebagai otentikasi untuk mengakses secara remote client via protokol ssh tanpa perlu menggunakan password.
Silahkan Anda copy (misal ke flashdisk) file id_rsa.pub. Lalu copykan ke masing - masing root client.
Copykan ke folder .ssh di /root direktori masing-masing client. copy ke /root/.ssh/ (INGAT! BUKAN di Home direktori user!)
Apabila folder .ssh belum ada silahkan di create dulu.
Jangan lupa ubah copy-an file tersebut dengan nama authorized_keys
lalu ubah permission nya menjadi 600
# chmod 600 authorized_keys
Masih di komputer client, edit file /etc/ssh/sshd_config
Ubah variabel yang ada sehingga menjadi:
RSAAuthentication yes
REBOOT komputer client Anda. Setelah REBOOT, lanjutnya ke langkah dibawah ini.
Selanjutnya silahkan lakukan testing dari komputer server. login sebagai root, dan dari console ketikkan perintah:
# ssh -l root 192.168.1.16
Ubah ip dengan ip client Anda. Seharusnya anda bisa langsung login ke ip 192.168.1.16 tanpa perlu memasukkan password.
OK sampai sini proses instalasi udah 80% :)
Kembali ke komputer server.
Apabila Anda menggunakan webserver apache, pastikan Anda memasukkan user apache kedalam file sudo (/etc/sudoers)
Caranya: login sebagai root, dari console ketikkan: # visudo
ketikkan tombol i, untuk perintah insert
tambahkan:
apache ALL=(ALL) ALL
tekan tombol "shift" + ":"
Akan muncul : dibagian bawah. Ketik wq, untuk write lalu quit
Apabila berhasil seharusnya akan muncul seperti dibawah ini:
wrote /etc/sudoers.tmp, 32 lines, 740 chars
root@~#Buat file ini dari user root
Apabila Anda menggunakan webserver selain apache, seperti lighttpd, maka edit file /etc/lighttpd/lighttpd.conf
isikan pada bagian username dan groupname dengan username tempat billing diletakkan
(dalam hal ini karena billing disimpan di /home/budi/) maka user dan group diisi budi.
## change uid to <uid> (default: don't care)
server.username = "budi"
## change uid to <uid> (default: don't care)
server.groupname = "budi"
untuk kasus ini karena webserver menggunakan user budi, maka yang dimasukkan dalam file sudo (/etc/sudoers) adalah user budi
#visudo
tambahkan:
budi ALL=(ALL) ALLBuat file ini dari user root
OK Instalasi kini sudah 90%. Dan seharusnya kini Anda sudah dapat mematikan (poweroff), reboot, logout (khusus KDE) dan show up (memunculkan billing di client) secara remote langsung dari aplikasi operator.php
Untuk fitur screenshot pastikan koneksi samba antara komputer server dan client berjalan baik.
Silahkan buat direktori di home direktori user client anda dengan nama sesuai dengan yang anda setting di operator.php > setting
Dalam contoh ini nama foldernya dan nama sharingnya adalah .bios-dir (lihat gambar dibawah untuk petunjuk lengkap step-by step menshare sebuah folder)

 

Masih di komputer client, cek apakah file aplikasi ini ada (login sebagai root)

# locate xwd
# locate dcop
bila ditemukan dan lokasinya tidak di /usr/bin/ misal di:
/usr/bin/X11/xwd
/opt/kde/bin/dcop
maka silahkan anda buat symbolic link alias shortcut file ini di /usr/bin
caranya ketik perintah di bawah ini:
# ln -s /usr/bin/X11/xwd /usr/bin/xwd
# ln -s /opt/kde/bin/dcop /usr/bin/dcop
(cat: ubah /usr/bin/X11/xwd sesuai dengan lokasi file xwd berada)
OK silahkan Anda coba dari operator.php, klik pada logo komputer client. Seharusnya kini Anda dapat melihat tampilan screenshot nya :) Untuk hasil optimal gunakan browser konqueror bawaan kde yang sudah support protokol smb://
Lihat Gambar 09
OK Instalasi kini sudah 95%
Supaya 100% Anda kini tinggal membuat shortcut di desktop pada tiap-tiap komputer client agar dapat membuka file client.php secara manual dengan firefox. Caranya anda tinggal buat shortcut di desktop. Lalu isi linknya dengan argumen:
firefox http://192.168.1.25/~budi/billing/client.php
sesuaikan alamat url dengan milik anda
dan supaya billing otomatis berjalan (autorun) saat client login, anda cukup membuat script sederhana di folder .kde/Autostart/ di home client anda. Contoh file script ini dapat Anda lihat di file billing.sh
misal beri nama billing.sh
isinya:
#!/bin/sh
#BiOS - billing open source baliwae
#(c)2005-2008 Budi Baliwae
#http://bios.baliwae.com
exec firefox http://192.168.1.25:80/~budi/billing/client.php
supaya shortcut billing.sh ini tidak dapat dihapus dan diedit oleh user, silahkan ubah own dan permission dari folder Autostart dan file billing.sh
menjadi
# chown root Autostart
# chgrp root Autostart
# chmod 755 Autostart
# cd Autostart
# chown root billing.sh
# chgrp root billing.sh
# chmod 755 billing.sh
OK satu lagi .. Bila client menggunakan KDE, jangan lupa untuk menonaktifkan fitur restore session. Caranya ubah dari control panel KDE. lihat Gambar!
dan terakhir :D silahkan replace file logo di direktori img/LOGO-WARNET.png dengan logo warnet Anda.

Tidak ada komentar:

Posting Komentar

 

blogger templates | Make Money Online