su 和 sudo 的区别以及如何在 Linux 中配置 sudo

Linux系统比任何同类产品都更加安全。其中一种方法是是用户管理策略和用户权限,普通用户无权执行任何系统操作。

如果普通用户需要执行任何系统范围的更改,他需要使用'' 或者 '须藤' 命令。

Linux:su v/s sudo

笔记– 这篇文章更适用于乌班图基于发行版,但也适用于大多数流行的Linux分布。

“苏”与“须藤”

'' 强迫你分享你的根密码对其他用户而言 '须藤' 使得无需执行系统命令就成为可能密码。'须藤' 让您使用自己的密码来执行系统命令,即委托系统责任而无需密码。

什么是“须藤”?

'须藤' 是根二进制文件安顿下来,代表授权用户执行root命令,用户需要输入自己的密码才能执行系统命令,后跟'须藤'。

谁可以执行“sudo”?

我们可以跑'/usr/sbin/visudo'添加/删除可以执行的用户列表'须藤'。

$ sudo /usr/sbin/visudo

'的屏幕截图/usr/sbin/visudo' 文件,看起来像这样:

须藤默认情况下,列表类似于以下字符串:

root ALL=(ALL) ALL

笔记: 你一定是编辑/usr/sbin/visudo文件。

授予 sudo 访问权限

在很多情况下,系统管理员,特别是该领域的新手会发现字符串“根全部=(全部)全部”作为模板,并授予其他人不受限制的访问权限,这可能非常有害。

编辑'/usr/sbin/visudo'文件到类似下面的模式可能真的非常危险,除非您完全相信所有列出的用户。

root ALL=(ALL) ALL
adam ALL=(ALL) ALL
tom ALL=(ALL) ALL
mark ALL=(ALL) ALL

sudo 的参数

正确配置的'须藤'非常灵活,需要运行的命令数量可以精确配置。

配置 ' 的语法须藤'行是:

User_name Machine_name=(Effective_user) command

上面的语法可以分为四个部分:

  1. 用户名:这是'的名字须藤' 用户。
  2. 机器名称: 这是主机名,其中 '须藤' 命令有效。当您有很多主机时很有用。
  3. (有效_用户):允许执行命令的“有效用户”。此列允许您允许用户执行系统命令。
  4. 命令:用户可以运行的命令或一组命令。

建议阅读:

一些情况及其相应的'须藤' 线:

Q1.你有一个用户标记这是数据库管理员。您应该向他提供数据库服务器上的所有访问权限(beta.database_server.com) 仅适用于任何主机。

对于上述情况'须藤' 行可以写成:

mark beta.database_server.com=(ALL) ALL

Q2。 你有一个用户'汤姆' 它应该以同一数据库服务器上的 root 用户以外的用户身份执行系统命令,如上所述。

对于上述情况'须藤' 行可以写成:

mark beta.database_server.com=(tom) ALL

Q3。你有一个 sudo 用户 ''应该运行命令'' 仅有的。

为了实现上述情况,我们可以将“sudo”写为:

mark beta.database_server.com=(cat) dog

Q4。如果需要向用户授予多个命令怎么办?

如果用户应该运行的命令数量低于10,我们可以将所有命令并排放置,命令之间留有空格,如下所示:

mark beta.database_server.com=(cat) /usr/bin/command1 /usr/sbin/command2 /usr/sbin/command3 ...

如果此命令列表随范围变化,实际上不可能手动键入每个命令,我们需要使用别名。别名!是的,Linux 实用程序中的长命令或命令列表可以被称为小而简单的关键字。

几个一个利亚斯示例,可用于代替 ' 中的条目须藤' 配置文件。

User_Alias ADMINS=tom,jerry,adam
user_Alias WEBMASTER=henry,mark
WEBMASTERS WEBSERVERS=(www) APACHE
Cmnd_Alias PROC=/bin/kill,/bin/killall, /usr/bin/top

可以指定一个系统组,代替属于该组的用户,只需添加后缀 '%'如下:

%apacheadmin WEBSERVERS=(www) APACHE

Q5.执行一个 ' 怎么样?须藤' 不输入密码的命令?

我们可以执行一个'须藤' 使用命令无需输入密码'无密码WD' 旗帜。

adam ALL=(ALL) NOPASSWD: PROCS

这里的用户'亚当' 可以执行所有命令别名的在下面 ”过程”,无需输入密码。

建议阅读:

须藤” 与 ' 相比,为您提供了一个强大且安全的环境,并且具有很大的灵活性'。而且 ”须藤” 配置很简单。一些 Linux 发行版有“须藤” 默认情况下启用,而当今的大多数发行版都需要您将其启用安全措施

要将用户 (bob) 添加到 sudo,只需以 root 身份运行以下命令。

adduser bob sudo

现在就这些了。我会再次在这里发表另一篇有趣的文章。在此之前请继续关注并连接到 Howtoing。不要忘记在我们的评论部分向我们提供您的宝贵反馈。