Directly hiding a specific home directory like /home/sysmaint from ls /home is challenging because /home is typically world executable (mode 711 or 755), allowing directory listing even if individual homes are private. Non-root users can still see directory names via ls /home. Complete hiding requires mount bind tricks, separate filesystems, or containers. No simple chmod.
Present view access mode of /home/sysmaint from non-privileged viewpoint: \
[user ~]% chmod-calc /home/sysmaint
Permissions for: '/home/sysmaint'
Type: Directory
Owner: sysmaint
Group: sysmaint
Octal Permissions: 750
File Size: 4096 bytes
Link Count: 11
Hidden File: No
ACLs: none
Extended Attributes: none
Capabilities: None
Immutable (chattr +i): No
Symlink: No
Parent Folder Symlink: No
Category Read Write Execute
Owner Yes Yes Yes
Group Yes No Yes
Public No No No
Special Attributes:
SUID: Not Set
SGID: Not Set
Sticky Bit: Not Set
[user ~]%
Can we use separate mount namespaces to effectively hide filesystem artifacts and process details associated with a sysmaint, while preserving the underlying permissions and capabilities. Cause currently by the design on linux in general and on Kicksecure with user-sysmaint-split.
Example commands that get what I mean here when booted in User mode:
[user ~]% ls /home
sysmaint user
[user ~]%
[user ~]% id sysmaint >/dev/null 2>&1 && echo "exists" || echo "not found"
exists
[user ~]%
[user ~]% getent passwd sysmaint
sysmaint:x:1001:1001::/home/sysmaint:/usr/bin/zsh
[user ~]%
However find can see sysmaint existence:
[user ~]% find -user sysmaint
[user ~]% find /home -user sysmaint
/home/sysmaint
find: â/home/sysmaintâ: Permission denied
zsh: exit 1 find /home -user sysmaint
[user ~]%
Further case: In Qubes Kicksecure disposable VMs, uptime -p displays: \
[user ~]% uptime -p
up 0 hour, 0 minutes
[user ~]%
However in Kicksecure you get something like: \
[user ~]% uptime -p
up 1 hour, 34 minutes
[user ~]%
I know this related to isolation via virtualization but I was wondering if we could achieve something similar for non sudo users if eve possible without being security theater cosplay or pointless?
Noted executing ps aux under user revealed no traces signaling sysmaintâs operation via active threads, by the way.
Moreover, post login as standard/persistent user, then opting for logout (not a shutdown), the login screen display rejected âsysmaintâ as user does not exist. Precisely how does sysmaint mask itself from regular users during login authentication from non sysmaint boot?