Konfigurasi Keamanan Layanan Web (Secure Access) – PRAKTIKUM KEAMANAN DATA

PRAKTIKUM 7 – PRAKTIKUM KEAMANAN DATA
                                            Johan Zakaria                                          2110131005
                                                          Berlian Rahmy Lidiawaty                     2110131011
                                                          Lutfi Hariyanto                                        2110131023
JUDUL PRAKTIKUM       : Konfigurasi Keamanan Layanan Web (Secure Access)
HARI / TANGGAL              : Jumat / 15 Juni 2016

DASAR TEORI
Apache Web server memiliki beragam opsi konfigurasi bagi administrator. Masalahnya, pada saat anda hosting, anda tidak memiki akses pada konfigurasi apache. Akibatnya anda tidak dapat melakukan perubahan setting dan terpaksa menggunakan konfigurasi default. Salah satu alternative yang dapat dilakukan untuk melakukan overriding konfigurasi default adalah dengan melakukan setting lewat file .htacces.
File .htaccess berupa file ascii yang ditempatkan pada direktori www atau subdirektori www. Anda dapat membuat file ini lewat editor teks seperti notepad dan diupload dalam bentuk ASCII (bukan BINARY) di direktori mana yang anda ingin memodifikasi setting. Selain itu, hak akses file diset sebagai 644 (rw-r--r--). Fungsinya adalah memungkinkan server mengakses file, namun mencegah pengunjung untuk mengakses file lewat browser mereka karena alas an keamanan.
Perintah pada file .htaccess akan mempengaruhi semua direktori dan subdirektori dimana file tersebut diletakkan. Jika anda meletakkannya di sub direktori dari direktori www, maka file htaccess akan mempengaruhi direktori www dan semua direktori dibawahnya. Yang perlu diperhatikan adalah semua perintah pada file .htacess bersifat case sensitive dan didesain untuk diletakkan pada satu baris.
Beberapa fitur file .htaccess
1.      Untuk memberikan pesan error
Jika anda ingin melakukan overriding pesan error dari server, anda dapat menggunakan .htaccess untuk mng-kustomisasi pesan error yang baru. Contoh konfigurasinya :
ErrorDocument 500 /error.html
Override SSI Settings

2.      Melakukan overriding setting SSI
Secara default, hanya halaman web yang memiliki ekstensi .shtml yang akan melakukan parsing server-side includes (SSI). Anda dapat melakukan overriding konfigurasi default ini agar SSI dapat bekerja dengan file .html dan .htm dengan menambahkan baris ini pada .htaccess. Contoh:
AddType text/html .html
AddHandler server-parsed .html
AddHandler server-parsed .htm

3.      Mengganti file index. * pada homepage
Anda bisa mengganti halaman pertama web page anda yang biasanya berawal dengan index.html, index.cgi, index.shtml, dan lainnya dengan namafileku.html. Perhatikan bahwa, biasanya file pertama yang digunakan semua memiliki awal index.*. Selain itu juga, secara default, server akan mendisplay file index.* berdasarkan prioritasnya. Artinya file index.cgi memiliki keutamaan untuk ditampilkan disbanding index.html. Misalkan anda ingin mengganti file index.* dengan nama file: filebaru.html, tambahkan baris berikut pada file .htaccess :
DirectoryIndex hieronymous.html

Jika server tidak menemukan file dengan nama filebaru.html, server akan mengeluarkan halaman pesan error: 404 Missing Page. Untuk mengubah prioritas file yang ditampilkan, anda dapat melakukan hal dibawah, dimana orde prioritas ditentukan dari yang sebelah kiri (paling tinggi) hingga paling kanan (terendah).
DirectoryIndex hieronymous.html index.cgi index.php index.html

4.      Memungkinkan browser direktori
Karena alasan sekuritas, user dilarang untuk melihat isi direktori atau disebut fasilitas directory indexing. Dengan menggunakan file .htaccess, anda dapat mengijinkan user untuk melihat index direktori web page anda. Contoh, misalnya anda memanggil http://www.domainku.com/gambar/, maka web server akan melisting semua file pada direktori /gambar, tanpa perlu membuat file html dengan linknya. Tinggal tambahkan baris ini pada file .htaccess untuk melakukan indexing directory.
Options +Indexes

5.      Mengeblok user untuk mengakses web site
Jika anda ingin mencegah akses website pada user tertentu, asalkan anda tahu IP address atau domain name yang digunakan oleh user tersebut, anda dapat menggunakan file .htaccess untuk mengeblok user tersebut dari mengakses website anda.
order deny,allow
deny from 10.252.44.210
deny from 10.252.32.
deny from .domainku.com
allow from all
</Limit>

Pada contoh diatas, user dari nomor IP 10.252.44.210 akan di blok. Semua user d ari network 10.252.32.000 s.d 10.252.32.255 akan diblok. Semua user dari domain domainku.com akan diblok. Ketika mereka mencoba mengakses website anda, mereka akan menerima pesan error 403 Forbidden ("You do not have permission to access this site")
6.      Redireksi pengunjung ke halaman web baru atau direktori
Bila anda mengubah seluruh isi web site anda, memberikan nama baru bagi halaman dan direktori. Pengunjung pada halaman web lama akan menerima kode error 404, File Not Found. Anda dapat mengatasi masalah ini dengan melakukan redireksi panggilan ke halaman lama ke halaman baru. Contoh: jika halaman web lama anda adalah ../lama.html dan anda ingin menggantinya dengan baru.html pada website yang lain, maka anda dapat menambahkan baris ini pada file .htaccess
Redirect permanent /lama.html http://www.domainbaru.com/baru.html

Dengan penambahan ini, pengunjung yang mengakses website lama pada halaman lama.html akan dikirim menuju website baru pada halaman baru.html. Selain redireksi file, anda juga bisa melakukan redireksi untuk seluruh isi direktori. Contoh: bila anda hendah meredireksi pengunjung pada seluruh directory website lama ke direktori website baru. Tambahkan baris ini pada htaccess.

Redirect permanent /direktori-lama http://www.domainbaru.com/direktori-baru/

Ada beberapa tipe redireksi :
·         permanent – halaman web dipindah secara permanen (kode status: 301)
·         temp – halaman web dipindah secara temporer (kode status: 302)
·         seeother - halaman web diganti (kode status : 303)
·         gone - halaman web telah dihapus secara permanen (kode status : 410)

7.      Mencegah hot linking dan bandwith leeching
Hotlinking adalah tindakan mencuri image dan bandwith dengan melink-an image file yang dimiliki oleh suatu web server dengan web server lain secara ilegal. Hal ini dapat dicegah dengan menambahkan baris dibawah pada file .htaccess

Dengan cara ini, image anda hanya akan terdisplay ketika pengunjung benar-benar mengunjungi site anda. Semua image yang dilinking dengan domain lain akan nampak sebagai broken image.
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?domainku.com/.*$ [NC]
RewriteRule \.(gif|jpg)$ - [F]

Anda bahkan bisa menambahkan image lain sebgai ganti pada halaman yg terlink— dengan image yang menyindir pencurian gambar tersebut. Tambahkan baris ini untuk melakukan hal tersebut :
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?domainku.com/.*$ [NC]
RewriteRule \.(gif|jpg)$ http://www.domainku.com/curi.gif [R,L]

8.      Mencegah pengunjung melihat file .htaccess atau file lain
Untuk mencegah pengunjung untuk melihat isi dari file .htaccess, tambahkan baris ini pada file .htaccess
<Files .htaccess>
order allow,deny
deny from all
</Files>

LAPORAN PENDAHULUAN
1.      Sebutkan fungsi file htaccess! Apa hak akses .htaccess? Dimana file htaccess disimpan?

File .htaccess berupa file ascii yang ditempatkan pada direktori www atau subdirektori www. Anda dapat membuat file ini lewat editor teks seperti notepad dan diupload dalam bentuk ASCII (bukan BINARY) di direktori mana yang anda ingin memodifikasi setting. Selain itu, hak akses file diset sebagai 644 (rw-r--r--). Fungsinya adalah memungkinkan server mengakses file, namun mencegah pengunjung untuk mengakses file lewat browser mereka karena alas an keamanan.

Perintah pada file .htaccess akan mempengaruhi semua direktori dan subdirektori dimana file tersebut diletakkan. Jika anda meletakkannya di sub direktori dari direktori www, maka file htaccess akan mempengaruhi direktori www dan semua direktori dibawahnya. Yang perlu diperhatikan adalah semua perintah pada file .htacess bersifat case sensitive dan didesain untuk diletakkan pada satu baris.

2.      Apa keuntungan dan kerugian menggunakan file .htaccess?

Kelebihan:
·         Kustomisasi Error Message
·         Overide SSL settings
·         Merubah default Homepage
·         Enable directory browsing
Kekurangan:
·         semua linknya harus berupa absolute link, baik itu untuk image maupun file eksternalnya, maksudnya apabila anda biasanya menggunakan relatif link seperti:
../image/file.jpg
atau
../../image/file.jpg
·         Tidak semua server mengaktifkan settingan ini, atau bisa menghubungi server yang digunakan agar dapat mengaktifkannya, tetapi harus menjelaskan tujuan penggunaan, agar administrator mempercayai.

3.      Apa yang disebut hot linking dan bandwidth leeching? Bagaimana mencegah hot linking dan bandwidth leeching?

Hotlinking adalah tindakan mencuri image dan bandwith dengan melink-an image file yang dimiliki oleh suatu web server dengan web server lain secara ilegal. Hal ini dapat dicegah dengan menambahkan baris dibawah pada file .htaccess

Dengan cara ini, image anda hanya akan terdisplay ketika pengunjung benar-benar mengunjungi site anda. Semua image yang dilinking dengan domain lain akan nampak sebagai broken image.
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?domainku.com/.*$ [NC]
RewriteRule \.(gif|jpg)$ - [F]

Anda bahkan bisa menambahkan image lain sebgai ganti pada halaman yg terlink— dengan image yang menyindir pencurian gambar tersebut. Tambahkan baris ini untuk melakukan hal tersebut :
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?domainku.com/.*$ [NC]
RewriteRule \.(gif|jpg)$ http://www.domainku.com/curi.gif [R,L]

4.      Bagaimana mencegah user dengan nomor IP tertentu mengakses homepage?
Agar alamat IP tertentu tidak dapat mengakses website yang kita miliki maka kita dapat menggunakan kode sebagai berikut: 

     Order Deny,Allow
     allow from all
     deny from 111.222.111.000

Maksud baris di atas adalah semua alamat IP akan diperbolehkan mengakses website kita kecuali alamat IP 111.222.111.000, sedangkan bila kita ingin memblokir alamat IP yang memeliki rentang dari sekian sampai dengan sekian maka kita perlu menambahkan kode:

     deny from 111.222.111.

maksudnya adalah alamat IP dari 111.222.111.0-100 akan diblokir. Pengaturan yang kita lakukan ini juga akan terjadi seperti kita melakukannya di control panel (IP deny manager). Jika kita ingin memblokir berdasarkan alamat website, kita perlu menambahkan pada baris berikutnya sesuai dengan nama website yang akan diblokir dengan didahului tanda titik. contohnya: 

     deny from .domain.com

Selain itu kita dapat melakukan redirek halaman ketika kita akan melakukan perbaikan pada website atau blog kita, dan agar pengunjung langsung menuju ke halaman yang telah kita tentukan maka kita perlu menambahkan kode berikut ini:

     order deny,allow
     deny from all
     allow from 192.168.1.1
     ErrorDocument 403 /istirahat.html
     <Files istirahat.html>
     allow from all 
     </Files> 

Maka ketika pengunjung lain yang datang akan langsung melihat halaman istirahat.html sedangkan alamat IP 192.168.1.1 (misalnya alamat IP punya kita) dapat mengakses website dengan normal (bukan halaman istirahat.html).

5.      Bagaimana caranya melakukan redireksi?
Saat menuju suatu domain, ada dua kemungkinan umum url yang diketik orang. Misal untuk rendefu.com, orang bisa merujuk ke http://rendefu.com atau ke http://www.rendefu.com . Seringkali kita ingin kedua alamat tersebut merujuk ke website yang sama. Kita bisa saja menyajikan dua website identik di dua alamat tersebut, namun itu akan membuat statistik pengunjung web (misal untuk search engine optimization) terbagi dua. Cara yang lebih baik adalah dengan mengarahkan alamat yang satu ke alamat yang lain.
Sebagai contoh, misalkan aplikasi kita sajikan di http://rendefu.com . Maka di file konfigurasi virtualhost subdomain www nya, kita tulis:
<VirtualHost *:80>
ServerName  www.rendefu.com
Redirect permanent / http://rendefu.com/
</VirtualHost>
Tentu pengalihan bisa juga diarahkan sebaliknya, dari domain ke subdomain utama.
PERCOBAAN
List hostname dan password untuk kelompok 6:

ip                     : 10.252.108.76
Gateway          : 192.252.108.9
hostname         : kelompok6
root pass          : jarkom

Praktikum 1: Melakukan virtual hosting
Pada percobaan ini, akan dibuat dua buah website yang dihosting secara lokal di komputer. menyiapkan nama dua buah website tersebut, dan mempersiapkan pula halaman web untuk kedua web site tersebut. Jika halaman-halaman web tersebut telah siap, melakukan virtual hosting dengan cara dibawah:
1.      Pertama – tama, perlu untuk me-disable terlebih dahulu terhadap ebsiter default dari apache dengan:


2.      Mengkopikan setting file default ke file website. Ini adalah file konfigurasi Apache untuk virtual hosting. Selanjutnya, diperlukan untuk menyetting nama website, letak file html, dan lain – lain.



3.      Mengedit file
·         Konfigurasi www.kel6lama.com

·         Konfigurasi www.kel6baru.com



4.      Membuat file
·         Buat file untuk kel6lama


·         Buat file untuk kel6baru


5.      Mengkopi index
·         Mengkopi indeks kel6lama


·         Mengkopi indeks kel6baru


6.      Mengedit index
·         Edit index di kel6lama


·         Edit index di kel6baru


7.      Menjalankan web
·         Running kel6lama


·         Running kel6baru


8.      Konfigurasi host
·         etchosts kel6lama





·         etchosts kel6baru


9.      Melakukan apache server reload dan restart


Praktikum 2: Melakukan redirecting
1.      Mengizinkan override





2.      Merubah .htaccess kel6lama

Analisa: perlu merubah htaccess pada kel6lama, dikarenakan untuk menambahkan perintah redirect untuk menuju ke kel6baru.

3.      Mengaktifkan rewrite


4.      Mereload dan merestart apache


5.      Membuka www.kel6lama.com





6.      Tampilan www.kel6lama.com


7.      Setelah dibuka, akan dialihkan atau redirect ke www.kel6baru.com

Maka, akan langsung ter-redirect ke www.kel6baru.com

KESIMPULAN
Setelah melakukan percobaan di atas, maka dapat diambil kesimpulan bahwa:
·         Untuk mengakses web, diperlukan apache, untuk itu diperlukan untuk menginstallnya dan mengupdate dan restart setelah melakukan perubahan.
·         Dengan mengedit .htaccess, kita dapat melakukan redirect dari web lama yang sudah tidak berfungsi menuju ke web yang lebih terupdate.
·         Untuk mengedit isi dari halaman web, dapat diubah dengan perintah var/namadomain/index.html



Komentar

Postingan populer dari blog ini

Intrusion Detection System (SNORT) – PRAKTIKUM KEAMANAN DATA

Konfigurasi Keamanan Layanan Web (SSL/TLS)

PRAKTIKUM ADMIN JARINGAN WEB SERVER