1. Halo Guest, pastikan Anda selalu menaati peraturan forum sebelum mengirimkan post atau thread baru.

Tips Praktis Security WordPress

Discussion in 'Wordpress' started by moomoo, Dec 31, 2014.

  1. moomoo

    moomoo Newbie

    Joined:
    Dec 23, 2014
    Messages:
    20
    Likes Received:
    15
    Website security untuk sebagian besar orang ibarat asuransi. Dirasa perlu begitu ketiban sial. Tips singkat ini saya peruntukkan buat teman-teman yang cukup bijak untuk "sedia payung sebelum hujan". Buat yang nggak peduli dengan security website-nya: keep flirting with disaster... :-B

    Aplikasi dari teknik yang saya dibahas di artikel ini cukup universal (bisa dipraktekkan untuk CSM yang lain) tapi mostly saya dedikasikan untuk self-hosted WordPress.

    OK, tanpa banyak basa-basi lagi kita mulai aja.

    DISCLAIMER: tips ini hanya informasi semata. Selalu backup file dan database WP sebelum mengaplikasikan sesuatu. Apabila anda bermaksud mengaplikasi tips yang dibahas di sini, resikonya anda tanggung sendiri. Penulis tidak bertanggung jawab apapun terhadap segala sesuatu yang mungkin diakibatkan dari diaplikasikannya tips ini baik secara langsung maupun tidak langsung.

    Jangan install WP pakai Softaculous atau auto installer script semacamnya. Memang cepat dan nyaman, "nggak ribet". Tapi script semacam ini meninggalkan installation pattern yang mudah banget ditebak. Alhasil, blog/websitenya jauh lebih mudah di-hack.

    Selalu install WP dengan cara manual. Kalau nggak terbiasa awalnya mungkin kelihatan serem dan bakal bikin kepala botak, tapi sebenarnya nggak sama sekali. Cuma perlu 15 - 30 menit untuk pelajari cara install WP manual. Instruksi detailnya bisa dilihat di website wordpress.org (maaf blm bisa posting link karena masih new member di sini).

    Install WP di sub directory jangan di root directory (public_html). Selain untuk meningkatkan security website, juga mempermudah manajemen files WP atau script lain yang juga diinstall di server (forum misalnya). Seperti intalasi manual WP, instalasi WP di sub directory juga mudah. Tinggal cari di wordpress.org (sekali lagi maaf blm bisa posting link karena statusnya masih new member).

    Jangan pakai username dan password yang mudah ditebak. Entah kenapa masih banyak sekali yang menggunakan username dan password yang bisa ditebak dengan mudah (cth: admin, 123456, 5150, summer, sunshine, dsb). Mungkin karena kalau pakai password yang susah, susah juga ngingetnya. Solusinya gampang. Gunakan software semacam LastPass, Roboform, dsb. Memang ada biayanya tapi kalau websitenya website bisnis dan menghasilkan uang, biaya software password manager nggak ada apa-apanya.

    Jangan malas update themes dan plugins WP anda. Ini juga salah satu kasus laten yang sering terjadi.

    Jangan menggunakan free WP themes atau plugins yang di host di server lain selain WP themes dan plugins repository. Tidak ada masalah dengan menggunakan themes atau plugins yang gratisan. Banyak themes dan plugins gratisan yang bahkan lebih bagus (properly coded) daripada themes dan plugins premium. Yang bahaya adalah download dari situs-situs di luar WP repository kecuali yakin betul dari sumber downloadnya reputable.

    Jangan host blog/website di hosting provider abal-abal. Semua orang pengen berhemat dan berhemat adalah kebiasaan yang sangat baik. Tapi untuk kasus hosting website, "you get what you paid for".

    Gunakan .htaccess security rules. Berikut beberapa contohnya. Copy dan paste rulesnya di .htaccess yang ada di directory yang sama dengan instalasi WP-nya. Letakkan di bawah # END WordPress (asumsi fitur permalink WP-nya diaktifkan):

    Code:
    # PREVENT DIRECTORY LISTINGS
    Options -Indexes
    Keterangan: supaya list directory servernya tidak bisa dilihat orang.

    Code:
    # STRONG HTACCESS PROTECTION
    <Files ~ "^.*\.([Hh][Tt][Aa])">
     order allow,deny
     deny from all
     satisfy all
    </Files>
    Keterangan: untuk memproteksi .htaccess yang dipergunakan.

    Code:
    # PROTECT WP-CONFIG
    <Files wp-config.php>
     Order Allow,Deny
     Deny from all
    </Files>
    Keterangan: untuk memproteksi file wp-config.

    Code:
    # HOTLINK PROTECTION
    <IfModule mod_rewrite.c>
     RewriteEngine on
     RewriteCond %{HTTP_REFERER} !^$
     RewriteCond %{REQUEST_FILENAME} -f
     RewriteCond %{REQUEST_FILENAME} \.(gif|jpe?g?|png)$ [NC]
     RewriteCond %{HTTP_REFERER} !^https?://([^.]+\.)?DOMAIN\. [NC]
     RewriteCond %{HTTP_REFERER} !^http?://([^.]+\.)?DOMAIN\. [NC]
     RewriteRule \.(gif|jpe?g?|png)$ - [F,NC,L]
    </IfModule>
    Keterangan: supaya orang nggak bisa hotlink images yang dihost di web server kita. Hotlink membebani server yang kita pergunakan. Ganti DOMAIN dengan nama domain anda (contoh: domainku). Ingat, nama domainnya aja ya, TANPA tld (com, net, info, dsb).

    Code:
    # BLOCK NO-REFERER SPAM
    <IfModule mod_rewrite.c>
     RewriteEngine On
     RewriteCond %{REQUEST_METHOD} POST
     RewriteCond %{HTTP_USER_AGENT} ^$ [OR]
     RewriteCond %{HTTP_REFERER} !.*DOMAIN.TLD.* [NC]
     RewriteCond %{REQUEST_URI} /wp\-comments\-post\.php [NC]
     RewriteRule .* - [F,NC,L]
    </IfModule>
    Keterangan: untuk memproteksi fitur comment WP dari SPAM (dengan asumsi fitur ini diaktifkan). Ganti DOMAIN dengan nama domain anda (contoh: domainku). Ganti TLD dengan tld domainnya (contoh: com, net, info, dsb).

    Code:
    # PROTECT SCRIPT INJECTION
    Options +FollowSymLinks
    RewriteEngine On
    RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
    RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
    RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
    RewriteRule ^(.*)$ index.php [F,L]
    Keterangan: supaya orang nggak bisa inject script ke server yang kita pergunakan. Kalau websitenya di host di hosting provider yang bagus, mereka akan men-set security servernya dengan sangat baik jadi rule yang satu ini bukan "must-have" tapi lebih baik safe daripada beresiko.

    Code:
    # DISABLE SERVER SIGNATURE
    ServerSignature Off
    Keterangan: by default, setiap ada error pages, server Apache akan menginformasikan nomor versi servernya. Info ini bisa digunakan oleh hackers. Rule yang satu ini mematikan fungsi tersebut.

    Code:
    # LIMIT FILE UPLOADS TO 10 MB
    LimitRequestBody 10240000
    Keterangan: membatasi file size yang bisa diupload ke server.

    Semoga cukup bermanfaat.
     
    Last edited: Dec 31, 2014
    donjon, mexRomeo, jokondo2 and 5 others like this.
  2. pulungagung

    pulungagung Hero

    Joined:
    Nov 17, 2014
    Messages:
    609
    Likes Received:
    130
    Itu code2 di apakan gan? Di upload di hosting ato mesti gmn? Maklum masih nuewbie banger
     
  3. WEBDELNET

    WEBDELNET Ads.id Fan

    Joined:
    Jan 6, 2015
    Messages:
    107
    Likes Received:
    16
    ditaruh di htaccess gan, di main directory file2 WP nya
     
  4. ndutzzzzzz

    ndutzzzzzz Ads.id Starter

    Joined:
    May 7, 2013
    Messages:
    60
    Likes Received:
    0
    Location:
    Tangerang
    ih mantep banget mas..
    thanks loh share nya..soalnya emang wordpress gampang di bobol sih hahaha
     
  5. msobri

    msobri Ads.id Starter

    Joined:
    Sep 10, 2013
    Messages:
    73
    Likes Received:
    0
    Ninggalin jejek masgan.., walaupun belo mudeng ane:D
     
  6. Alluka Kyu

    Alluka Kyu Cuma Follower~

    Joined:
    Aug 30, 2014
    Messages:
    117
    Likes Received:
    17
    Location:
    Cuma Follower <3
    hmm .. ane instal pake softa terus pake limit login attempts ..
    itu berarti masih blum bisa di bilang safe ya ..
     
  7. yovebi

    yovebi Newbie

    Joined:
    Jul 21, 2014
    Messages:
    24
    Likes Received:
    0
    semua code bs sekaligus dimasukkin ke .httaccess ga gan?
     
  8. kapanjinak

    kapanjinak Ads.id Fan

    Joined:
    Dec 29, 2014
    Messages:
    116
    Likes Received:
    3
    Thanks banget mas, semoga wp saya gada yg mau jahilin hehe
     
  9. Aprilia88

    Aprilia88 Super Hero

    Joined:
    Dec 26, 2013
    Messages:
    2,127
    Likes Received:
    87
    Untuk htaccess, kodenya harus dimasukkan semua untuk masing-masing website atau cuma di root saja gan?
     
  10. kreatif.user

    kreatif.user Ads.id Starter

    Joined:
    Jan 28, 2015
    Messages:
    75
    Likes Received:
    1
    ilmu baru seting htcacces nih, makasih mas gan
     
  11. sorfia26

    sorfia26 Super Hero

    Joined:
    May 6, 2013
    Messages:
    854
    Likes Received:
    32
    Location:
    in front of My Gadget
    Tkp gan, tengs share nya, like penceted
     
  12. jessy123

    jessy123 Newbie

    Joined:
    Jul 16, 2012
    Messages:
    34
    Likes Received:
    2
    mantap gan.....lumayan nambah ilmu dari pada lumayun:D
     
  13. myhakim

    myhakim Newbie

    Joined:
    Jan 6, 2015
    Messages:
    27
    Likes Received:
    1
    Location:
    Surabaya
    pengen nerapin ilmunya, tapi kok ya ndak mudeng ya.... maklum deh ....
     
  14. donjon

    donjon Ads.id Fan

    Joined:
    Oct 26, 2014
    Messages:
    124
    Likes Received:
    4
    Makasih mastah, ilmunya bener2 bermanfaat
     
  15. macanloreks

    macanloreks Ads.id Pro

    Joined:
    Jun 10, 2013
    Messages:
    357
    Likes Received:
    58
    Location:
    127.0.0.1
    terimakasih gan sudah berbagi..
    ane coba terapin dulu, kebetulan lagi belajar WP. :senyum:
     
  16. Agus Pian

    Agus Pian Blogger Super Ngeraos

    Joined:
    Apr 19, 2013
    Messages:
    3,355
    Likes Received:
    130
    Location:
    NTB
    Manteb gan, dan juga tambah plugin limit login attemp beserta ganti wp-admin jadi url berbeda
     

Share This Page