linux-sudo设置

打印 上一主题 下一主题

主题 875|帖子 875|积分 2635

目次

一、sudo是什么(简朴参考)
二、sudo设置用户(命令及举例)
三、sudo设置说明
格式说明:
举例如下


一、sudo是什么(简朴参考)

sudo 是 "superuser do" 的缩写,它是一个在 Unix 和 Linux 操作系统中答应平凡用户以其他用户身份(通常为超等用户或 root 用户)执行命令的程序。通过 sudo,系统管理员可以授予某些用户执行特定命令的权限,而无需切换到 root 用户。利用 sudo 可以提高系统的安全性,因为它答应细粒度的权限控制,并且会在每次利用时要求用户输入暗码。
以下是 sudo 的一些关键特性和用法:
   

  • 权限控制:sudo 设置文件(通常是 /etc/sudoers)答应管理员具体指定哪些用户可以执行哪些命令,以及他们是否需要输入暗码。
  • 暗码提示:当平凡用户利用 sudo 执行命令时,系统通常会提示他们输入自己的暗码(除非在 sudoers 文件中设置了 NOPASSWD:)。这增长了安全性,因为即使某个用户有 sudo 权限,他们仍然需要证实自己的身份。
  • 日志记载:sudo 会记载所有利用它的运动,这有助于管理员跟踪系统上的更改和潜在的安全事件。
  • 防止误操作:通过设置 sudo,管理员可以限定用户只能执行特定的命令或脚本,从而防止潜在的系统损坏或误操作。
  • 提拔权限:最常见的 sudo 用法是以 root 用户的身份执行命令。例如,一个平凡用户可能利用 sudo apt update 来更新软件包列表,这需要 root 权限。
  要利用 sudo,用户必须在 /etc/sudoers 文件中被明确授权。通常,这个文件只能通过 visudo 命令编辑,以确保语法正确并防止设置错误。visudo 在编辑完成后会查抄语法错误,并在没有错误的情况下保存更改。
二、sudo设置用户(命令及举例)

在Linux系统中,sudo设置用于答应平凡用户执行超等用户(root)权限的命令。要为特定用户设置sudo权限,你需要编辑/etc/sudoers文件。以下是如作甚用户设置sudo权限的步骤:

  • 确认sudo已安装
    在终端中执行sudo -V命令来查抄是否已安装sudo。
  • 切换到root用户
    由于编辑/etc/sudoers文件需要超等用户权限,因此你需要先切换到root用户。在终端中输入su - root命令并输入root用户的暗码。
  • 编辑sudoers文件
     
    1. visudo
    复制代码
  • 添加用户
    在visudo编辑器中,找到类似root ALL=(ALL:ALL) ALL的行,然后在下一行添加你想要授权的用户。格式如下:
    1. username ALL=(ALL:ALL) ALL
    复制代码
      将username替换为你想要授权的用户名。这表示该用户可以以任何用户的身份执行任何命令。
    如果你想让用户无需输入暗码就可以利用sudo,可以添加NOPASSWD:标签:
    1. username ALL=(ALL:ALL) NOPASSWD: ALL
    复制代码
  • 保存并退出
    在visudo编辑器中,按下Esc键,然后输入:wq并回车以保存并退出。
三、sudo设置说明


格式说明:


username ALL=(ALL:ALL) NOPASSWD: ALL
   

  • ALL(第一个):这表示这个规则适用于所有主机。在更复杂的设置中,你可以指定特定的主机名或主机别名。
  • (ALL:ALL):这里的两个ALL分别表示用户可以以哪些用户身份执行命令,以及这些命令可以在哪些用户组下执行。第一个ALL表示用户可以以系统中任何用户的身份执行命令,第二个ALL表示命令可以在任何用户组下执行。
  • ALL(最后一个):这表示用户可以执行所有命令。
  举例如下

示例 1:答应特定用户执行特定命令
  1. alice ALL=(ALL) /usr/bin/apt update  
  2. alice ALL=(ALL) /usr/bin/apt upgrade
复制代码
这个设置只答应用户 alice 以任何用户的身份执行 apt update 和 apt upgrade 命令。她不能执行其他任何命令,也不能以 root 身份执行这些命令以外的其他操作。

示例 2:限定用户只能以特定用户身份执行命令
  1. bob ALL=(www-data) /usr/sbin/apache2ctl restart
复制代码
这个设置只答应用户 bob 以 www-data 用户的身份执行 apache2ctl restart 命令来重启 Apache 服务。这样,即使 bob 有 sudo 权限,他也不能执行其他命令或以其他用户身份执行命令。
示例 3:在某一台主机上
  1. limiteduser myhost.example.com=(Ahhh) NOPASSWD: ALL
  2. limiteduser 192.168.1.100=(Ahhh) NOPASSWD: ALL
复制代码

提示:对示例不明白的同砚可以产看格式说明黄色背景标注的就是对应的说明:主机,用户,用户组等等权限管理设置

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

宁睿

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表