当前位置: 首页 > article >正文

Linux下进行用户的切换与创建以及细微设置

目录为什么要创建普通用户创建新用户Step1正确登入自己的云服务器add指令添加普通用户passwd设置登录密码查看所有用户ls/homecat/etc/passwdcat /etc/passwd |cut -d: -f 1-3lastlogsu -l切换用户查看当前为何用户删除用户​编辑sudo对于新创建用户不可使用的问题为什么不能使用解决方案sudo ... 为什么后面输的是普通用户密码为什么要创建普通用户在Linux下从使用上来说我们一般所有的操作都是在普通用户下进行执行的并且学习都是使用普通用户来学习的即便是工作以后也是用普通用户那么对于如果创建普通用户就显得及其重要。但是从主要原因上来讲还是因为此安全性普通用户权限限制了对系统敏感区域和文件的访问这样可以防止意外的系统破坏或恶意软件的影响。如果普通用户的操作出现错误影响相对较小。防止误操作以普通用户身份操作可以避免误删或修改系统关键文件根用户拥有完全的权限容易导致严重的后果。最小权限原则遵循最小权限原则Principle of Least Privilege意味着用户应仅获得完成其任务所需的最低权限从而减少潜在的安全风险。审计和追踪普通用户的行为更容易进行审计可以清晰记录是谁执行了哪些操作。根用户的所有操作都通过同一个账户执行难以追踪。应用隔离许多应用程序和服务运行在普通用户环境中限制它们对系统的潜在影响。即使应用程序被攻陷攻击者也无法获得更高的权限。总结来说使用普通用户可以提高系统的安全性和稳定性避免潜在风险。那么接下来就介绍怎么创建新的普通用户。创建新用户Step1正确登入自己的云服务器我这里用的是阿里云的centos7大致指令为ssh root自己服务器的公网ip然后再输入密码即可。然后大致成功就是这样add指令添加普通用户接下来就是通过指令添加普通用户了指令就为adduser 要创建的用户名passwd设置登录密码passwd刚创建的用户名然后连续输入两次设置的同样的密码当然设置的密码不要太简单要不然会报错这是因为如果密码设置的太简单就会容易遭到攻击这就使得别人可以入侵的服务器而干一些违法或者不好的事所以密码要设置复杂一些然后记下来设置好密码后这时候就已经创建成功了一个普通用户那么怎么查看当前是否创建成功呢查看所有用户ls/home正常登陆的用户在/home下都有家目录所以可以直接看这个目录下的文件输入ls /home这里的lisi就是我们刚刚创建的新的普通用户cat/etc/passwd直接查看/etc/passwd 文件后面第二个冒号的值大于等于1000时这个就是一个用户这里用三个不同颜色框起来的就是三个不同的普通用户cat /etc/passwd |cut -d: -f 1-3输入cat /etc/passwd |cut -d: -f 1-3只筛选出了有用的信息方便查看【推荐使用这个命令】lastlog输入lastlog 这个是系统的所有用户绝大部分是系统内置的su -l切换用户那么接下来我们已经会如何创建用户了那么下一步就是要如何切换用户了一般来说是使用su -l用户名 来切换的查看当前为何用户那么如何判断当前已经切换过后的用户为lisi呢那么就需要使用whoami指令了看上图确实是从root却换到了lisi用户。那么如何从普通切换到超级用户root呢同样还可以使用su -l root但是一般来说大多数是使用su - 的。因为大的少嘛。删除用户从下图的操作可以发现userdel确实可以删除用户但是删除后其目录还在。就看这里我们第二次执行userdel lisi他报错lisi已经不存在那么也就证明lisi确实被删除了但是目录还在就是因为他的语法设置就是这样。userdel linuxde //删除用户linuxde但不删除其家目录及文件 userdel -r linuxde //删除用户linuxde其家目录及文件一并删除别的选项还有-f强制删除用户即使用户当前已登录 -r删除用户的同时删除与用户相关的所有文件。请不要轻易用-r选项他会删除用户的同时删除用户所有的文件和目录切记如果用户目录下有重要的文件在删除前请备份。sudo对于新创建用户不可使用的问题然而对于新创建的普通用户一般是对于系统来说是不信任的那么对于这个新创建的用户系统是不允许再此普通用户的身份下执行root权限的操作的那么我们如何将其这个新创建的普通用户设置为系统所信任的用户呢上面简单的解释了其操作系统不信任所以不能用那么从根本上呢为什么不能使用sudo指令能够使某一条指令拥有root权限即以root权限去执行但是如果是新创建的普通账户一般来说一开始是不能执行sudo命令的因这一用户并不在sudoers这个文件中因此没有使用sudo的权利suduers文件位于路径/etc/sudoerssudoers这个文件为root账户所属。这个文件相当于一个白名单在这个文件里的用户才可以使用sudo命令如果不在sudoers文件里就无法使用sudo提权来暂时获得root的权利如果要将普通用户添加到sudoers文件中那就需要进入root账户进行操作解决方案首先进入root账户上面已经说怎么进入root了这里就不多说了接着进入目录/etc然后用vim打开文件sudoers命令vim sudoers可以看到如下界面接着输入字符i进入插入模式然后根据上面红褐色框所框出来部分的格式将要添加的普通用户写入即可这里我上面已经添加了信任用户haha你也可以按照上面一样添加上自己要信任的用户。最后先按Esc键进入命令模式再按冒号:即shift ;进入底行模式在底行模式下输入wq!强制保存退出然后Enter注意一定要是英文状态下的符号下面就可以自己验证是否上述操作正确了sudo是否可以使用。sudo ... 为什么后面输的是普通用户密码我们sudo后一般还输入密码可能按照逻辑来说我们对普通用户提权理应当是输入root密码但是实际上输入的是普通用户的密码这就有点违背逻辑了。但实际上这也是精心设计的结果1. 权限的精细化控制sudo的核心理念是授权特定用户执行特定命令而非直接开放root权限。系统管理员通过/etc/sudoers文件精确控制哪些用户能运行哪些命令甚至可以限制无需密码或仅允许特定场景使用。- 如果要求输入root密码- 所有需要sudo的用户都必须知道root密码导致密码扩散风险。- 无法区分具体是谁在执行特权操作审计日志/var/log/auth.log会失去意义。2. 安全审计与责任追溯sudo会记录哪个用户、在何时执行了什么命令。若用户输入自己的密码系统能明确关联操作到个人账户便于事后审计。若输入root密码所有操作都会被视为“root本人所为”无法追踪到实际发起者违背了最小权限原则。3. 防止root密码扩散root密码通常仅限极少数管理员知晓。若普通用户通过sudo提权需root密码密码泄露风险剧增例如员工离职后仍需回收root密码。修改root密码时必须通知所有相关用户运维成本高。4. 用户体验与灵活性免密配置管理员可配置某些命令或用户组免密码使用sudo如NOPASSWD选项这在自动化脚本或频繁操作时更高效。- 密码缓存输入自己的密码后sudo会默认缓存密码15分钟可配置期间无需重复输入平衡安全与便利。5. 历史与设计哲学sudo的诞生是为了减少直接使用su需root密码带来的风险。它的设计初衷是“最小权限授予”而非完全切换到root身份。- 现代Linux发行版如Ubuntu默认禁用root账户完全依赖sudo管理特权进一步强化了这一模式。

相关文章:

Linux下进行用户的切换与创建以及细微设置

目录 为什么要创建普通用户 创建新用户 Step1:正确登入自己的云服务器 add指令添加普通用户 passwd设置登录密码 查看所有用户 ls/home cat/etc/passwd cat /etc/passwd |cut -d: -f 1-3 lastlog su -l切换用户 查看当前为何用户 删除用户 ​编辑 sud…...

避坑指南:YOLOv8模型部署到小程序的5个常见错误及解决方案

YOLOv8模型部署到小程序的避坑实战手册 第一次把YOLOv8模型塞进小程序时,我盯着屏幕上那个"500 Internal Server Error"发呆了半小时。这已经是第三次部署失败了,Docker日志里那些红色错误信息像在嘲笑我的天真。后来才发现,原来只…...

OpenClaw+千问3.5-35B-A3B-FP8:自动化财务报表生成与分析

OpenClaw千问3.5-35B-A3B-FP8:自动化财务报表生成与分析 1. 为什么需要自动化财务处理 每个月末,我都会面对同样的烦恼:银行流水、电子发票、Excel表格散落在不同平台,手动整理耗时费力。直到发现OpenClaw与千问3.5模型的组合&a…...

如何快速掌握大规模移动应用开发:10个核心技巧与最佳实践

如何快速掌握大规模移动应用开发:10个核心技巧与最佳实践 【免费下载链接】discussions Discussions about projects, technologies, and processes around building large-scale mobile apps 项目地址: https://gitcode.com/gh_mirrors/di/discussions GitH…...

一款基于 .NET 开源、跨平台应用程序自动升级组件露

基础示例:单工作表 Excel 转 TXT 以下是将一个 Excel 文件中的第一个工作表转换为 TXT 的完整步骤: 1. 加载并读取Excel文件 from spire.xls import * from spire.xls.common import * workbook Workbook() workbook.LoadFromFile("示例.xlsx"…...

JavaScript交互功能实现:StartBootstrap Freelancer 导航栏与滚动效果

JavaScript交互功能实现:StartBootstrap Freelancer 导航栏与滚动效果 【免费下载链接】startbootstrap-freelancer A flat design, one page, MIT licensed Bootstrap portfolio theme created by Start Bootstrap 项目地址: https://gitcode.com/gh_mirrors/st/…...

PX41.13.3版本常用参数

1.预解锁参数COM_PREARM_MODE 默认值 Disabled2. TAKE OFF起飞模式,规定时间内是否起飞成功COM_LKDOWN_TKO 默认值3s3.飞控与机载电脑通信,信号丢失时间判断以及动作COM_OBC_LOSS_L 默认值5sCOM_OBC_ACT 默认值 降落模式COM_OBC_RC_ACT 默认值 定点模…...

HtmlTextView项目维护指南:如何继续开发这个停止维护的开源项目

HtmlTextView项目维护指南:如何继续开发这个停止维护的开源项目 【免费下载链接】html-textview TextView to display simple HTML 项目地址: https://gitcode.com/gh_mirrors/ht/html-textview 你是否正在寻找一个轻量级的Android HTML文本显示解决方案&…...

JS中彻底删除JSON对象组成的数组中的元素

在 JS 中,对于某个由 JSON 对象组成的数组,例如:var test [{ "a": "1", "b": "2" }, { "a": "3", "b": "4" }, { "a": "5", "b…...

OpenClaw私人教练:Phi-3-mini定制健身计划系统

OpenClaw私人教练:Phi-3-mini定制健身计划系统 1. 为什么需要AI私人教练 去年夏天,我发现自己陷入了典型的"健身困境":办了昂贵的健身房会员卡,却因为缺乏科学指导而收效甚微。传统健身APP的模板化方案无法适应我不断…...

PCB设计新手必看:从布局到EMC的10个实用避坑技巧

PCB设计新手必看:从布局到EMC的10个实用避坑技巧 刚接触PCB设计时,总会在各种细节上栽跟头。记得我第一次画板子时,晶振离MCU太远导致时钟信号不稳定,调试了整整两天才找到问题。这种经历让我深刻意识到,PCB设计不仅是…...

如何用ok-ww实现《鸣潮》全自动战斗与声骸收集:终极懒人指南

如何用ok-ww实现《鸣潮》全自动战斗与声骸收集:终极懒人指南 【免费下载链接】ok-wuthering-waves 鸣潮 后台自动战斗 自动刷声骸 一键日常 Automation for Wuthering Waves 项目地址: https://gitcode.com/GitHub_Trending/ok/ok-wuthering-waves 你是否厌倦…...

突破SWE-agent测试瓶颈:并行执行架构深度优化指南

突破SWE-agent测试瓶颈:并行执行架构深度优化指南 【免费下载链接】SWE-agent SWE-agent takes a GitHub issue and tries to automatically fix it, using your LM of choice. It can also be employed for offensive cybersecurity or competitive coding challen…...

实战指南:SpringBoot与KingbaseES的高效集成与性能调优

1. SpringBoot与KingbaseES集成基础 第一次接触KingbaseES时,我完全被它的兼容性震惊了。这个国产数据库不仅能完美支持标准SQL,还能无缝对接Oracle、MySQL等语法体系。记得当时接手一个老项目迁移,原本担心要重写大量SQL,结果90%…...

Git容器化CI/CD终极指南:多阶段构建与缓存策略优化

Git容器化CI/CD终极指南:多阶段构建与缓存策略优化 【免费下载链接】git Git Source Code Mirror - This is a publish-only repository but pull requests can be turned into patches to the mailing list via GitGitGadget (https://gitgitgadget.github.io/). P…...

从一次Sigar崩溃看Java生态的‘版本地狱’:如何优雅管理JDK与本地库的兼容性矩阵(附jdk1.8.0_241下载与降级实操)

Java生态中的依赖兼容性管理:从Sigar崩溃案例到系统化解决方案 当你在Windows 10环境下运行一个看似简单的Java应用,突然遭遇EXCEPTION_ACCESS_VIOLATION错误,而问题根源指向一个名为sigar-amd64-winnt.dll的本地库文件时,这远不止…...

终极鸣潮自动化指南:10个技巧解放双手,一键完成日常任务与声骸刷取

终极鸣潮自动化指南:10个技巧解放双手,一键完成日常任务与声骸刷取 【免费下载链接】ok-wuthering-waves 鸣潮 后台自动战斗 自动刷声骸 一键日常 Automation for Wuthering Waves 项目地址: https://gitcode.com/GitHub_Trending/ok/ok-wuthering-wav…...

终极Flash浏览器指南:如何在现代系统中完美运行Flash游戏与网页

终极Flash浏览器指南:如何在现代系统中完美运行Flash游戏与网页 【免费下载链接】CefFlashBrowser Flash浏览器 / Flash Browser 项目地址: https://gitcode.com/gh_mirrors/ce/CefFlashBrowser CefFlashBrowser是一个专为解决Flash内容在现代浏览器中无法运…...

如何将Sublime Text打造成Python开发利器:Anaconda插件终极指南

如何将Sublime Text打造成Python开发利器:Anaconda插件终极指南 【免费下载链接】anaconda Anaconda turns your Sublime Text 3 in a full featured Python development IDE including autocompletion, code linting, IDE features, autopep8 formating, McCabe co…...

如何高效协作开发Fisher插件:团队合作的最佳实践指南

如何高效协作开发Fisher插件:团队合作的最佳实践指南 【免费下载链接】fisher A plugin manager for Fish 项目地址: https://gitcode.com/gh_mirrors/fi/fisher Fisher是Fish Shell的终极插件管理器,让团队协作开发插件变得简单高效。无论你是新…...

达梦数据库图形化安装界面常见报错及解决方案

1. 达梦数据库图形化安装界面常见报错解析 达梦数据库作为国产数据库的代表之一,在企业级应用中越来越普及。但在实际安装过程中,尤其是图形化安装界面环节,不少用户会遇到各种报错问题。我自己在第一次安装达梦数据库时也踩过不少坑&#xf…...

如何用IBAnimatable与Swift Concurrency打造流畅异步动画:完整指南

如何用IBAnimatable与Swift Concurrency打造流畅异步动画:完整指南 【免费下载链接】IBAnimatable Design and prototype customized UI, interaction, navigation, transition and animation for App Store ready Apps in Interface Builder with IBAnimatable. …...

Sokol动画系统:如何在跨平台C/C++项目中实现流畅的2D与3D动画效果

Sokol动画系统:如何在跨平台C/C项目中实现流畅的2D与3D动画效果 【免费下载链接】sokol minimal cross-platform standalone C headers 项目地址: https://gitcode.com/gh_mirrors/so/sokol Sokol是一个极简的跨平台独立C头文件库,专门为游戏和图…...

如何使用node-fetch实现GraphQL批量查询:5个减少请求数量的实用技巧

如何使用node-fetch实现GraphQL批量查询:5个减少请求数量的实用技巧 【免费下载链接】node-fetch A light-weight module that brings the Fetch API to Node.js 项目地址: https://gitcode.com/gh_mirrors/no/node-fetch 在现代API开发中,频繁的…...

Cesium实战:手把手教你用四元数搞定飞行模型朝向,告别极点旋转Bug

Cesium实战:四元数驱动飞行模型朝向的终极解决方案 想象一下,你正在开发一个全球飞行模拟系统,当飞机接近北极点时,模型突然像失控的陀螺一样疯狂旋转——这不是特效,而是许多Cesium开发者遇到的经典痛点。传统欧拉角在…...

OpenClaw文件管理机器人:千问3.5-9B智能归类200+技术文档

OpenClaw文件管理机器人:千问3.5-9B智能归类200技术文档 1. 为什么需要文件管理机器人 我的下载文件夹已经变成了一个数字黑洞——里面堆积着超过200份未分类的技术文档,包括PDF白皮书、Markdown笔记、代码片段和会议录音。每次寻找特定文件都需要在混…...

ubuntu(22.04),开启串口永久权限 ,并设置开机自启动文件

1.串口永久权限1.使用CtrlAltt 打开新的终端2. 使用 ls -la /dev 查看进行所有的驱动名称(包含权限与用户)ls -la /dev 3. 找到正确的名称并记住4.使用cd /etc/udev/rules.d/ 进入文件夹下,并使用ls查看所有的文件cd /etc/udev/rules.d/ 5. 使…...

算法工具箱之前缀和

前缀和概念:前缀和(Prefix Sum)是一种重要的预处理技术,能够在O(1)时间内快速计算数组任意区间的和。核心思想:对于数组nums,我们预先计算一个前缀和数组prefix,其中:prefix[i]表示n…...

OpenAlternative移动端优化完全指南:打造完美开源软件目录响应式体验

OpenAlternative移动端优化完全指南:打造完美开源软件目录响应式体验 【免费下载链接】openalternative Curated list of open source alternatives to proprietary software. 项目地址: https://gitcode.com/gh_mirrors/op/openalternative 在移动设备使用率…...

Chrono 自然语言日期解析器:从文本到标准日期的完整指南

Chrono 自然语言日期解析器:从文本到标准日期的完整指南 【免费下载链接】chrono A natural language date parser in Javascript 项目地址: https://gitcode.com/gh_mirrors/ch/chrono Chrono 是一款强大的 JavaScript 自然语言日期解析器,能够将…...