Menu

1 / 2

Stop Using chmod 777: A Developer's Guide to Linux File Permissions

DEV Community·Abdullah Al Jahid·6 months ago
#w45t55pc
#linux#security#chmod#file#permissions
Reading 0:00
15s threshold

Last month, a friend's side project got hacked. The attacker uploaded a PHP shell through a file upload form and executed it. The root cause? Every directory on the server was set to chmod 777 .

He told me:

"I kept getting permission denied errors during deployment, so I just 777'd everything."

Sound familiar? Let's fix that.

What chmod Actually Does

chmod (change mode) controls who can read , write , and execute files on Linux. Every file has three permission sets:

Owner — the user who created the file

Group — users in the file's group

Others — everyone else

Each gets a combination of:

Permission Symbol Value Meaning

Read r 4 View contents

Write w 2 Modify/delete

Execute x 1 Run as program

None - 0 No access

Add the values to get each digit. So 7 = 4+2+1 (rwx) , 5 = 4+1 (r-x) , 4 = 4 (r--) .

Three digits = owner, group, others. That's it.…

Continue reading — create a free account

Join HashtagPLUS to read full articles, follow hashtags, vote, and join the conversation.