1. Mencegah Akses Ke .htaccess
Tambahkan baris berikut untuk menambah keamanan dari file .htaccess sehingga apabila ada usaha untuk mengakses file tersebut akan muncul pesan kesalahan 403. Tentu saja tidak lupa memberi-kan file permissionnya menjadi 644.
<Files .htaccess>
order allow,deny
deny from all
</Files>
2. Mencegah Akses Ke File TertentuUntuk membatasi akses ke file tertentu kita dapat menggunakan perintah berikut.Ganti nama rahasia.txt menjadi sesuai dengan kebutuhan anda.Nantinya file tersebut akan disembunyikan dan apa-bila terdapat usaha untuk mengakses file tersebut akan terjadi error 403.
<files rahasia.txt>
order allow,deny
deny from all
</files>
3. Mencegah Akses Ke Banyak File
Kita bisa mengganti beberapa extension dibawah sesuai dengan yang kita butuhkan.
<FilesMatch "\.(htaccess|htpasswd|ini|phps|fla|psd|log|sh)$">
Order Allow,Deny
Deny from all
</FilesMatch>
4. Mencegah User Melakukan Browsing Pada Setiap Direktori Server Kita
Mencegah User Melakukan Browsing Tanpa Pesan Error 403
IndexIgnore *
Mencegah User Melakukan Browsing Dengan Membatasi Extension File.
IndexIgnore *.wmv *.mp4 *.avi *.etc
5. Mengubah Index File
Secara default apabila kita membuat beberapa file dan salah satunya terdapat index file, maka file tersebutlah yang akan dijalankan terlebih dahulu. Dengan menggunakan .htaccess kita dapat merubah-nya menjadi nama file yang kita inginkan.
DirectoryIndex penggantiindex.php
6. Menyamarkan Extension PHP
Ini sangat berguna untuk menambahkan keamanan pada aplikasi PHP yang
anda buat. anda bisa mengganti extension php pada aplikasi anda dengan
extension yang telah anda daftarkan, Mungkin "LOL", "h#cking", dll. Nah
dengan kode berikut, file tersebut akan tetap dibaca sebagai file PHP.
Sedikit catatan, biasanya saya mencari file httpd.conf dan menambahkan
extensionnya disitu, akan tetapi inilah kelebihan .htaccess. Kita tidak
perlu merubah settingan asli pada Apache.
AddType application/x-httpd-php .hacking
7. Membatasi Akses Ke LAN (Local Area Network)
allow from 192.168.1.5
</Limit>
7.1. Bisa Menambahkan Domain
<Limit GET POST PUT>
order allow,deny
allow from all
deny from 192.168.1.5
deny from .*domain\.com.*
</Limit>
8. Mencegah Hotlinking
Hotlinking merupakan pencurian bandwidth melalui penggunaan sebuah image
yang akan dipasang pada suatu halaman pada website lain, sehingga
bandwidth dari website asal akan tersedot bila image yang dipasang pada
website lain itu dibuka. Atau secara simple bisa diterjemahkan, ada
orang lain yang mengkopi link image dari website kita dan menempatkannya
pada website miliknya. Memang tidak terlalu banyak memakan bandwith
akan tetapi hal ini cukup mengganggu dan mungkin kita bisa memberi
sedikit pelajaran kepada si Pelaku. Kita akan melakukan beberapa praktek
ringan.
Ketik kode berikut dan simpan dengan nama gambar.php
<?php
$pic = strip_tags( $_GET['pic'] );
if ( ! $pic ) {
die("Gambar Tidak Ditemukan");
}
?>
<html>
<head>
<title><?php echo($pic); ?></title>
</head>
<body>
<p>
<img src="/<?php echo($pic); ?>" alt="Test Hotlinking">
</p>
</body>
</html>
b. Siapkan gambar dengan nama terserah.jpg
c. Upload kedua file tersebut ke server hosting ente.
d. Buka browser dan ketik URL sebagai berikut
hxxp://websiteente.com/gambar.php?pic=terserah.jpg
maka hasil yg didapat sebagai berikut:
[Image: hotlink.png]
Bila hanya seperti ini orang lain bisa saja melakukan Copy Image URL
untuk menampilkannya di website miliknya dg kode begini:
hxxp://websiteente.com/terserah.jpg
Nah untuk mencegah hal itu terjadi maka kita harus menyiapkan file .htaccess yang berisi baris-baris seperti ini:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} .*jpg$|.*gif$|.*png$ [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !websitekamu\.com [NC]
RewriteCond %{HTTP_REFERER} !websiteteman\.com [NC]
RewriteCond %{HTTP_REFERER} !google\. [NC]
RewriteCond %{HTTP_REFERER} !search\?q=cache [NC]
RewriteRule (.*) /gambar.php?pic=$1
Maka ketika seseorang melakukannya lagi maka dia tidak akan mendapatkan hasil apa-apa.
9. Memberikan Password Pada File
<Files rahasia.php>
AuthType Basic
AuthName "Prompt"
AuthUserFile /home/path/.htpasswd
Require valid-user
</Files>
9.1. Memberikan Password Pada Banyak File
<FilesMatch "^(execute|index|secure|insanity|biscuit)*$">
AuthType basic
AuthName "Development"
AuthUserFile /home/path/.htpasswd
Require valid-user
</FilesMatch>
9.2. Memberikan Password Pada Direktori Dimana .htaccess Berada
resides
AuthType basic
AuthName "This directory is protected"
AuthUserFile /home/path/.htpasswd
AuthGroupFile /dev/null
Require valid-user
10. Otomatis Memberikan CHMOD Kepada Setiap File
chmod .htpasswd files 640
chmod .htaccess files 644
chmod php files 600
11. Melindungi Dari Serangan DOS ( Denial Of Service ) Dengan Membatasi Upload File
Ini adalah salah satu metode sederhana yang bisa kita gunakan untuk
mencegah serangan DOS. Disini kita membatasi ukuran upload sebesar
10240000 byte yang setara dengan 10 mb.
LimitRequestBody 10240000
12. Mengamankan Direktori Dari Pengeksekusian Script Atau File
AddHandler cgi-script .php .pl .py .jsp .asp .htm .shtml .sh .cgi
Options -ExecCGI
terima kasih infox. ini sangat membanti dalam mengamankan data di web saya. irnanto.com
BalasHapussama sama mas terimakasih juga atas kujungannya
BalasHapus