Tutorial penggunaan .htaccess

0
File .htaccess adalah file teks ASCII sederhana yang terletak di direktori www atau di sebuah sub direktori folder www. Anda bisa membuat atau mengedit file ini di Text Editor (Notepad) dan kemudian meng-uploadnya ke direktori yang ingin anda ubah setting-nya. Pastikan bahwa file tersebut diupload dalam format ASCII bukan BINARY, dan pastikan file permission untuk file tersebut telah diset menjadi 644 (rw-r-r–). Hal tersebut memungkinkan server untuk mengakses file tapi mencegah user untuk mengakses file tersebut dari browser mereka.

ntu sedikit penjelasan tentang .htaccess dan pada trit cupu ane kali ini ane ga akan banyak menjelaskan tentang apa dan bagaimana itu file .htaccess, tp beberapa kegunaan file ini yang akan bermanfaat
untuk Security. Okeh langsung cruutz aja yak.. Ngakak

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 Tertentu
Untuk 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
Options All -Indexes 
4.1. Mengijinkan User Melakukan Browsing
Jika mengijinkan user untuk melakukan browsing pada “direktori yang telah kita tentukan” cukup menambahkan perintah seperti dibawah ini.(Cukup tempatkan file .htaccess pada folder yang diinginkan)

Options All +Indexes 
4.2. Mencegah User Melakukan Browsing Tanpa Pesan Error 403
IndexIgnore * 
4.3. 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”, “hacking”, 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)
<Limit GET POST PUT>
order deny,allow
deny from all
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 :D. Kita akan melakukan beberapa praktek ringan.
a. Ketik kode berikut dan simpan dengan nama gambar.php
PHP Code:
<?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
http://websiteente.com/gambar.php?pic=terserah.jpg

Bila hanya seperti ini orang lain bisa saja melakukan Copy Image URL untuk menampilkannya di website miliknya dg kode bgini:
http://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 
hmmh... segitu dulu deh,, Capek moga bermanfaat yah Bigsmile