Setiap file dan folder di server punya tiga angka yang menentukan siapa yang boleh membaca, mengubah, atau menjalankannya. Dengan angka yang benar, website berjalan dan penyerang punya ruang gerak lebih sempit. Dengan angka yang salah, website menampilkan “403 Forbidden”, atau script apa pun bisa menimpa file Anda.
Yang akan Anda capai
- memahami arti 644, 755, dan 777;
- memeriksa dan memperbaiki izin file dari Enhance;
- melindungi
wp-config.phpdan folder gambar di website WordPress.
Arti angka-angkanya
Ketiga angka itu berurutan untuk pemilik (pengguna website Anda), grup, dan lainnya. Setiap angka adalah penjumlahan: 4 = baca, 2 = tulis, 1 = jalankan (untuk folder: masuk ke folder).
| Angka | Untuk | Artinya |
|---|---|---|
| 644 | file | Anda membaca dan menulis; yang lain hanya membaca |
| 755 | folder | Anda masuk, membaca, dan menulis; yang lain masuk dan membaca |
| 640 atau 600 | file berisi password, misalnya wp-config.php | hanya Anda (dan grup, pada 640) yang bisa membacanya |
| 777 | — | siapa pun bisa membaca, menulis, dan menjalankan. Jangan pernah dipakai |
Di hosting NBT Host, file yang diunggah dari Enhance atau lewat FTP biasanya otomatis mendapat 644 dan 755. Masalah muncul setelah plugin mengubah izin, setelah arsip dari server lain diekstrak, atau setelah mengikuti saran “pasang 777 pasti jalan” dari forum.
Sebelum memulai
- Buat backup website: di Enhance, di halaman website, tab “Backups” » “Create backup” (di antarmuka “English (US)”, “Backup now”).
- Nama menu Enhance ditulis dalam bahasa Inggris, persis seperti di layar. Jika panel tampil dalam bahasa lain, ubah ke bahasa Inggris dari kanan atas: “My account” » “Language”.
Langkah-langkah
A. Memeriksa izin
- Di Enhance, buka “Websites”, lalu website Anda dan tab “Files”.
- Klik kanan pada file atau folder » “Get info”: Anda melihat izin, pemilik, dan tanggal perubahan.
- Periksa terutama
public_html,wp-config.php,.htaccess, serta folderwp-contentdanwp-content/uploads.
B. Memperbaiki izin
- Klik kanan pada file atau folder » “Permissions (CHMOD)”.
- Pasang 644 untuk file dan 755 untuk folder.
- Untuk folder, centang “Apply recursively” hanya jika Anda yakin semua isinya harus punya angka yang sama. Jangan terapkan 755 secara rekursif pada folder berisi file: file-file itu akan mendapat hak jalankan tanpa alasan.
- Buka website dan periksa apakah berjalan normal.
C. Melindungi wp-config.php
Di wp-config.php tersimpan password database dan kunci keamanan WordPress.
- Pasang izin 640. Buka website: jika berjalan normal, Anda bisa mencoba 600. Jika muncul error, kembalikan ke 644 dan hubungi kami.
Tambahkan aturan di bawah ini ke
.htaccessdipublic_html. Aturan ini menolak setiap permintaan langsung dari browser ke file tersebut, tanpa mengganggu WordPress:<Files wp-config.php> Require all denied </Files>File
.htaccessdiedit dari tab “Files”: klik kanan » “Edit”, lalu “Save” (langkah-langkahnya ada di Redirect ke HTTPS dan www).
D. Mencegah PHP berjalan di folder gambar
Di wp-content/uploads tersimpan foto dan dokumen yang diunggah. Di sana kode PHP tidak boleh pernah berjalan, tetapi penyerang yang berhasil mengunggah file justru menaruhnya di situ.
- Di tab “Files”, masuk ke
wp-content/uploads. - Buat file
.htaccessdengan “New file”, buka dengan “Edit”, lalu isi dengan:<FilesMatch "\.(?i:php|phtml|phar)$"> Require all denied </FilesMatch> - Simpan dan pastikan foto di website tetap tampil. Foto tidak terpengaruh: aturan ini hanya memblokir file PHP.
Beberapa plugin menyimpan file PHP-nya di uploads. Jika setelah aturan ini sebuah plugin tidak berfungsi, hapus aturannya dan kirimkan nama plugin tersebut kepada kami.
Yang tidak boleh dilakukan
- Jangan pasang 777, meskipun “cuma semenit”. Jika plugin butuh 777 agar berfungsi, itu masalah plugin-nya.
- Jangan mengubah pemilik file dengan alat yang ditemukan di internet. Di hosting, file dimiliki pengguna website Anda, dan PHP berjalan dengan pengguna yang sama.
- Jangan meninggalkan salinan lama di
public_html(backup.zip,site-vechi.sql,wp-config.php.bak): siapa pun yang menebak namanya bisa mengunduhnya dari browser.
Jika ada kendala
- Website menampilkan “403 Forbidden”. Ada file atau folder dengan izin terlalu ketat, misalnya 700 pada folder. Lihat Error 403 Forbidden: penyebab dan cara memperbaikinya.
- Website menampilkan “500 Internal Server Error” setelah Anda mengedit
.htaccess. Ada salah ketik di aturan yang ditambahkan. Hapus baris baru, simpan, lalu coba lagi (lihat Error 500 Internal Server Error dan halaman putih). - WordPress tidak bisa lagi menginstal plugin atau update. Ada folder di
wp-contentyang tidak bisa ditulisi. Pasang 755. - Izin kembali sendiri ke 777 atau nilai lain. Penyebabnya bisa plugin atau tanda malware. Lihat Cara mengetahui website terkena malware.
