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)
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
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.
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:
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
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>
</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
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
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
Posting Komentar