Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Scan for outdated or missing drivers - takes under a minute3Clear out junk files and repair common Windows errorsiTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Need a server to try this on? Antihost offers Linux VPS plans with NVMe storage, full root access and a 14-day free trial.
SSH login does not grant automatic access to any directory. Once authenticated, the account is treated like every other Linux user: its UID, supplementary groups, permission bits, ACLs and execute permission on every parent directory determine what it can do. For a reusable shared folder, put the account in a dedicated group, assign that group to the directory and enable setgid inheritance; use an ACL when only one account needs access. For SFTP-only access, add a root-owned chroot with a separate writable child directory.
What “folder access” means on Linux
There are three distinct operations that people often call “access.” A user needs read permission on a directory to read its entries, execute permission to traverse it and access known entries, and write permission to create, remove or rename entries inside it. Reading a file also requires read permission on that file; changing a file’s contents generally requires write permission on the file itself. A directory can therefore be listable without being writable, or writable for a user who cannot list its contents if read permission is absent.
Linux checks the account’s numeric UID, every supplementary group, the directory and file mode bits, any POSIX ACL entries and the execute bit on each directory in the path. SSH authentication only establishes the account identity; it does not bypass these checks. A permission that looks correct on the target directory is ineffective if a parent such as /srv denies traversal.
Choose the access model before changing permissions
| Need | Recommended design | Result |
|---|---|---|
| Several accounts need the same shared directory | Dedicated Unix group with setgid on the directory | Group members receive consistent access, and new entries inherit the directory’s group. |
| One account needs access without changing the existing group | POSIX ACL for that user | Access is granted to the named account while the primary owner and group remain unchanged. |
| Read-only browsing or downloading | Directory r-x for the account or group |
The user can list and traverse, but cannot create or remove entries. |
| Uploads or shared editing | Directory rwx for the account or group |
The user can create and change entries, subject to the files’ own modes. |
| Transfer-only account | internal-sftp with a chroot and writable child directory |
The account can transfer files without an interactive shell or access outside the jail. |
| Normal shell account with access to an unrestricted path | Ordinary Unix permissions, groups or ACLs | The account retains its normal SSH shell and can reach any other permitted path. |
Decide whether the account should have a shell, whether it may write, and whether other users should share the same access. Those choices determine the least-privilege configuration below.
#1 Best Overall
- Powerful Turbo Fan:CAGIWIRU Electric Air Duster have reached speed up to 130000RPM,Can efficient remove dust and debris.With LED light and Three Adjustable Speed to meet with different cleaning tasks.
- With Attached USB C Fasting Charging cable.Charing 3 hours,Enjoy up to 240 minutes of use on the lowest setting, For third speed can use for 25mins.with four charging options to meet with your needs.
- Wide Application:Upgraded attached 5 different nozzles,making it suitable for a variety of scenes, such as car,pet, pc, keyboards, and other electronic devices. It also serves for office and home clean duster.
- Handy Design & Portable:Cordless air duster electric nozzle is Light weight and small size, design and comfortable to hold and space saving, convenient to carry around. You can put it in your room or inside the car without taking up space.
- Warranty & Support: Our Electric air duster comes with 5 years warranty and 24/7 customer service. During this period, if you have any questions,pls kindly feel free to contact us.
Option 1: use a dedicated group for a shared folder
A group is usually the simplest maintainable arrangement when more than one SSH account needs the same directory. The example uses account sshuser, group folderusers and directory /srv/shared. Replace those names with your own values.
Create the group and add the SSH account
sudo groupadd folderusers
sudo usermod -aG folderusers sshuser
The -aG form appends the group. Omitting -a can replace the user’s existing supplementary-group list, so do not use a bare -G unless that replacement is intentional.
Assign ownership and setgid inheritance
sudo chown -R owner:folderusers /srv/shared
sudo chmod 2750 /srv/shared
Here, owner is the existing owner account, 2 sets the setgid bit, and 750 gives the owner read/write/traverse rights, the group read/traverse rights and no rights to others. Setgid causes new files and directories created directly below this directory to inherit group folderusers. This is useful for a read-and-download share.
If group members must upload, create or modify entries in the directory, use:
sudo chmod 2770 /srv/shared
The final zero removes access for users outside the owner and group. If the directory must remain visible to other local users, choose an explicit “other” mode instead of copying these values blindly; grant no more than the policy requires.
Apply file and directory modes separately
Do not recursively apply one mode to everything. Directories need execute permission for traversal, while ordinary files commonly need read/write permission but not execute permission. A safer pattern after changing ownership is:
sudo find /srv/shared -type d -exec chmod 2770 {} +
sudo find /srv/shared -type f -exec chmod 0660 {} +
Use 2770 and 0660 only when the owner and group should both have full directory/file access and others should have none. For a read-only group, use a directory mode such as 2750 and file modes that give the group read permission, for example 0640. Review existing application-specific requirements before changing a tree; executable programs, scripts and special files may need different modes.
Start a new session
Supplementary groups are normally read when a login session starts. Disconnect and reconnect SSH after usermod; an already-open shell will usually not see the new group. Confirm the result with:
Rank #2
- Screen Cleaner is Your Screen’s New Bestfriend! - EVEO is proud to present a screen cleaner that’s perfectly suited for your TV. Meet your new screen cleaner, computer screen cleaner, laptop cleaner, iPad cleaner, Macbook,tv cleaner or any other electronic device. Our screen cleaner spray and wipe along with the included plush microfiber cloth, easily removes dust, fingerprints & other smudges on the screen’s surface. Clean effectively for a streak-free screen
- Gentle on your Screens - Our screen cleaner spray and wipes is compatible to be used even for the most sensitive LCD, LED, CRT, and OLED screens in proper use. Be at ease knowing that this product is compatible with all the major brands: LG, SONY, Samsung, Sharp, iPad, iPhone, Android screens, Kindle, PC monitors - we’ve got you covered! Can be used as LCD screen cleaner, tv cleaner, smart tv screen cleaner, and more
- Premium Super Soft Plush Microfiber Cloth - Included in this efficient screen cleaning kit. This screen cleaner spray and wipe has our signature plush microfiber cloth specially designed to comply with screens and monitors and leave them streak-free. Has been shown to effectively absorbs stubborn stains, zero streaks, and no fiber shedding. Always use this together with our screen cleaner for the best results
- Easy-to-Use Screen Cleaner Kit + microfiber cleaning cloth - The EVEO Screen Cleaning Kit will easily be your new favorite tool when it comes to taking care of the things you love most, quick and easy solution for a streak-free screen. Simply screw on the sprayer gun on the screen cleaner bottle. Spray the cleaning liquid onto the microfiber cloth, then wipe the screen until desired cleanliness & shine is achieved.
- Quality Screen Care Kit Worth Purchasing - Enjoy a convenient Screen Cleaner anytime, anywhere you need it. Your satisfaction is our top priority. We stand behind the quality of our products and that’s why, you shouldn’t be worrying at all. We manufacture the Best Screen Cleaner. and can be used for laptop cleaning kit, laptop screen cleaner, tv screen cleaner for smart tv. MacBook screen cleaner, monitor cleaner or screen cleaner spray for electronic devices with microfiber cleaning cloth
id sshuser
The output should list folderusers. A fresh SFTP connection is also required to test the changed group membership.
Option 2: grant one account access with ACLs
Use an ACL when changing the directory’s primary group would affect existing applications or users, or when a single SSH account needs an exception. The setfacl utility must be installed on the system.
Recommended Free Tools
Give the account read and traversal rights
sudo setfacl -m u:sshuser:rx /srv/shared
This permits sshuser to list and traverse the directory, assuming the path’s parent directories are also traversable and the files have suitable read modes. It does not allow creating or deleting entries.
Give write rights only to an upload directory
sudo setfacl -m u:sshuser:rwx /srv/shared/incoming
A common least-privilege layout is read/traverse access to the share and write access only to incoming. The account needs execute permission on /srv/shared to reach that child. Directory write permission controls creation, deletion and renaming in that directory; it does not automatically make every existing file writable.
Inspect the ACL and its mask
getfacl /srv/shared /srv/shared/incoming
Look for the named-user entry and the ACL mask. The mask limits effective permissions for named users (other than the owner) and named groups. A requested rwx entry can therefore display fewer effective rights if the mask is narrower. If you intentionally need to widen the effective rights, set the mask explicitly and review the security impact:
sudo setfacl -m m:rwx /srv/shared/incoming
When access must continue for files and directories created later, consider default ACLs on the directory, then verify the resulting entries with getfacl. Set defaults only after deciding which permissions newly created files should receive; inherited write access can expose data more broadly than intended.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Make every parent directory traversable
Linux evaluates each component in a pathname. For /srv/shared/incoming, the account must be able to execute (traverse) /srv, /srv/shared and /srv/shared/incoming. The account may have the right mode on incoming and still receive “Permission denied” because a parent blocks traversal.
Inspect the complete path with:
namei -l /srv/shared/incoming
The output shows ownership and mode bits for every component. Grant only the missing traversal permission; do not make an entire parent tree world-writable. If a parent is intentionally private, move the shared directory below a path whose policy permits traversal or use a different layout.
Rank #3
- 【Large size】:Measuring 800 x 300 mm/ 31. 5×12 inches, which is wider and taller than others. Large mouse pad can perfectly fit your keyboard and mouse of any size, and there is also ample space for peripherals such as phones, tablets, etc.
- 【LED backlight mouse pad】:Blade Hawks RGB mouse pad provides 7 static modes and 7 dynamic modes will give you the options you are looking for. Power-off memory function remembers the last lighting mode you selected. The super glow fiber Chroma will give you a colorful gaming setup that you want.
- 【Anti-slip rubber base】:Made from Natural rubber, this gaming mousepad will firmly grip your desktop, allowing you to enjoy the ultimate precision in the games you are most passionate about. It also comes with a texture that enhances this ability even further.
- 【Smooth and waterproof surface】: Micro-textured cloth surface, for extremely precise mouse control and a smooth movement. When liquid splashes on the gaming mouse pad, it forms water droplets and slides down. Will not delay your work or gameplay.
- 【Plug and play】: This mouse and keyboard pad is powered by USB, plug and play, no driver required. One button control light modes. Press one time to change the lighting mode, press twice to change the brightness, press and hold about 3 seconds turn ON/OFF.
Remember that directory execute permission is not the same as directory read permission. A user with execute but no read may access a file when its name is known, while a user with read but no execute cannot use the directory entries normally.
Verify effective permissions as the SSH account
Check the account and each operation under its actual identity rather than testing as root:
id sshuser
namei -l /srv/shared/incoming
sudo -u sshuser -- test -x /srv/shared
sudo -u sshuser -- test -r /srv/shared/file
sudo -u sshuser -- test -w /srv/shared/incoming
A successful test produces no output and returns status zero. To see the status directly, append && echo OK or inspect $? in a shell. Test the operation you actually need:
- For listing, run
sudo -u sshuser -- ls -la /srv/shared. - For an upload, test creation in the writable directory with a temporary file and remove it afterward.
- For downloading, test reading the specific file, not only the directory.
Finally, use a new SSH or SFTP session. A local sudo -u test validates Unix permissions, while a real client test also exposes SSH configuration, chroot paths and protocol restrictions.
Keep SSH key authentication from failing first
OpenSSH normally reads .ssh/authorized_keys relative to the user’s home directory unless AuthorizedKeysFile is overridden. The account’s home directory, .ssh directory and authorized_keys file must be owned appropriately and must not be writable by unrelated users. With StrictModes enabled, sshd refuses to use a key when those locations have unsafe ownership or modes, even if the target data directory is correctly permissioned.
When key authentication fails, inspect the ownership and modes of the home and key path separately from the shared folder. A typical diagnostic is:
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →namei -l /home/sshuser/.ssh/authorized_keys
ls -ld /home/sshuser /home/sshuser/.ssh
ls -l /home/sshuser/.ssh/authorized_keys
Do not “fix” a key problem by making the home or .ssh tree broadly writable. Correct the owner and restrictive modes, then test again. The OpenSSH client guidance likewise expects ~/.ssh to be accessible to the user and not to other users, with strict protection for key material.
Build an SFTP-only account with a chroot
If the account should upload or download files but must not obtain a shell or reach the rest of the filesystem, add a user-specific Match block in sshd_config:
Rank #4
- 【Softer and More Comfortable】Vaydeer wrist rest has unique diamond pattern, which is the combination of softness and aesthetics. The materials of wrist rest are improved into higher quality memory foam and covered with silky smooth lycra. The computer wrist rest makes you as comfortable and cushiony as like rest your wrists on clouds.
- 【Ergonomic Wrist Saver】The wrist rests for keyboard and mouse comes with a 17.32×3.15×0.83 inch keyboard wrist pad and a 5.94×3.15×0.83 inch mouse wrist support. Based on ergonomic design, the unique concave shape is the perfect fit for your wrist joints. The wrist rest pad fits most computer keyboards and laptops, improve hand and wrist posture, release your wrist and arm stress.
- 【Non-Slip Rubber Bottom】Featuring an anti-skid silicone base on the bottom, this wrist keyboard support stays firmly in place on your desk, preventing the padding from sliding around, ensuring stable and consistent wrist support during extended computer sessions.
- 【Better Experience & Pain Relief】Our keyboard arm rest is beneficial to alleviate the soreness caused by direct contact and friction between your arm and a hard desk surface, reducing the risk of wrist fatigue or carpal tunnel. The soft texture of memory foam can evenly distribute the pressure around your wrists and provide good support with just enough give.
- 【Helpful in Multiple Scenarios】Whether you're working, studying, writing, typing, gaming, this keyboard and mouse rest combo is an essential accessory to add comfort and support to your hands and wrists. It’s also a great gift for men, women, family, friend, coworker, gamer, teacher, etc.
Match User sshuser
ForceCommand internal-sftp
ChrootDirectory /srv/sftp/%u
DisableForwarding yes
PermitTTY no
ForceCommand internal-sftp replaces the requested shell or command with the in-process SFTP server. DisableForwarding yes prevents forwarding features for this account, and PermitTTY no prevents allocation of an interactive terminal. The %u token expands to the username, so the example expects a directory such as /srv/sftp/sshuser.
Make the chroot boundary safe
The chroot directory and every component above it must be root-owned directories that are not writable by any other user or group. For example, /srv, /srv/sftp and /srv/sftp/sshuser must satisfy that requirement. OpenSSH rejects a writable chroot boundary; this is a deliberate safety check, not a folder-permission quirk.
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallDo not give the SFTP account ownership of the chroot itself. Instead, create a child directory for transfers and grant access there:
sudo mkdir -p /srv/sftp/sshuser/incoming
sudo chown root:root /srv/sftp/sshuser
sudo chmod 755 /srv/sftp/sshuser
sudo chown sshuser:folderusers /srv/sftp/sshuser/incoming
sudo chmod 750 /srv/sftp/sshuser/incoming
Use a group or ACL on incoming when several controlled accounts need it. The exact child mode should match whether the account only uploads, downloads, or both. A root-owned, non-writable boundary with no writable child allows authentication to succeed but leaves the account unable to upload, so always provide and test the child directory.
Understand paths after login
Inside the jail, the account sees the chroot as its filesystem root. A client may display /incoming even though the host path is /srv/sftp/sshuser/incoming. Configure scripts and users for the in-jail path, not the host’s absolute path.
Validate sshd configuration before reloading
Check syntax before applying any change:
sudo sshd -t
If the command returns an error, fix it before reloading or restarting the service. A syntax check does not prove that ownership, ACLs or chroot directories are correct, so perform the filesystem tests as well. Keep an existing administrative session open while testing a new connection, particularly when changing authentication or Match rules.
Free tools Windows power users keep installed
One-click scans. No signup required.
After a successful check, reload the daemon using the service manager appropriate to the distribution, then connect with a new session. Test both the intended success and an intentionally disallowed operation—for example, upload to incoming and attempt a shell or access outside the chroot—to confirm that the boundary is doing what you designed.
Troubleshoot “Permission denied” systematically
The user is not in the expected group
Run id sshuser in a fresh session. If the group is absent, verify the usermod -aG command and reconnect. Existing sessions do not automatically acquire supplementary groups.
Best Value
- 【No Drill Mounted】Cable management tray can be assembled in as little as 3 minutes or less-simply. Side clips easily clampe the edge of desk, pass through the holes on the sides, and secure excess cables with baskets. Desk cable management supports inward or outward installation to meet your needs in different scenarios, and provides you with great convenience when collecting and organizing wires.
- 【Rubber Pad Protects Desk】Wire organizer under desk built-in soft rubber pads on the clamp protect your desk from scratches, so you will not damage your furniture or office.
- 【Sturdy and Beautiful】Cord management under desk is made of high-quality carbon steel and holds about 15 lbs. The wire basket has 2 holes on each side of the tray to enable your cables to pass freely. Cable baskets are suitable for desk thickness use from 0.4" to 2.4".
- 【Space Saving & Keep Organized】Desk cable management tray holds all your power cords, outlet strips, USB hubs and computer transformers hidden from your feet, and the data cables will not enter the vacuum cleaner to keep your desk clean and tidy. Desk wire organizer is also suitable for use in the kitchen and outdoors.
- 【Reduce Safety Risks】Cable tray under desk keeps all plugs away from your kids, no more worry about tripping. Using 2 holes wire tray saves extra space, helps you easily cabling and wire protection. The mesh design is not easy to accumulate dust, but avoids safety accidents caused by messy wires.
The target directory looks correct but a parent blocks traversal
Run namei -l on the complete path. Add only the required execute permission on the blocking parent, or redesign the path if that parent is intentionally private.
An ACL entry exists but effective rights are narrower
Read getfacl output and compare the named-user or named-group entry with the mask:: entry. The mask can reduce the effective result. Adjust it only when the wider access is acceptable.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →The user can list but cannot upload
Listing requires directory read and execute; creation additionally requires directory write. Check test -w on the exact upload directory and check the parent path. For an existing file that must be edited, check the file’s own write permission as well.
Authentication fails before folder permissions are tested
Inspect the home, .ssh and authorized_keys ownership and modes. StrictModes can reject an otherwise valid key when those locations are writable by unrelated users. Review SSH diagnostics with a verbose client invocation such as ssh -vv, without exposing private key material.
SFTP authentication succeeds but uploads are rejected
Check the chroot boundary first: every component must be root-owned and not writable by group or others. Then inspect the writable child directory inside the jail. The account should write to that child, not to the chroot itself.
The daemon will not reload
Run sudo sshd -t and correct the reported configuration line. Keep a working session open until a fresh connection confirms the corrected configuration.
Security and maintenance checklist
- Grant only the needed combination of read, write and execute permissions.
- Prefer a dedicated group for a stable shared policy and an ACL for a narrowly scoped exception.
- Keep directory and file modes distinct when changing a tree recursively.
- Use setgid on shared directories when new entries must retain the shared group.
- Inspect every parent directory with
namei -l; a target directory mode alone is not sufficient. - Inspect ACL masks with
getfacl, not just the named-user line. - Start a new login after group membership changes.
- Protect the home,
.sshandauthorized_keyspaths so StrictModes accepts the key. - For SFTP jails, keep the chroot boundary root-owned and non-writable, and provide a separate writable child.
- Run
sshd -tbefore every configuration reload and test with the real SSH or SFTP client.
A practical decision example
Suppose a team needs to download files from /srv/shared, while one service account may upload only to /srv/shared/incoming. Give the team a read/traverse group mode on the share, grant the service account an ACL with rwx on incoming, verify traversal on every parent, and test read and write operations as that account. If the service account must not run commands, place it in an SFTP-only Match User block and move the writable area into a root-owned chroot child instead of exposing the unrestricted host path. This separates the Unix permission decision from the SSH-session restriction and lets each layer enforce the least privilege independently.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

