![防止本地管理员在 Ubuntu(桌面版)上安装任何列入黑名单的软件包](https://linux22.com/image/1206692/%E9%98%B2%E6%AD%A2%E6%9C%AC%E5%9C%B0%E7%AE%A1%E7%90%86%E5%91%98%E5%9C%A8%20Ubuntu%EF%BC%88%E6%A1%8C%E9%9D%A2%E7%89%88%EF%BC%89%E4%B8%8A%E5%AE%89%E8%A3%85%E4%BB%BB%E4%BD%95%E5%88%97%E5%85%A5%E9%BB%91%E5%90%8D%E5%8D%95%E7%9A%84%E8%BD%AF%E4%BB%B6%E5%8C%85.png)
我们公司需要 Ubuntu 客户端。但是存在一些安全问题。在我们的案例中,大多数 Ubuntu 用户都是本地管理员(在 /etc/sudoers 中列出),但我们希望阻止用户访问恶意工具和包。目前,这部分是使用 Cisco Umbrella / OpenDNS 执行的,但它并不完全防水。
那么我们如何确保执行安全更新和已安装软件包的更新,但用户不能安装“新”软件包或从源代码创建软件包?
- 将软件包列入黑名单可以解决部分问题,但本地管理员可以绕过此问题。可以预防这种情况吗?
- 是否存在类似“sudoers”和“通用”用户之间的权限级别这样的临时解决方案?
答案1
删除所有恶意用户的 sudo 权限,并针对特定命令/用户使用 sudo 白名单。
阅读man sudoers
后你也许会阅读本教程“在 Linux 中仅使用 sudo 运行特定命令”:https://kifarunix.com/run-only-specific-commands-with-sudo-in-linux/