我正在全新安装 Ubuntu 12.04,并且刚刚添加了一个新用户:
useradd -m testuser
我认为-m
为用户创建主目录的标志是相当标准的,但现在我仔细观察了,我有点困惑:
默认情况下,刚刚创建的新目录显示为:
drwxr-xr-x 4 testuser testuser 4.0K May 20 20:24 testuser
有了g+r
和o+r
权限,意味着系统上的每个其他用户不仅可以cd
访问该用户的主目录,还可以查看其中存储的内容。
当阅读 suPHP 的一些文档时,它建议将权限设置为711
或drwx--x--x
这对我来说最有意义。
我注意到我可以更改内部文件的权限/etc/skel
,并且在创建新用户时设置正确,useradd -m
但更改目录本身的权限/etc/skel
似乎对为用户创建的新目录没有任何影响/home/
那么 - 用户的主目录和文件应该具有什么类型的权限 - 以及为什么?
如果我希望权限不同
useradd -m
- 就像我所提到的711
/一样drwx--x--x
,如何做到这一点?您必须创建用户然后运行chmod
吗?
答案1
要使主目录的创建行为不同,请执行以下操作
useradd -m -K UMASK=0066 testuser
给予其他任何访问都应该是安全的。
答案2
我没有遇到任何问题,将主目录设置为 0700 作为基础,然后根据需要一点一点地打开它们。
答案3
您应该在您的系统上DIR_MODE
设置/etc/adduser.conf
并使用页面adduser
中推荐的命令:man
useradd
adduser testuser
如果您不想更改原始文件/etc/adduser.conf
(或需要不同的设置),您可以在副本中进行更改并使用adduser --conf <yourconf>
答案4
既然你在安全方面发布了这个,我就上钩了。 OpenBSD 默认情况下是这样完成的
drwxr-xr-x 5 predrag predrag 512 May 20 23:00 predrag
我的帐户已在启动时创建。您会看到默认情况下会创建一个单独的组,并且我以该组的成员身份登录。默认情况下,第一个帐户是wheel组的成员,但不是操作员组的成员,这意味着我无法关闭计算机。
请注意,默认情况下,OpenBSD 上的新用户添加为添加用户交互式 Perl 脚本,它还创建具有正确权限和许多其他内容的主目录。
这就是 RedHat 默认情况下所做的
drwx------. 48 predrag predrag 4096 May 20 17:51 predrag
我是该计算机上的系统管理员,这是默认为根用户创建的常规帐户。 RedHat 没有自定义脚本,但 useradd 的某些值已预先填充有默认值。