Permission file SHTML (Server Side Includes) yang benar dan paling aman di lingkungan web server berbasis Linux (Apache/Nginx) adalah 644 untuk file (.shtml) dan 755 untuk direktori atau folder penyimpanannya. Pengaturan ini memberikan hak akses baca bagi publik, namun hanya pemilik file (owner) yang memiliki hak tulis (write), sehingga mencegah pihak tidak berwenang memodifikasi skrip SSI atau menyisipkan kode berbahaya.
Kesalahan dalam mengatur izin akses file SHTML sangat berisiko terhadap eksploitasi keamanan, terutama karena teknologi SSI memungkinkan eksekusi perintah sistem melalui direktif seperti #exec jika tidak dikonfigurasi dengan benar pada tingkat server (httpd.conf atau .htaccess).
Tabel Standar Permission File & Direktori Server Web
| Jenis Objek | Permission Oktal | Simbolik (chmod) | Hak Akses Pemilik (User) | Hak Akses Grup | Hak Akses Publik (World) |
|---|---|---|---|---|---|
| File SHTML / HTML / PHP | 644 | -rw-r--r-- | Baca, Tulis (Read, Write) | Baca (Read) | Baca (Read) |
| Direktori / Folder | 755 | drwxr-xr-x | Baca, Tulis, Eksekusi | Baca, Eksekusi | Baca, Eksekusi |
| File Konfigurasi Sensitif | 400 atau 440 | -r-------- | Baca Saja | Baca (Opsional) | Tidak Ada Akses |
Cara Mengubah Permission File SHTML
Pengaturan permission dapat dilakukan melalui dua metode utama yang umum digunakan oleh pengelola web, yaitu melalui panel kontrol hosting (cPanel/DirectAdmin) atau menggunakan perintah terminal SSH.
1. Melalui Terminal SSH (Linux Command Line)
Gunakan perintah chmod untuk mengubah hak akses file secara spesifik di direktori web Anda (biasanya berada di /public_html/):
# Mengubah permission file tunggal
chmod 644 index.shtml
# Mengubah permission seluruh file .shtml secara rekursif di dalam direktori
find /var/www/html -type f -name "*.shtml" -exec chmod 644 {} \;
# Mengubah permission seluruh direktori menjadi 755
find /var/www/html -type d -exec chmod 755 {} \;
2. Melalui File Manager cPanel atau Klien FTP (FileZilla)
- Login ke akun cPanel Anda, lalu buka File Manager.
- Arahkan ke direktori tempat file SHTML disimpan.
- Klik kanan pada file SHTML yang dimaksud, lalu pilih Change Permissions (atau File Attributes pada FileZilla).
- Centang kotak pada User: Read & Write, Group: Read, dan World: Read sehingga bernilai numerik 644.
- Klik tombol Change Permissions untuk menyimpan perubahan.
Risiko Keamanan SSI dan Tips Mitigasi
File dengan ekstensi .shtml memproses perintah Server Side Includes. Jika permission file terlalu longgar (misalnya 777), pengguna lain di server yang sama atau penyerang melalui celah aplikasi dapat mengubah isi file dan menjalankan perintah berbahaya menggunakan modul mod_include Apache.
Pastikan Anda menonaktifkan direktif includesNoExec jika tidak membutuhkan eksekusi perintah shell eksternal di dalam file SHTML Anda untuk meningkatkan keamanan server secara menyeluruh.