CARA MEMBATASI AKSES PHPMYADMIN DI LINUX
Saya menulis di blog ini ketika memiliki waktu luang, dan mungkin sekarang adalah waktu yang tepat untuk posting artikel baru. Tidak tau kenapa juga, pembahasan di artikel ini masih berhubungan dengan keamanan di server database. Sebelumnya saya juga menjelaskan topik yang sama di artikel ini :
Mungkin sebenarnya dari semua yang saya jelaskan di artikel-artikel tersebut tidak harus anda pakai semua meskipun saya setuju dengan pernyataan "semakin aman semakin baik, masa bodoh dengan kenyamanan". Di artikel ini saya ingin memberikan informasi tentang pengamanan server database atau server PhpMyAdmin dengan cara membatasi akses PhpMyAdmin berdasarkan IP Address.
CARA MEMBATASI AKSES PHPMYADMIN DI LINUX
Saya sudah menjelaskan cukup panjang lebar dipembahasan sebelumnya bahwa sangat riskan sekali membiarkan PhpMyAdmin terbuka untuk publik, meskipun tidak dipublikasikan tapi tetap saja opened for everyone :)Akhirnya saya menemukan lagi cara yang menarik, yaitu membatasi akses phpmyadmin berdasarkan IP Address, dengan metode ini phpmyadmin tetap tertutup, dan hanya dibuka untuk orang-orang tertentu.
Hal pertama yang harus anda lakukan adalah membuat IP Address client anda static (kalau DB Admin berada di jaringan lokal), lakukan pengaturan ini di router DHCP anda. Jika anda memiliki relasi kerja diperusahaan lain anda akan memakai IP Public router WAN untuk identitas mereka.
Selanjutnya buka file "/etc/phpmyadmin/apache.conf", dan perhatikan pengaturan yang saya buat :
Code:
Alias /phpmyadmin /usr/share/phpmyadmin
<Directory /usr/share/phpmyadmin>
Options FollowSymLinks
DirectoryIndex index.php
<IfModule mod_php5.c>
AddType application/x-httpd-php .php
php_flag magic_quotes_gpc Off
php_flag track_vars On
php_flag register_globals Off
php_admin_flag allow_url_fopen Off
php_value include_path .
php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/
</IfModule>
#rule berawal dari sini
deny from all
allow from 10.1.1.1 10.1.1.2 10.1.1.10 10.0.64.1
#rule berakhir sampai sini
</Directory>
<Directory /usr/share/phpmyadmin>
Options FollowSymLinks
DirectoryIndex index.php
<IfModule mod_php5.c>
AddType application/x-httpd-php .php
php_flag magic_quotes_gpc Off
php_flag track_vars On
php_flag register_globals Off
php_admin_flag allow_url_fopen Off
php_value include_path .
php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/
</IfModule>
#rule berawal dari sini
deny from all
allow from 10.1.1.1 10.1.1.2 10.1.1.10 10.0.64.1
#rule berakhir sampai sini
</Directory>
Statement "deny from all" sudah jelas sekali akan menolak semua transaksi dari sumber manapun, lalu statement "alow from..." akan mengijinkan beberapa IP address untuk dapat mengaksesnya. Dan lihat daftar IP Address yang saya ijinkan untuk mengakses PhpMyAdmin. Pemisah mereka hanya spasi saja, tidak perlu koma atau apapun. Jika yang di allow adalah network tertentu cukup tambahkan network mereka seperti misalnya 10.1.1.0/25.
Mudah sekali ternyata kan! :)
Sekarang PhpMyAdmin saya hanya dapat diakses dari komputer-komputer yang memiliki IP address diatas.
Metode seperti apa yang akan anda pakai untuk mengamankan server database phpmyadmin? Jelas itu menjadi keputusan anda, saya sudah memberikan beberapa metode yang cukup untuk menjadi bahan pertimbangan anda.
Selamat mencoba,
Salam penguin! :)