Proteksi Website dari Hacker Menggunakan .htaccess

Seperti pembahasan pada artikel sebelumnya bahwa Hacking dapat merugikan dari segala sisi termasuk posisi SERP web anda. Berikut ini penulis beberapa tips untuk proteksi website dari hacker menggunakan .htaccess serta beberapa kode .htaccess penting untuk penerapan seo anda. Adapun untuk memproteksinya harus dilakukan dengan cara masuk ke cpanel ataupun menggunakan ftp.

Beberapa  htaccess dibawah ini dapat membantu anda memproteksi website anda atas serangan hacker seperti redirection serta akan membantu untuk mengoptimalisasi kerja server anda.

A. Untuk penerapan teknik onpage SEO Umum

1. SEO Friendly Redirects

Apa yang dimaksud dengan SEO Friendly Redirects dan mengapa redirect seperti ini dibutuhkan? Search engines pada umumnya pada saat mengcrawling website anda akan mengupdate alogaritmanya atas web anda dimana pada akhirnya akan menentukan posisi SERP anda. Hindari tindakan membiarkan web anda pada saat anda melakukan maintenance dengan membiarkan begitu saja. Ada beberapa redirect yang dapat dilakukan untuk ini baik menggunakan permanent redirects ataupun temporary redirects.

Contoh penerapannya*) adalah dengan menginput :

Redirect 301 https://edricweb.com https://www.edricweb.com/ (Permanent Redirect)

Bila anda ingin menredirect secara permanen

Redirect 302 https://edricweb.com https://www.edricweb.com/ (Temporary Redirect)

*) ganti alamat situs dengan alamat yang akan anda redirect. Alamat pertama adalah alamat asal web anda dan alamat kedua adalah alamat yang akan anda tuju (redirect)

Bila anda ingin menredirect secara permanen

 

2. Redirect ke alamat website

Salah satu SEO guideline adalah menunjuk 1 alamat url saja. Oleh sebab itu anda harus menredirect semua traffic www atau non-www

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^edricweb.com [NC]
RewriteRule ^(.*)$ https://www.edricweb.com/$1 [L,R=301]

Alamat url pertama adalah alamat asal

Alamat url kedua adalah alamat permanen yang akan tuju baik menggunakan www atau tanpa www

3. Custom Error page

Error page akan membuat website pada saat web dicrawling menjadi halaman kosong atau bahkan broken link. Tindakan seperti ini dapat membahayakan posisi SERP anda.

ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php

Petunjuk menggunakannya adalah dengan mengganti mulai dari folder / ke alamat yang akan anda tuju

 

B. Untuk penerapan hacking pada website

Kode htaccess berikut akan menambah keamanan atas akses web server anda dari tindakan hacking pada server anda.

1. Hotlinking protection menggunakan .htaccess

Dengan menggunakan kode htaccess hotlinking akan mencegah pencurian bandwith anda pada website dengan memproteksi gambar  atau sumber lain yang dihostingkan pada server digunakan pada website lain.

RewriteBase /
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?edricweb.com/.*$ [NC]
RewriteRule .(gif|jpg|swf|flv|png)$ /feed/ [R=302,L]

 

2. Mencegah hacking

Salah satu tindakan umum yang dilakukan pada website adalah menambah malicious code, menginjeksi sql anda serta tindakan lain. Bila anda ingin menambah tingkat keamanan pada website maka beberapa kode htaccess yang akan ditambahkan antara lain sebagai berikut :

2. a. Tindakan untuk menginjeksi website diluar otoritas

RewriteEngine On
# proc/self/environ? no way!
RewriteCond %{QUERY_STRING} proc/self/environ [OR]
# Block out any script trying to set a mosConfig value through the URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR]
# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2})
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]

2.b Menonaktifkan directory browsing

Tindakan ini berguna sehingga hacker tidak dapat membrowsing direktori pada server web anda dimana hacker akan menyerang salah satu file atau menyusupi skrip kedalam direktori yang ada pada web anda.

# disable directory browsing
Options All -Indexes

 

2.c Memblokir injeksi ke SQL

# Block MySQL injections, RFI, base64, etc.
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=http:// [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=(..//?)+ [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=/([a-z0-9_.]//?)+ [NC,OR]
RewriteCond %{QUERY_STRING} =PHP[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12} [NC,OR]
RewriteCond %{QUERY_STRING} (../|..) [OR]
RewriteCond %{QUERY_STRING} ftp: [NC,OR]
RewriteCond %{QUERY_STRING} http: [NC,OR]
RewriteCond %{QUERY_STRING} https: [NC,OR]
RewriteCond %{QUERY_STRING} =|w| [NC,OR]
RewriteCond %{QUERY_STRING} ^(.*)/self/(.*)$ [NC,OR]
RewriteCond %{QUERY_STRING} ^(.*)cPath=http://(.*)$ [NC,OR]
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} (<|%3C).*iframe.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} (<|%3C)([^i]*i)+frame.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} base64_encode.*(.*) [NC,OR]
RewriteCond %{QUERY_STRING} base64_(en|de)code[^(]*([^)]*) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} ^.*([|]|(|)|<|>).* [NC,OR]
RewriteCond %{QUERY_STRING} (NULL|OUTFILE|LOAD_FILE) [OR]
RewriteCond %{QUERY_STRING} (./|../|…/)+(motd|etc|bin) [NC,OR]
RewriteCond %{QUERY_STRING} (localhost|loopback|127.0.0.1) [NC,OR]
RewriteCond %{QUERY_STRING} (<|>|’|%0A|%0D|%27|%3C|%3E|%00) [NC,OR]
RewriteCond %{QUERY_STRING} concat[^(]*( [NC,OR]
RewriteCond %{QUERY_STRING} union([^s]*s)+elect [NC,OR]
RewriteCond %{QUERY_STRING} union([^a]*a)+ll([^s]*s)+elect [NC,OR]
RewriteCond %{QUERY_STRING} (;|<|>|’|”|)|%0A|%0D|%22|%27|%3C|%3E|%00).*(/*|union|select|insert|drop|delete|update|cast|create|char|convert|alter|declare|order|script|set|md5|benchmark|encode) [NC,OR]
RewriteCond %{QUERY_STRING} (sp_executesql) [NC]
RewriteRule ^(.*)$ – [F,L]

 

2.d Memblokir IP hacker atau tindakan yang sering dicurigai melakukan tindakan web anda.

Bila website anda dilengkapi dengan fitur yang bisa mendeteksi asal tindakan hacking, anda dapat memblokir ip nya. Referensi hosting yang terdapat fitur ini adalah EdRic Hosting

Berikut contoh dari pemblokiran IP yang kami lakukan disebabkan adanya beberapa yang dicurigai sebagai tindakan hacking dan anda tinggal mengganti sesuai dengan IP yang dicurigai melakukan hacking atau mendelete mulai dari deny from saja bila dianggap tidak perlu dilakukan blokir.

#IP authentication
order allow,deny
deny from 45.57.138.46
deny from 155.94.165.32
deny from 186.27.127.129
deny from 117.156.15.19
deny from 208.115.124.10
deny from 67.17.36.173
deny from 67.17.34.2
deny from 155.94.165.167
deny from 158.222.15.22
deny from 155.94.165.32
deny from 67.17.34.57
deny from 59.42.251.197
deny from 208.115.124.10
deny from 23.94.74.122
deny from 113.88.137.92
deny from 220.191.178.2
deny from 120.198.236.10
deny from 116.112.102.38
deny from 183.10.121.213
deny from 115.182.83.38
deny from 173.232.96.129
deny from 23.94.74.122
deny from 116.93.109.137
deny from 204.44.90.44
deny from 155.94.165.17
deny from 192.119.158.144
deny from 115.238.225.26
deny from 94.242.246.192
deny from 216.244.81.34
deny from 211.218.126.189
deny from 23.94.82.248
deny from 173.66.125.228
deny from 162.206.241.53
deny from 190.202.82.234
deny from 192.210.133.231
deny from 1.234.45.50
deny from 177.159.200.100
deny from 221.229.252.98
deny from 195.154.251.120
deny from 104.144.132.117
deny from 124.206.186.161
deny from 189.91.0.24
deny from 117.135.241.79
deny from 74.208.209.116
deny from 179.61.138.186
deny from 91.218.228.196
deny from 104.168.99.27
deny from 115.231.65.16
deny from 221.178.182.20
deny from 85.214.250.48
deny from 192.210.134.139
deny from 93.127.148.201
deny from 107.173.247.123
deny from 23.95.185.133
deny from 221.178.182.96
deny from 185.28.193.95
deny from 23.94.133.140
deny from 192.3.131.248
allow from all

 

Terhitung sejak 17 November 2015 maka setiap pelanggan akan otomatis diberikan perlindungan ini.

Skrip diatas adalah skrip umum guna kepentingan SERP dan Hacking pada. Atau bila anda membutuhkan skrip ini  yang lengkap dan komplit, silakan menghubungi kami

Proteksi Website dari Hacker Menggunakan .htaccess