首页 > 系统相关 >Linux用户-sudo命令

Linux用户-sudo命令

时间:2024-08-04 22:25:57浏览次数:9  
标签:sudo 使用 用户 命令 Linux 权限 root

作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注我,我尽量把自己会的都分享给大家,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

Linux是一个多用户多任务操作系统,这意味着它可以同时支持多个用户登录并使用系统。但是我们之前所有的操作都是基于超级管理员root来操作的,从Linux设计来说,是不推荐的。因为root的权限太大,所以才需要普通用户来进行日常运维,那如果普通用户需要做的操作需要root权限的时候又怎么做的,我们将通过以下几个方面来讲解。

1.linux用户

2.linux用户组

3.Linux用户-su命令

4.Linux用户-sudo命令(本章节)

上一章,我们讲了使用su命令切换到root权限进行操作,本章节继续讲解sudo命令来临时提权。

sudo 是类 Unix 系统(如Linux、BSD等)中的一个命令,用于允许授权用户以另一个用户的身份执行命令。它的名称来源于"Superuser Do"(超级用户执行),用于执行需要超级用户权限(通常是 root 用户权限)的任务,而无需直接切换到 root 用户。

主要特点和用途

sudo command

这会使用默认设置(通常是执行者的密码)尝试以 root 用户执行 command 命令。

sudo -u username command

这会以 username 用户的身份执行 command 命令。

sudoedit file
sudo vi file  //也可以这样

这会使用默认编辑器(通常是 vi 或 nano)以超级用户权限编辑 file 文件。

sudo yum updae

这会使用 sudo 命令以 root 权限执行 yum update 命令,从而更新系统软件包列表。

sudoedit /etc/nginx/nginx.conf
sudo vi /etc/nginx/nginx.conf    //也直接直接这样

这会使用 sudoedit 命令以 root 权限编辑 Nginx 的配置文件。

  1. 权限管理

    • 临时提升权限:允许普通用户在需要时以特权用户(通常是 root)的身份执行命令,执行完毕后权限自动降低为普通用户。

    • 授权控制:管理员可以通过配置 sudoers 文件详细控制哪些用户可以以哪些用户的身份执行哪些命令,以及在哪些主机上执行。

  2. 安全性

    • 审计sudo 的使用可以被记录和审计,管理员可以了解哪些用户在何时执行了哪些特权操作,有助于系统安全和问题追踪。

    • 限制权限:相比直接使用 root 用户,sudo 允许更细粒度地控制用户对系统的访问权限,减少了误操作和滥用特权的风险。

  3. 使用方式

    • 基本语法

    • 以其他用户身份执行

    • 编辑文件

  4. 配置文件

    • sudo 的配置文件通常是 /etc/sudoers,第一次使用应该使用root用户来操作该文件,因为在没有配置的情况下,普通用户是没权限操作这个文件的。

  5. 示例用法

    • 执行需要 root 权限的命令

    • 编辑文件

  6. 注意事项

    • 密码验证:默认情况下,sudo 会要求用户输入自己的密码来验证身份。

    • 安全配置:应当小心配置 sudoers 文件,确保只有可信用户可以执行特权操作,并限制执行的具体命令和参数。

    • 不建议直接使用 root 用户:推荐使用 sudo 来执行需要特权的任务,以避免潜在的安全风险和操作失误。

  7. 最佳实践:

    1.允许特定用户执行sudo命令​​​​​​​

# Allow root to run any commands anywhere 
root  ALL=(ALL)   ALL
#需要添加这行,user01才有使用sudo命令的权限
user01  ALL=(ALL)       ALL  

    2.免密使用sudo

## Allow root to run any commands anywhere 
root  ALL=(ALL)   ALL
#修改成这样,就可以免密使用sudo命令
user01  ALL=(ALL)       NOPASSWD:ALL

总结

  1. 普通用户默认是没有权限使用sudo命令,必须配置以后才能使用。

  2. 按照上面的配置,是所有的命令都可以执行,也可以做更精细化的配置,让普通用户只能执行特定的sudo命令。

  3. 普通用户使用sudo命令,默认是需要使用当前用户的密码的。也可以配置让它免密。

  4. sudo配置文件默认只有读权限,如果按照普通方式使用vi编辑文件,需要使用wq!强制保存才可以。

  5. 也可以使用使用下面命令,则不会提示文件只读,也可以正常保存退出。

sudo visudo

关注微信公众号《运维小路》获取更多内容。

标签:sudo,使用,用户,命令,Linux,权限,root
From: https://blog.csdn.net/dessler/article/details/140913197

相关文章

  • 如何使用Tar命令在Linux系统中解压各种文件格式
    如何使用Tar命令在Linux系统中解压各种文件格式大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!tar命令是Linux系统中一个非常强大的工具,主要用于归档和压缩文件。它支持多种压缩格式,如.tar、.gz、.bz2、.xz等。本文将详细介绍如何使用tar命令解压各......
  • Linux 系统问题分析常用命令整理
    lsof在许多Linux或者类Unix系统里都有lsof命令,它常用于以列表的形式显示所有打开的文件和进程。打开的文件包括磁盘文件、网络套接字、管道、设备和进程。使用这条命令的主要情形之一就是在无法挂载磁盘和显示正在使用或者打开某个文件的错误信息的时候。常用的参数列表:l......
  • linux centos7部署zookeeper以及kafka
    一、部署zookeeper集群1.服务器配置,最好是在同一网段的IP服务器IP地址主机名node1192.168.116.6zknode1node2192.168.116.16zknode2node3192.168.116.26zknode31.1改主机名临时改主机名命令hostnametest1永久修改主机名hostnamectlset-hostnamezknode1注:要想更改后......
  • Jenkins API用户认证方式
    1、概述Jenkins的API可以通过用户名+密码或者用户名+Token的方式来进行认证,这篇文章以具体示例来说明具体的使用方式。2、Jenkins环境本文示例基于Jenkins2.452.3版本进行演示,详细的环境构建可参考《Centos7下安装配置最新版本Jenkins(2.452.3)》这篇博文。3、Jenkin......
  • Linux基础知识
    shell定义shell是系统的用户界面,提供用户和内核交互操作的一种接口使用交互式命令行:等待用户输入一行一行执行shell脚本:写入一个文件,一起运行bashshell[root@localhost~]#[用户名@主机名目录名]权限标识目录名:光标所在目录,家目录:~权限标识:超级管理员权限:#,普通......
  • 【pkill & pgrep】Centos/Linux pkill命令详细介绍
    简介        系统版本:Centos7.6    pkill命令用于杀死一个进程,会根据进程名称和其他属性杀死进程(默认会向进程发送SIGTERM信号,详细请看Linux信号的行为说明),与之相似的命令有killall,与kill命令相比,kill命令需要ps命令的配合查出PID,而pkill命令可以直接根据进......
  • 一张图带你了解Linux 文件目录结构,很详细!
    Linux文件目录结构是任何Linux系统的基本组成部分。它为系统提供了一个标准化的文件和目录组织方式,使得用户和应用程序能够以一致的方式访问和管理文件。与Windows系统不同,Linux的文件系统采用单一的树形结构,从根目录(/)开始,所有文件和目录都在其下。理解这一结构不仅对......
  • 【转载】ubuntu用户/linux用户登录后没有自动加载.bashrc
    版权声明:本文为CSDN博主「安安爸Chris」的原创文章,遵循CC4.0BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/mimiduck/article/details/120041171今天遇到一个问题,linux下某用户登陆后无法加在其自身的.bashrc,通过source.bashrc发现......
  • Java流程控制01:用户交互Scanner
    1.Scanner对象Java给我们提供了这样一个工具类,我们可以获取用户的输入。java.util.Scanner是Java5的新特征,我们可以通过Scanner类来获取用户的输入。下面是创建Scanner对象的基本语法:Scanners=newScanner(System.in);接下来演示一个最简单的数据输入,并通过Scanne......
  • Linux的常用工具
    文章目录tar打包命令详解一、tar命令的基本语法二、常用选项及其功能三、常用操作示例1.创建tar存档文件2.同时压缩tar存档文件四.tar命令做解打包操作unzip命令:解压zip文件vim操作详解Vim查找文本Vim替换文本Vim移动光标快捷键汇总Vim快捷方向键Vim光标以单词为单位......