Salah satu solusi yang bisa coba adalah GREENSQL, greenSQL adalah sebuah open source Firewall Database untuk melindungi database dari serangan SQLInjection.
Kurang Lebih Arsistektur nya Seperti ini:
diambil dari http://www.greensql.net/
oke... langsung aja cara instalasinya
1. download greensql di http://www.greensql.net/download
download sesuai dengan distro masing2... untuk contoh yang di tulis ini gw pake ubuntu 8.10
untuk saat ini belum ada untuk windows.
ada dua hal perlu yg di download
- GreenSQL Firewall = adalah firewall database-nya
- Management Console = software webbase untuk untuk monitoring firewall (server side yg digunakan adalah PHP)
2. yg selanjutnya kita install GreenSQL Firewal, di console
dpkg -i greensql-fw_1.0.0_i386.deb
3. berikutnya lakukan konfigurasi GreenSQL, ketik perintah dibawah ini pada console
sudo /usr/sbin/greensql-create-db.sh
perintah di atas akan membuat sebuah database
4. untuk melakukan konfigurasi greensql diletakan di file /etc/greensql/greensql.conf
5. untuk melakukan setting dari pola2 query yang dilarang di letakan pada file /etc/greensql/mysql.conf
6. jalankan service greensql
sudo /etc/init.d/greensql start
7. kalau ada problem dari service greensql bisa diliat di var/log/greensql.log
8. test service greenSql nya...
mysql -h 127.0.0.1 -P 3305 -u root -p
coba perhatikan -P 3305 itu adalah port dari greenSQL yg akan di-forward ke mysql -P 3306 yg merupakan port standar mysql
9. jalankan Management Console, untuk monitoringnya, caranya copy dan ekstrak greensql-console-0.5.0.tar.gz di folder www apache webserver km..
demo nya bisa diliat disini http://demo.greensql.net/login.php
10. di browser ketikan contoh: http://127.0.0.1/green-0.5.0/login.php dan secara default username: admin password: pwd
11. sebagai contoh untuk koneksi menggunakan php seperti di bawah ini:
sebelumnya
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
menjadi
$link = mysql_connect('127.0.0.1:3305', 'mysql_user', 'mysql_password');
*nb: issue performance bisa diliat diliat di : http://www.greensql.net/publications/greensql-performance-test
-- selamat mencoba --
Nais inpo gan...
ReplyDeleteTapi baidewey issue2 performance blum ada yah?
ade tom.... disini... issue....
ReplyDeletehttp://www.greensql.net/publications/greensql-performance-test
srg trj level keamanan berbanding terbalik dgn kenyamanan... dan jg hrs ada cost yg harus di bayar bwt itu....
tp gw liat sih... msh dlm batas wajar/masih ok....
:)
Kek apa nih cara kerjanya Gan?
ReplyDeletejadi semua query.... sebelum masuk ke mysqlnya akan di filter dulu.... apakah aman atau tidak.... kalau aman maka
ReplyDeletegreeSQL akan mem-forward ke mysql database
perbedaannya ada dikoneksi nya aja...
sebelumnya
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
menjadi
$link = mysql_connect('127.0.0.1:3305', 'mysql_user', 'mysql_password')
coba perhatikan -P 3305 itu adalah port dari greenSQL yg akan di-forward ke mysql -P 3306 yg merupakan port standar mysql
mas, bagaimana kalau saya menggunakan webserver dan database server secara terpisah????? bukan localhost??? suendri@gmail.com
ReplyDeletengak masalah....
ReplyDeleteinstaal saja greensql nya di server yang sama dengan mysql nya