WordPress

Tips Security - Memproteksi WordPres dengan Cara Sederhana

Oleh Wak Jek• 20 Komentar Arsip

Tips Security - Memproteksi WordPres dengan Cara Sederhana

Berikut ini ada beberapa cara untuk meningkatkan keamanan website berbasis WordPress anda.

=================================
1. Memproteksi Login Page dengan Secret Key
=================================

Caranya dengan menambahkan query tertentu ke URL wp-login.php, jika query tersebut tidak ditambahkan ketika mengakses wp-login, maka otomatis akan redirect kembali ke home.

Contoh berikut kita menambahkan secret key 'something'

add_action('init','login_protection');

function login_protection () {
$secret_key = 'something';

if($_SERVER['PHP_SELF'] == '/wp-login.php')
if(!isset($_GET[$secret_key])) {
wp_redirect(site_url());
}
}

Untuk mengakses login dengan cara http://websiteanda.com/wp-login.php?something

'something' ini bisa apa aja, asal jangan diberitahu ke siapapun. hehe.

===============================
2. Mencegah directory listing (Apache only)
===============================

Apache secara default menampilkan isi folder jika di folder tersebut tidak ada index.php atau index.html

Daripada anda harus membuat index.html di setiap folder, sebaiknya pake .htacces aja.

bikin file .htaccess di direktori wp-contents, isinya:

Options -Indexes

Dengan membuat .htaccess tersebut, secara otomatis maka direktori listing di folder upload, plugin, themes dan semua folder di bawah wp-contents tidak akan terindex.

NB: Jika setelah memasang .htacess ini file2 wp-contents tidak bisa diakses atau, error 500, berarti server anda tidak memperbolehkan mengganti option -indexes. sebaiknya hapus aja .htaccess tersebut.

Jika pake webserver Nginx, tidak perlu trik ini karena secara default nginx tidak menampilkan direktori listing.

====================================
3. Mencegah file template /plugin diakses langsung
====================================

Coba akses langsung salah satu file theme Anda. misalnya
http://example.com/wp-content/themes/mytheme/index.php

Biasanya akan muncul error seperti ini.

Fatal error: Call to undefined function get_header() in /username/public_html/wp-content/themes/mytheme/index.php on line 1

Wow, berarti username cpanel Anda akan kelihatan, dan bisa saja disalahgunakan orang lain.

Solusi:
Ketika membuat theme/plugin, sebaiknya disetiap awal file tambahkan

defined('ABSPATH') or die();
?>

Dengan begitu file2 theme tidak bisa diakses langsung.

---------------
Disclaimer: Tidak ada jaminan bahwa cara ini dapat mengamankan website Anda 100%.

Tulisan ini sudah berumur: 13 tahun 3 bulan 21 hari. Informasi di dalamnya mungkin sudah tidak relevan, tapi nilai historisnya sangat berharga, terutama bagi saya sebagai penulisnya.

(Dipulihkan dari arsip Facebook oleh Wak Jek)

Tag Terkait:

Komentar (20)

Arsip Statis
Uchan Utchanovsky
ane cobain yah gan xD
Wak Jek
oke, ntar kasi tau URL nya biar ane coba work atau gk. hehe
Fitrah Ajah
ntu bener kk., ko kayanya ada yg kurang ya... logika if $secret == 'something' ga ada ya.. :bingung
Fitrah Ajah
ato if $_get['secret']==$secret_key CMIIW
Wak Jek
coba aja dulu. :D
Wak Jek
Fitrah Ajah, kyk gitu bisa juga, tapi cara aksesnya ntar wp-login.php?secret=something
Ferry Fernando
(y)
Fitrah Ajah
ooo ic ic ane baru tau klo ?something ntu bisa dijadiin parameter jadi lebih simpel ya., klo tadi ane nangkepnya jadi get aja ?secret=something (y)
Wak Jek
udah diupdate docs nya, ada bbrp tambahan hehe
Muh Mahaja Yuliart
wahh sangatt membantuu cobaa dulu WP ane abiss kenak Devicee aselole
Wira AlFine
:: mantap nih, tengkyu banyak gan, saya udah coba yg .htaccess,,,
Ari Setiawan Abimanyu
okeh. ntar klo dah jadi prakteknya
Fitrah Ajah
iyeu mang Aris Kapisa
Wak Jek
Bs jg sih oom Abah Sidi, tapi hanya berlaku untuk apache, klo nginx gmn?
Achmad Tantowi
untuk cara nomor 1 itu scriptnya d taro mana ya? # masih pemula
Wak Jek
di functions.php di theme nya. btw code no #1 udah ane revisi, sekarang pake action 'init', bukan 'login_head'
Semut Saurus
ada versi wp 3.5.2 yang baru http://wordpress.org/download/release-archive/ gimana kira-kira bang
Lukman Hakim
wahh sip juga ini.. bisa dipraktekkan... tapi, security tidak akan bisa 100% aman,
Wak Jek
ya, emang gk ada kok yang 100% aman :D
Lukman Hakim
karena kesempurnaan milik Tuhan :D hehee