Skip to content
Files, Backups & FTP

File permissions explained (chmod, 644, 755 and why they matter)

On this page
  1. Reading the digits
  2. The values you actually need
  3. What NOT to do
  4. Changing permissions

Every file on a Linux web server has three permission flags - read (r), write (w), execute (x) - for three audiences: the file's owner, the owner's group, and everyone else. The permission is written as a 3-digit octal number like 644 or 755.

Reading the digits

DigitMeansAudience
7 = read + write + execute4+2+1first digit = owner
6 = read + write4+2second digit = group
5 = read + execute4+1third digit = everyone else
4 = read only4 
0 = no access0 

The values you actually need

  • 644 for files - owner can read/write, everyone else can read. Default for HTML, CSS, JS, images, PHP files.
  • 755 for folders - owner can read/write/list-contents, everyone else can read/list. Default for every directory.
  • 600 for sensitive config files like wp-config.php or .env - only owner can read.
  • 400 for SSH private keys - read-only by owner, nothing else.

What NOT to do

Never set anything to 777. Some old tutorials suggest "if it does not work, chmod 777" - this gives every script on the server full access to your file. Most plugin upload errors are caused by something else (PHP memory, file size limits) - 777 just opens a security hole.

Changing permissions

  • cPanel File Manager: right-click → Permissions → tick the boxes or type the octal value.
  • FileZilla: right-click the file → File Permissions → enter the value.
  • SSH: chmod 644 filename.php or chmod 755 foldername.

Open cPanel File Manager Permissions causing errors?

Was this helpful?
Loading