zoukankan      html  css  js  c++  java
  • Linux sudo 命令的应用

    Linux sudo 命令的应用

    sodo 的字面意思理解应该是switch user excute a command as another user,用另外一个用户的权限来执行命令。如同电视剧中,皇帝派心腹大臣调查贪官污吏,但是大臣并没有皇帝的权利,到了某些时候要使用生杀予夺的权利时,就可以拿出皇帝御赐的上方宝剑来当代表皇帝来行使这些权利。

    sudo 与su 的区别
    有些人很困惑那么已经有了su,如果要执行没有权限的命令时,可以直接切换用户完成操作,为什么又要开发出这样一个命令呢。原因就在于,使用su的时候必须要输入对应用户的密码,如果要使用的是root用户才有权限操作的命令,那么root用户就面临着密码泄露的危险,考虑到系统安全,于是就开发出更易使用和安全的sudo来了。

    sudo 配置文件路径
    /etc/sudoers

    sudo 配置文件特殊编辑器
    编辑sudo 有专有的命令visudo,这个命令只允许单个用户进行编辑,并且可以进行语法检查。

    sudo 配置文件的基本格式

    who  where=(run_as_who) run_commands
    总结下来就是:
    谁在哪台主机以谁的身份运行什么命令

    sudo 配置的别名机制
    sudo 的别名有三种,分别是:
    用户别名、地址别名、Runas 别名,命令别名。
    User_Alias TEST_USER =jack,rose //用户之间以分号隔开
    Host_Alias TEST_HOST= ALL //所用地址都可以使用sudo
    Runas_Alias TEST_Runas //用法和用户别名一样
    Cmnd_Alias TEST_Cmnd /usr/sbin/useradd, /usr/bin/passwd //命令要写觉得路径

    默认情况下,第一次使用sudo命令的时候要求输入密码,但是第二次就不用输入了。sudo的密码能够缓存5分钟,五分钟以内使用是不需要输密码的,五分钟过后就要求再次输入密码。那么当我们有事外出的时候,可以使用sudo -k 命令让自己的密码失效,那么当再次使用的时候,就需要重输密码了。

    如果不想每次使用的时候输入密码,那么可以添加NOPASSWD 选项:

        118 ## Here is sudo config
    119
    120 ## User_Alias
    121 User_Alias USER_ALLOW=liangzi
    122 Host_Alias HOST_ALLOW=192.168.75.188
    123 Cmnd_Alias COMMAND_ALLOW=/usr/sbin/useradd
    124
    125 USER_ALLOW HOST_ALLOW=(root) NOPASSWD:COMMAND_ALLOW

    sudo的命令执行日志信息放在cat /var/log/secure文件内,可以定期的去查看一下,以免执行恶意命令。

  • 相关阅读:
    ASP.net MVC 构建layui管理后台(构造基础仓储)<1>
    ASP.net MVC 构建layui管理后台(整体效果)
    搭建私有 Nuget 服务器教程(1)
    SSAS数据集Cube不存在或者尚未处理
    浅谈MDX处理空值NULL及格式化结果
    Zoey.Dapper--Dapper扩展之把SQL语句放到文件中
    Polly每次重试执行不同的操作
    Exceptionless应用--自定义插件
    Fiddler开启Https的时候出现unable to configure windows to trust Fiddler Root certificate问题
    ASP.NET Core 中的配置
  • 原文地址:https://www.cnblogs.com/roverliang/p/6062302.html
Copyright © 2011-2022 走看看