Linux用户-sudo命令

news2024/10/1 17:38:02

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

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1979543.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

明日周刊-第19期

演唱会现场的感受确实跟耳机里的感觉非常不一样,听见音响和人声真真切切出现在你身边,那种震撼可以让你暂时忘却生活的烦恼。感谢8月3日的蔡健雅演唱会,凑巧的是这一场是今年巡演的最后一场。 文章目录 资源分享言论歌曲推荐 资源分享 nginx…

DC-8靶机通关

今天我们来学习DC-8这个靶机!!! 1.实验环境 攻击机:kali2023.2 靶机:DC-8 2.1主机扫描 2.2端口扫描 还是熟悉的配方!!! 3.1查看网页 其实可以先尝试一下爆破,但是爆…

在VScode中导入conda环境的记录【原创】

今天在vscode编辑器中运行一个python代码,发现终端可以运行,但是编辑器中点击Run会显示缺包,但是python包明明是有的,在自己的conda环境中。后来发现,是vscode没有发现我自己创建的conda环境,在vscode中导入…

暑假第三周——学生管理系统仿写

iOS学习 前言账号界面主页添加学生信息:修改学生信息:删除学生信息:学生信息排序:查找学生信息 总结 前言 学生管理系统的仿写较为简单,与c语言的学生管理系统逻辑上相差不大。 账号界面 账号界面与3G share的相同&am…

推荐几款卓越的 .NET 开源搜索组件

目录 前言 一、Lucene.NET 1、介绍 2、地址 二、Elasticsearch.NET 和 NEST 1、介绍 2、文档地址 3、开源地址 三、Algolia.Search 1、介绍 2、文档地址 3、开源地址 四、SolrNet 1、介绍 2、文档开源地址 3、Solr社区 五、Masuit.LuceneEFCore.SearchEngine …

网页设计师必备!10个免费的设计素材网站推荐

当网页设计师使用网页设计材料时,他们会优先考虑那些免费和高质量的网页设计材料网站。找到一个免费和高质量的网页设计材料网站并不容易,有些网站要么需要打开材料网站成员,要么设计材料质量很差。即时设计总结了10个免费的网页设计材料网站…

iAppv3无白银会员使用SDK

前言 一个实用小技巧分享给大家。 工具 iapp:百度或点我获取 Mt管理器:百度或点我获取 教程 1.移出“项目路径/apk/lib/”内的全部文件 2.在iapp内测试打包,打包完成后直接返回,不要安装 3.在mt管理器里面点击“项目路径/b…

常见CMS漏洞(WordPress、DeDeCMS、ASPCMS、PHPMyadmin、Pageadmin)

目录 一:WordPress 步骤一:进入Vulhub靶场并执行以下命令开启靶场;在浏览器中访问并安装好子... 步骤二:思路是修改其WP的模板写入一句话木马后门并访问其文件即可GetShel;登陆WP后点击【外观】--》【编辑】 --》 404.php 步骤三:访问以下连接即可获取WebShel...…

【Linux】wsl win安装Linux环境

文章目录 wsl是什么配置wsl启用适用于 Linux 的 Windows 子系统安装 Linux 分发版 文件互操作参考文章 win 下安装linux其实很简单,百度一下wsl就明白了 wsl是什么 WSL(Windows Subsystem for Linux)是微软开发的一项技术,允许用…

七、分散加载说明

分散加载说明以GD32F103ZE为例,分别用Keil、IAR和Embedded Builder工具实现:将函数放置某个地址、将常量放置某个地址、将函数放在RAM中运行的三种效果。 1、将led_toggle()函数放在0x08040000地址后。 2、将tempbuf[1024]常量放在0x08020000地址后。 …

React管理系统整合Cesium避坑指南

花费了一周时间将React 升级到了最新版本18,同时整合Cesium三维模块到系统中,其中遇到了react 版本升级后模块删改,按照原来的引入方式无法使用的问题,以及Cesium 放入子路由一直404等问题 文章目录 一、系统版本依赖二、系统预览…

3.10.全卷积网络FCN

全连接卷积神经网络(FCN) ​ FCN是用来深度网络来做语义分割的奠基性工作,用转置卷积层来替换CNN最后的全连接层,从而可以实现对每个像素的预测 ​ CNN(卷积神经网络)可以认为是一个预训练好的模型。CNN的最后一层是全局平均池化…

【C++学习第19天】最小生成树(对应无向图)

一、最小生成树 二、代码 1、Prim算法 #include <cstring> #include <iostream> #include <algorithm>using namespace std;const int N 510, INF 0x3f3f3f3f;int n, m; int g[N][N]; int dist[N]; bool st[N];int prim() {memset(dist, 0x3f, sizeof di…

十大机器学习算法-学习笔记-章节1-线性回归—

一、前言 学习视频&#xff1a;第一章&#xff1a;线性回归原理推导 1-回归问题概述_哔哩哔哩_bilibili 相关资料 该内容仅作为个人笔记使用&#xff0c;希望看到的各位能有所获&#xff0c;博主有误的地方&#xff0c;各位可以在评论区有所指正 二、正文 1、线性回归 什…

CTF-web基础 web服务器

web服务器作用 web服务器是一个服务器软件&#xff0c;我们可以把静态网页部署到web服务器上&#xff0c;web‘服务器通常只能运行静态网页。 应用服务器可以运行动态网页&#xff0c;web服务器通常和应用服务器一起使用。 原理 当我们输入网页时&#xff0c;他会发送请求到…

2024小学生古诗文大会暑期备考:吃透历年真题和知识点(持续)

最近有一些家长朋友问好真题网&#xff0c;上海三年级以上的小学生有什么比较有价值的比赛可以参加&#xff1f;结合众多孩子的反馈和参与情况&#xff0c;好真题网体检参加上海市汉字小达人比赛活动、上海市小学生古诗文大会、AMC8美国数学竞赛等&#xff0c;主要针对的是语文…

使用Python创建多功能文件管理器

简介 在本文中&#xff0c;我们将探索一个使用Python的wxPython库开发的文件管理器应用程序。这个应用程序不仅能够浏览和选择文件&#xff0c;还支持文件预览、压缩、图片转换以及生成PPT演示文稿的功能。 C:\pythoncode\new\filemanager.py 完整代码 import wx import os …

ChatGLM3Loader发生错误Library cudart is not initialized

ChatGLM3Loader执行时发生错误&#xff1a; Library cudart is not initialized。 文章《Chatglm3部署踩坑记录》里提到是因为没有安装 CUDA Toolkit 引起。 1、用 nvidia-smi.exe 命令查看显卡当前驱动程序版本 2、NVIDIA CUDA 工具包发行说明&#xff0c;每个 CUDA 工具包版…

深度学习中常用的激活函数和损失函数

ReLu和Sigmoid的区别。 ReLU在正数区域提供线性响应&#xff0c;有助于加速训练并减少梯度消失问题&#xff0c;而Sigmoid在所有区域都是非线性的&#xff0c;输出范围是0到1&#xff0c;适用于二分类问题&#xff0c;但在深网络中容易造成梯度消失。 Softmax函数的作用。 Soft…

《Advanced RAG》-03-使用 RAGAs + LlamaIndex 进行 RAG 评估

摘要 文章首先介绍了 RAG 评估的三个主要部分&#xff1a;输入查询、检索上下文和 LLM 生成的响应。 提到了 RAGAs 提出的 RAG 评估指标&#xff0c;包括 Faithfulness、Answer Relevance 和 Context Relevance&#xff0c;以及 RAGAs 网站提供的两个额外指标&#xff1a;Conte…