我接到一项任务,配置一台 RedHat Enterprise Linux 5 Gnome PC,以便特定用户(例如 USER1)的桌面访问权限非常有限。要求包括:
- 必须限制对所有桌面菜单(应用程序、位置、系统)和图标(计算机、用户主页等)的访问。
- 限制 shell 访问大多数文件夹,但限制用户自己的主文件夹。
- 该用户(USER1)的桌面上应该只有几个预先配置的图标/快捷方式,并且他/她应该能够运行/双击这些。
- 该用户(USER1)不应运行任何会影响除他们自己的文件/文件夹之外的任何文件/文件夹的 shell 命令。
基本上,它是一台锁定的 PC,可供特定用户使用的功能非常有限。如果另一个授权用户或 root 登录 - 那么所有常用功能都应该可以正常使用。
我们在 Windows 上已经实现了这一点本地安全设置但我不确定如何在 Linux 中做到这一点。
我听说过SELinux并尝试使用“SELinux 管理工具”,但它不是很有用,或者我不知道如何正确使用它。
答案1
- 限制 shell 访问大多数文件夹,但限制用户自己的主文件夹。
- 该用户(USER1)不应运行任何会影响除他们自己的文件/文件夹之外的任何文件/文件夹的 shell 命令。
标准 Linux 权限方案应该考虑到这一点。非特权用户无法修改不属于他们的任何内容,也无法访问存储重要系统信息的文件夹。
- 必须限制对所有桌面菜单(应用程序、位置、系统)和图标(计算机、用户主页等)的访问。
修改面板和桌面,使得所有有问题的图标或小程序都不再可用。
使用gconftool2设置以下键(在 apps/panel/global 下):
- 检查
disable_force_quit
将阻止用户强行关闭面板小程序。 - 勾选后将
disable_lock_screen
阻止用户显示屏幕保护程序和保护屏幕的密码。 - 检查
disable_log_out
将阻止用户注销、关闭或重新启动计算机。 - 检查
locked_down
将阻止用户对面板进行任何更改。
- 检查
在desktop/gnome/lockdown下设置以下键:
- 选中
disable_command_line
此项还会禁用“运行程序”对话框。 - 检查
disable_lock_screen
将阻止用户锁定屏幕。 - 检查
disable_printing
将阻止用户使用所连接的打印机打印内容。 - 检查
disable_print_setup
将阻止访问所有“打印设置”对话框。 - 检查
disable_save_to_disk
将阻止用户将任何内容保存到硬盘。 - 检查
disable_user_switching
将阻止用户在当前会话处于活动状态时切换到另一个帐户。
- 选中
- 您将希望将这些设置设为强制设置(否则,有经验的用户可能会取消设置它们)。请参阅Gnome 部署指南了解更多信息。
听起来你真的寻找一种让 Gnome 表现得像信息亭的方法。这里有一些指南:
答案2
我认为 chrooting 可能是一个开始,你将用户限制在他自己的主文件夹中并将他囚禁在那里,他不能随便去其他地方,所以他只能编辑自己的文件。这里有一个非常好的指南: http://www.cyberciti.biz/tips/howto-linux-unix-rssh-chroot-jail-setup.html
答案3
除了 kce 提到的之外,我还发现了:
RedHat 部署指南第 10 页及以后的内容几乎完全解释了我想要做的事情。 这页面上也做了一些解释。