Melalui tutorial ini saya akan membahas bagaimana membatasi akses suatu alamat IP ke sebuah folder yang dapat diakses melalui web. Jadi ini mutlak hanya alamat IP yang diperbilehkan saja mengakses folder tersebut. Katakanlah anda punya repository lokal atau web apps lokal yang hanya boleh diakses oleh alamat IP lokal.
Berikut skenarionya:
saya memiliki web server apache yang diinstall di Ubuntu Server 14.04 LTS, kemudian saya memiliki folder "privat" yang dapat diakses melalui browser dengan alamat: http://192.168.0.254/privat/ akan tetapi saya hanya ingin folder tersebut hanya dapat diakses oleh alamat IP 192.168.0.19 sedangkan komputer lain, misalnya alamat 192.168.0.2 tidak dapat mengakses folder tersebut. Jika saya menggunakan firewall untuk mengeblok akses ke web server, maka seluruh layanan web server tersebut menjadi tidak dapat diakses, padahal di dalam web server tersebut juga ada layanan lainnya yang tersimpan di folder yang lain misalnya http://192.168.0.254/aplikasi/ .
Solusinya ada beberapa cara untuk membatasi akses tersebut, misalnya memanfaatkan file.htaccess atau melakukan konfigurasi di web server apache yang melayani akses tersebut. Untuk tutorial kali ini, saya ingin membahas menggunakan konfigurasi web server apache.
Pertama, anda harus memastikan lokasi folder di dalam web server yang akan dibatasi aksesnya. Misalnya saja saya menaruh folder tersebut di lokasi:
/var/www/html/privat/
kemudian saya buka file konfigurasi apache dengan menjalankan perintah:
sudo vim /etc/apache/apache2.conf
kemudian tambahkan konfigurasi di bawah ini:
<Directory /var/www/html/privat>
Options Indexes FollowSymlinks
Order allow,deny
Allow from 192.168.0.19
AllowOverride all
Require all granted
</Directory>
simpan, kemudian silakan restart web server apache anda dengan perintah:
sudo service apache2 restart
lalu coba buka browser dan akses melalui alamat yang berbeda, jika saya mengakses folder privat tersebut bukan dari alamat 192.168.0.19 maka hasilnya:
jika saya mengakses dari alamat IP yang diperbolehkan untuk mengaksesnya, maka hasilnya:
Mudah bukan? Selamat mencoba dan semoga membantu :-)
Comments