AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 123055
In Process
Kzqai
Kzqai
Asked: 2010-03-17 09:04:47 +0800 CST2010-03-17 09:04:47 +0800 CST 2010-03-17 09:04:47 +0800 CST

sudoer 方案允许对另一个 Web 开发人员进行有用的访问,但仍保留对虚拟服务器的未来控制权?

  • 772

背景:虚拟专用服务器

我有一个虚拟专用服务器,我希望在其上托管多个网站,并提供对另一个 Web 开发人员的访问。我不在乎对他施加太多限制,尽管我不介意将他将开发的站点与我将开发的服务器上的其他站点隔离开来。

问题:保持控制

我想要的主要是确保我将来保留对服务器的控制权。我想保留创建/提升/降级和其他不涉及网络软件的管理功能的能力。例如,如果我让他成为管理员,他可以 sudo su - 并成为 root 并从我那里删除 root 控制权。

我需要他不能:

  • 取消其他管理员权限
  • 更改root密码
  • 控制其他安全/管理功能

我希望他仍然能够:

  • 安装软件(通过 apt-get)
  • 重启阿帕奇
  • 访问mysql
  • 配置mysql/apache
  • 重启
  • 编辑 Web 开发配置类型文件/etc/

其他标准设置将被愉快地考虑

我从来没有真正设置过一个好的 sudoers 文件,所以简单的示例设置会非常有用,即使它们只是与我在上面希望的设置有点相似。

编辑:我还没有最终确定权限,所以标准的、有用的 sudo 设置当然是一个选项,上面的列表更多的是我希望我能做的,我不知道那个设置可以完成。不过,我确信人们之前已经以某种方式解决了这类问题,我想使用一些经过测试的东西,而不是我自己开发的东西。

linux ubuntu web-server sudo
  • 3 3 个回答
  • 496 Views

3 个回答

  • Voted
  1. mdeous
    2010-03-17T09:33:44+08:002010-03-17T09:33:44+08:00

    根据您希望允许他执行的应用程序的数量,一个选项是允许他执行命令,甚至无需 sudo。这可能会阻止您授予他 root 访问权限,同时仍然允许他执行他的任务:为此,请在 sudoers 文件中为每个应该允许他执行的应用程序添加如下一行:

    username ALL=NOPASSWD: /path/to/application
    

    编辑:虚拟机解决方案肯定是最安全的选择

    • 1
  2. gravyface
    2010-03-18T05:23:54+08:002010-03-18T05:23:54+08:00

    如果您没有被 Debian/Ubuntu 困住(并且您有能力更改/选择您的操作系统),那么 FreeBSD 的 Jails 就是考虑到这一点而构建的,并且已经投入生产多年:

    http://www.freebsd.org/doc/handbook/jails.html

    • 1
  3. Zoredache
    2010-03-17T09:29:43+08:002010-03-17T09:29:43+08:00

    不幸的是,考虑到你给他的特权,真的没有一个好的方法可以创建一个万无一失的配置来阻止他试图阻止你的访问。能够编辑 /etc 中的任意文件,能够安装软件几乎可以肯定意味着该人将有能力绕过您使用 sudo 设置的任何内容。

    真正的问题又回到了物理访问上。如果您对系统有物理访问权限,那么他真的无能为力,您无法通过简单地从 livecd 重新启动系统并进行修复来轻松绕过。

    我相信现在大多数人通过设置 VM 并在 VM 内提供访问权限来解决此类问题。如果他们做错了什么或配置错误,那么修复问题通常需要重新启动。

    • 0

相关问题

  • 更改 PHP 的默认配置设置?

  • 保护新的 Ubuntu 服务器 [关闭]

  • (软)Ubuntu 7.10 上的 RAID 6,我应该迁移到 8.10 吗?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve