IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:sudo

共 4 篇相关文章

IT 累计浏览 2,438

在 Linux 中运行特定命令而无需 sudo 密码

这篇讲的是如何在自动化运维场景中,为特定Linux用户开放免密执行sudo命令的权限。作者从一个实际问题出发:在AWS的Ubuntu服务器上,需要一个每分钟运行的脚本来检查并自动重启某个服务,但执行启动命令必须使用sudo权限,而交互式输入密码与自动化目标冲突。 文章的核心方案是通过编辑`/etc/sudoers`文件,使用`visudo`工具安全地为指定用户(如`sk`)添加一条规则,例如`sk ALL=NOPASSWD:/bin/mkdir`。这样,该用户执行这条特定命令时便无需输入密码。作者详细演示了如何为命令添加多个以逗号分隔的权限项(如同时为`mkdir`、`chmod`和`apt`命令授权),并特别强调了必须使用命令的绝对路径(可通过`whereis`命令查找)。 此外,文章还介绍了如何混合配置免密和需密命令(如在配置行中加入`PASSWD:`前缀来指定需要密码的命令),以及如何撤销这些权限。最后,作者给出了重要的安全警告:免密码执行sudo命令是一把双刃剑,配置不当(例如为`rm`命令开放权限)可能导致数据误删等严重后果,使用时务必谨慎。整篇文章提供了一个清晰、可操作的自动化运维技巧,同时也强调了安全边界。

IT 累计浏览 5,313

在vim保存时获得sudo权限

这篇讲的是在vim编辑器中,如何不退出进程就能获得sudo权限来保存只读文件。 在维护线上服务的过程中,工程师经常需要编辑那些只有读权限的文件——比如系统配置或日志文件,它们通常属于其他用户。每次保存时,vim都会提示“read-only”,迫使你先退出编辑,再用sudo vim重新打开文件进行保存。这种反复切换的操作不仅繁琐,还容易打断思路,尤其在紧急修复时更显低效。 文章作者从这一常见痛点出发,分享了一个巧妙的解决方案:使用vim命令 `:w !sudo tee %`。这个命令允许在vim内部直接调用sudo权限,将当前缓冲区的内容保存到文件,无需中断编辑进程。具体来说,`:w !{cmd}` 执行外部命令`{cmd}`,并将缓冲区内容通过stdin传入;tee工具负责将stdin保存到文件;而`%`是vim中的一个只读寄存器,始终存储着当前编辑文件的路径。因此,整个操作相当于从vim外部修改了文件,巧妙地绕过了权限限制。 这个技巧能极大提升运维效率,避免反复退出和重启vim的麻烦。它展示了vim命令行的强大灵活性,以及如何利用外部工具增强编辑器的功能——对于经常处理系统文件的技术人员来说,这无疑是一个实用且高效的工作流优化。

IT 累计浏览 3,207

sudo的配置

这篇讲的是Linux系统管理中一个至关重要的工具——sudo的配置。文章开篇点明了root权限的至高无上性,随即引入sudo,将其定位为安全获取和临时使用root权限的“桥梁”。它对比了直接使用root账户的高风险与通过sudo进行精细授权的优势,清晰地解释了为何现代系统运维推崇后者。 作者没有停留在概念层面,而是深入到配置文件`/etc/sudoers`的实际编写中。文章逐步拆解了用户、主机、命令这几个核心配置项的含义与语法,并通过具体示例展示了如何为特定用户或用户组赋予“执行任何命令”或“仅能管理特定服务”的权限。其中,对`NOPASSWD`选项等关键参数的说明,直指日常运维中的便利与安全平衡点。 总的来说,这篇文章是一份扎实的sudo配置入门指南。它从权限控制的必要性出发,落脚于可立即实践的配置方法,帮助读者构建起既安全又灵活的多用户权限管理思路。

IT 累计浏览 3,532

sudo规则支持正则

这篇讲的是如何用正则表达式来给 `sudo` 规则“减负”。作者从运维管理中常见的痛点出发:传统的 `sudoers` 规则往往为每一条允许执行的命令或路径写死一个条目,当需要允许用户执行一组相关命令或匹配动态路径时,配置文件会变得非常臃肿且难以维护。 文章的核心是介绍了 `sudo` 从 1.8.6 版本开始支持的正则表达式语法。作者通过三个清晰的例子展示了其实用价值:比如,用 `.*` 通配符让用户能以 `sudo` 执行 `/home/` 目录下的任何 `vi` 编辑命令,而不必为每个用户目录单独写一条规则;又或者使用 `\|` 来匹配 `apt-get` 或 `aptitude`,从而用一条规则覆盖多个包管理命令。 这种特性将管理员从重复配置中解放出来。通过正则的模式匹配能力,可以大幅精简 `sudoers` 文件,一条正则规则可能替代过去数十条具体的命令白名单。这对于需要细粒度权限控制但又希望保持配置简洁的环境来说,是一个非常直接且有效的改进方法。文章最终落脚在实际效果上,提到规则数量可以显著缩减。