# chmod 700 — What It Means & When to Use It

> Only the owner can read, write and execute. Symbolic: `rwx------` · Safe when used as intended.

700 is fully private: the owner can do anything, and no other user — apart from root — can list, enter, read or run anything.

It's required in a few places. OpenSSH's StrictModes checks that `~/.ssh` isn't writable by anyone else, and GnuPG warns when `~/.gnupg` is accessible to others.

## Permission by permission

| Who | Permissions |
|---|---|
| owner | read, write and execute |
| group | no permissions |
| others | no permissions |

Symbolic chmod argument: `u=rwx,g=,o=`

## Use it for

- `~/.ssh` and `~/.gnupg` directories.
- Private scripts only you should run.
- Directories holding secrets, backups or personal data.

## Avoid it for

- Anything a service running as another user must read.
- Private files that aren't programs: use `600`.

## FAQ

### What permissions should ~/.ssh have?

700 for the ~/.ssh directory, 600 for private keys and authorized_keys, and 644 for public keys (.pub). Too-open permissions make sshd ignore authorized_keys or ssh refuse a key.

## Related modes

- [chmod 600](https://www.devkult.com/chmod/600.md): Only the owner can read and write
- [chmod 750](https://www.devkult.com/chmod/750.md): Owner can do everything; group can read and execute; others have no access
- [chmod 711](https://www.devkult.com/chmod/711.md): Owner can do everything; others can only pass through
- [chmod 755](https://www.devkult.com/chmod/755.md): Owner can do everything; group and others can read and execute

Open the interactive page: https://www.devkult.com/chmod/700