返回介绍

B.4 添加用户

发布于 2024-01-21 17:11:03 字数 1663 浏览 0 评论 0 收藏 0

用于开发的服务器上常要运行许多应用,但从安全角度讲,最好不要用 root 用户来运行它们。

所以,我们需要根据应用的开发进度,设置能够通过 sudo 命令修改服务器和中间件设置的组以及用户。这里我们以添加 dev 组和 bpuser 用户为例进行学习。

首先用 bpbook 用户登录并创建组。如 LIST 6 所示,以 root 权限执行 groupadd 命令来创建 dev 组。

LIST 6 添加组

$ sudo groupadd dev

接下来创建用户。用 adduser 命令创建 bpuser 用户。此时用 --ingroup 选项指定 dev 可以让新用户加入 dev 组(LIST 7)。

LIST 7 添加用户

$ sudo adduser bpuser --ingroup dev

这样一来就创建了 bpuser 用户。需要删除用户时使用 userdel 命令进行删除(LIST 8)。

LIST 8 删除用户

$ sudo userdel -r bpuser

Ubuntu 14.04 默认有 sudo 组,被添加到这个组的用户均可以使用 sudo 命令。

LIST 9 向组添加用户

$ sudo usermod -aG sudo bpuser

不过在目前的设置下,dev 组的用户每次使用 sudo 命令都要输一遍密码,这必然影响开发环境的便捷性。因此我们要让 dev 组的用户在执行 sudo 命令时免去输入密码的麻烦。

我们在 /etc/sudoers.d/ 目录下创建一个文件,并给 dev 组设置权限。先执行下述 visudo 命令(LIST 10)。

LIST 10 执行 visudo

$ sudo visudo -f /etc/sudoers.d/dev

NOTE

对 sudo 进行个别设置时,尽量不要编辑原设置文件 /etc/sudoers,最好是如上所述在 /etc/sudoers.d/ 下放置设置文件。因为在升级 OS 等时容易无意中覆盖掉 /etc/sudoers 文件,导致所有账户都无法使用 sudo 命令。这样做可以免除上述顾虑。

执行 visudo 命令后会生成 /etc/sudoers.d/dev 文件。对该文件作如下描述。

LIST 11 sudo 设置示例

%dev ALL=(ALL) NOPASSWD:ALL

按照 LIST 11 所示设置之后,dev 组的所有用户就都可以不输入密码直接执行 sudo 命令了。

NOTE

本节,我们站在本地开发环境的角度,学习了如何设置无需密码执行 sudo 命令,以维持开发环境的便捷性。

但是,sudo 命令可以使用 root 权限对服务器进行操作,一旦用户被窃取,带来的损害将会非常大。这个风险我们一定要清楚。

因此,如果我们使用的是可通过互联网访问的共享服务器、正式运营的服务器,那么当我们考虑设置“无需密码执行 sudo 命令”时,一定要慎之又慎。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文