
Every file and directory on Linux has three permission sets: owner, group, and other. Each set has three bits: read (r=4), write (w=2), and execute (x=1). The combined value is what you set with chmod.
Quick reference: 644 = owner read/write, group/other read-only. 755 = owner read/write/execute, group/other read/execute. 600 = owner read/write only. 777 = everyone can do everything — almost always wrong.
Use ls -la to list permissions in symbolic notation, or stat for numeric and metadata details:
chmod changes permission bits; chown changes the owner and group. Use -R to apply recursively to a directory tree:
For WordPress and general web applications running behind Nginx with PHP-FPM, the correct permission model is:
Never set web application files to 777. The common excuse is "it fixed a permissions issue" — but 777 means any process on the server can write to those files, including a compromised web process from another site on the same server.
Use find to locate files with dangerous permissions across your server:
TIP: The -xdev flag prevents find from crossing filesystem boundaries — important on servers with mounted remote filesystems or Docker volumes that would otherwise be included in the scan.
CloudStick's Advanced File Manager (available on Basic plan and above) lets you browse server files, view and modify permissions, and manage file ownership directly from the dashboard — without needing to use SFTP or terminal commands. This is especially useful for quickly fixing a permissions issue on a specific file or directory without SSHing into the server.
We use cookies to improve your experience
CloudStick uses cookies to personalise content, analyse traffic and keep you signed in. Cookie Policy · Terms of Service