如何设置Linux用户家目录权限 默认umask值修改指南

上周我尝试更改 Linux 用户主目录的权限。

使用 chmod 更改现有主目录。
例如/home/用户。
要完全私有,请 chmod 7 00 /home/user。
其他人(甚至同一组中的人)不会获得许可。

如果主目录中有子目录需要公开,如public_。
您可以单独更改该目录的权限,例如 chmod 7 5 5 /home/user/public_。
但主目录本身仍然需要私有7 00。

umask 控制新文件目录的默认权限。
系统默认文件为6 6 6 ,目录为7 7 7 umask就是从中减去相应的权限。

umask 02 2 是最常见的。
文件是 6 6 6
02 2 = 6 4 4 目录是 7 7 7
02 2 = 7 5 5 这个值一般来说就足够了。

umask 002 用于团队协作。
文件是 6 6 6
002 = 6 6 4 目录是 7 7 7
002 = 7 7 5 每个人都可以互相读写。

umask 07 7 是最安全的。
该文件是 6 6 6
07 7 = 6 00。
该目录是 7 7 7
07 7 = 7 00。
只有我能读和写。

永久更改 umask: 要对所有用户生效,请更改 /etc/profile 或 /etc/bashrc。
例如,添加 umask 02 2
要对特定用户生效,请更改主目录中的 ~/.bashrc。
添加 umask 02 2 .bashrc 常用,登录时自动读取。

要使更改生效: 或者注销并重新登录。
或者在终端中输入 source ~/.bashrc 。

验证一下: 在终端中输入 umask。
检查输出的八进制数是否正确。

尝试创建一个新文件和目录: 触摸测试文件.txt mkdir 测试目录 ls -l testfile.txt 测试目录 检查权限是否正确。
例如,当使用 umask 02 2 时,文件为 6 4 4 ,目录为 7 5 5
如果出现问题: 查看是否有多个文件被更改,后面的文件会覆盖前面的文件。
检查命令是否书写正确,是否有乱码。
确认源是否未执行或重新登录。

这非常重要。
主目录可能有私钥、配置等。
如果您没有适当的权限,其他人可能会偷看。
防止隐私泄露。
系统稳定性也可能存在问题。
公司的服务器必须符合规定,否则将无法通过审核。

Linux如何修改用户的家目录路径

使用 usermod 更改主目录是最安全的。

用户在工作前必须注销。
终止所有进程: sudo pkill -u testuser。

改变路径和移动: sudo usermod -d /data/users/testuser -m testuser.txt 原始主目录中的项目将自动移动到那里。

验证方法: grep testuser /etc/passwd 检查路径。
su
测试用户; pwd 检查新的主目录。

另一种方法是手动修改文件,风险很高。
首先创建一个备份:sudo cp /etc/passwd /etc/passwd.bak。
修改密码文件: vim /etc/passwd 找到该行并更改路径。

手动移动和更改权限: sudo mv /home/testuser /data/users/testuser.txt sudo chown -R testuser:testuser /data/users/testuser.
注意。
用户必须注销。
更改权限后:ls -ld /data/users/testuser.txt 要恢复 SELinux 系统上的上下文: sudo restartcon -Rv /data/users/testuser。

使用硬编码路径进行验证。
回滚: sudo usermod -d /home/testuser -m testuser. 手动回滚:更改文件密码、移动、更改权限。

操作前备份:sudo tar czvf backup.tar.gz /home/testuser。

自己掂量一下。