Skip to main content

750

750 Permission Code**

Permission Code: 750 Owner Full, Group Read/Execute, Public No Access

750 allows the owner full control, the group read/execute, and denies all access to others (public).

rwxr-x---

This configuration is used when only the site owner and system/webserver group should access directories, and **no one else should have visibility or traversal capabilities.

Technical Permission Structure

NoRoleBitsAccess GrantedSymbol
1Ownerrwx✓ full🔑
2Groupr-x✓ read/execute👥
3Others---✗ no access🚫

Behavior in Linux

  • Owner can read, write, execute
  • Group can read and enter directory (no write)
  • Others cannot read, traverse, or execute
  • Directory becomes private to owner + trusted group

WordPress Use Cases

NoUse CaseSuitabilityReason
1Hardened single-site VPS✅ recommendedrestrict public filesystem access
2Private intranet WordPress✅ recommendedfull privacy
3Staging server behind auth✅ ideallimit exposure
4Multi-site shared dev❌ avoidgroup needs write (use 775)
5Shared hosting❌ avoidothers may need read access

Why Choose 750

750 is a **security-first variant of 755.

755

  • Public can read and traverse directories
  • Standard WordPress hosting

750

  • Public cannot access directories
  • Only owner + web server group allowed
  • Better for hardened private WordPress servers

Required Ownership Model

To use 750, web server must belong to the same group:

Example:

wpuser:www-data

Command

chown -R wpuser:www-data /var/www/your-site

Then apply:

find . -type d -exec chmod 750 {} ;
find . -type f -exec chmod 640 {} ;

Default File Permissions with 750 Directory Strategy

NoComponentPermission
1Directories750
2Files640
3wp-config.php600

This is stricter than the standard 755/644 pattern.

Myth vs Reality

NoStatementTruthSymbol
1750 breaks WordPress✗ not if ownership correct⚙️
2Better than 755 for privacy✓ yes🔐
3Suitable for shared hosting✗ avoid
4Safe for hardened VPS✓ ideal🛡️

Scenarios Where 750 Shines

  • Dedicated VPS with strict isolation
  • Projects storing sensitive files or internal docs
  • WordPress membership systems private to users
  • Corporate/internal WP used only by a controlled team
  • When server runs Cloudflare Access or VPN-only

Practical Example

Harden a WordPress site on private VPS

chown -R wpuser:www-data /var/www/your-site
find . -type d -exec chmod 750 {} ;
find . -type f -exec chmod 640 {} ;
chmod 600 wp-config.php

Verify

stat wp-content/
stat wp-config.php

Expected:

Directories: 750
Files: 640
wp-config.php: 600

Troubleshooting Notes

NoIssueCauseFix
1Site breaksgroup mismatchchown to wpuser:www-data
2Cannot upload via WP adminmissing write for groupadd wpuser to web group or use 775
3CLI errorswrong PHP/OLS groupalign group permissions

Alternate for strict mode with uploads:

chmod 770 wp-content/uploads

Practice Exercise

  1. Assign correct group
chown -R wpuser:www-data /var/www/your-site

  1. Apply secure permissions
find . -type d -exec chmod 750 {} ;
find . -type f -exec chmod 640 {} ;

  1. Test normal WP usage
  2. Confirm no public directory traversal

Key Takeaways

NoRuleValue
1750 = private directories
2Only owner + group access
3Requires correct ownership
4Ideal for hardened or private WP
5Not suitable for shared hosting

Summary:

Use 750 when you control the server user + group and want tighter filesystem security than 755.