为朋友创建了一个访客帐户来访问我的机器,并限制他的权限为非常小的一组。这似乎在使用 ssh 时按预期工作,运行时id
会groups
显示正确的组,无论是以 root 还是用户身份调用。
su
运行也按预期工作,访客组是他唯一所属的组。
当我从同一台机器通过 ssh 进入我的机器时,所有这些都有效。
但是,如果我使用他的帐户在同一台机器上的虚拟终端登录并运行,id
那么他就可以使用音频、光盘、扫描仪、软盘等等。
如果有帮助的话,分发是 Slackware 13.37(已更新至当前版本)。
答案1
找到了导致该问题的文件。
/etc/login.defs
线:
CONSOLE_GROUPS floppy:audio:cdrom:video:scanner
解释关于此设置的评论:
指定的补充组仅在使用 /bin/login 登录 shell 时添加到用户,而不是使用 kdm 等登录管理器时添加到用户。
这解释了这种行为,因为通过控制 Alt F1 到 F6 访问的 VT 就是这样运行的。
评论还建议禁用补充控制台组,并使用或直接编辑将需要硬件访问的用户添加到相应adduser
的useradd
组/etc/group/
。