linux下普通用户如何免密执行sudo命令呢
发布日期:2025-04-08 00:39:47 浏览次数:7 分类:精选文章

本文共 1162 字,大约阅读时间需要 3 分钟。

Linuxokyun: Linux服务器日常运维中避免使用root用户的权限

在Linux服务器的日常运维工作中,经常会发现直接使用root用户权限太大,一不小心备份文件就可能被删除,恢复 pochop了。那么我们应该如何避免这种情况呢"?

#介绍

我们可以通过以下两种方式来完成:使用普通用户登录服务器,如果权限不够,可以使用sudo命令临时提升权限进行操作。这样既避免了root用户权限过大的问题,又能完成大部分工作任务。

环境

这个教程基于以下操作系统:

  • Linux服务器的root用户权限.

#新建普通用户

  • 使用root账户执行以下命令创建新的普通用户:
  • useradd yunweijia
    1. 为新用户设置密码:
    2. passwd yunweijia

      这样我们就创建了一个名为yunweijia的普通用户,并为他设置了密码。

      提权步骤

      为了避免每次使用sudo都需要输入密码,我们可以在/etc/sudoers文件中进行配置。

    3. 打开sudo管理文件:
    4. vim /etc/sudoers
      1. 添加或修改sudo权限项。在文件末尾添加以下内容:
      2. yunweijia ALL=(ALL) NOPASSWD:ALL

        保存退出后,执行以下命令来应用更改:

        sudo: yunweijia 帮助我

        或者在每次使用sudo时需要输入密码,那么可以选择不设置NOPASSWD权限,从而加大安全性。

        测试

        现在我们可以用普通用户登录并验证相关操作的权限。

      3. 试图查看 /root/1.txt 宽泛文件:
      4. cat /root/1.txt

        由于权限不足,会收到提示:

        cat: /root/1.txt: 没有权限
        1. 使用sudo命令提升权限进行操作:
        2. sudo cat /root/1.txt

          输入密码后,你将能够查看文件内容。

          如果你后续需要频繁使用该命令,可以考虑将cat命令从sudo隔离中添加,并在/sudoers文件中指定完整的路径,以便不需要每次输入密码。

          注意事项

          在使用sudo命令时,某些命令可能会提示找不到这些命令,尽管这种提示可能在root用户环境中不存在。原因是,sudo在提升权限后,其 PATH 变量仅基于sudoers文件中指定的路径。

          为了解决这个问题,可以在/etc/sudoers文件中添加以下行:

          secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/python3/bin;

          然后,根据你的需要添加任意其他路径,以便sudo命令能够正确查找和执行所有命令。

          通过以上方法,你可以在不破坏安全性的前提下,在服务器上使用普通用户并使用sudo命令完成需要管理员权限的操作。

          这样一来,日常运维工作既能避免使用root用户权限带来的风险,又能高效完成必要的任务。

    上一篇:Linux下权限与命令间的关系
    下一篇:Linux下显示硬盘空间的两个命令

    发表评论

    最新留言

    逛到本站,mark一下
    [***.202.152.39]2025年05月03日 09时13分36秒