sudo简介

sudo:授权之后,能够让某用户在不知道其他用户密码情况下以另外一个用户的身份(默认为管理员)运行命令;管理员可以指派某些用户可以执行某些特定命令。

它的特性主要有这样几点:

Sudo能够限制用户只在某台主机上运行某些命令。

Sudo提供了丰富的日志,详细地记录了每个用户干了什么。它能够将日志传到中心主机或者日志服务器。

Sudo使用时间戳文件来执行类似的“检票”系统。当用户调用sudo并且输入它的密码时,用户获得了一张存活期为5分钟的票(这个值可以在编译的时候改变)。

Sudo的配置文件是sudoers文件,它允许系统管理员集中的管理用户的使用权限和使用的主机。它所存放的位置默认是在/etc/sudoers,属性为0440

配置文件:sudoers

语法 who which_host=(whom) command

root    ALL=(ALL)     ALL
    %wheel    ALL=(ALL)    ALL


    who: 运行命令者的身份,user
    where: 通过哪些主机,host
    (whom):以哪个用户的身份, runas---默认为root
    which: 运行哪些命令,command
配置项:
    users     hosts=(runas)     commands
    users定义方式:
        username
        #uid
        user_alias
        %group_name
        %#gid
    host定义方式
        ip
        hostname
        netaddr
    command定义方式
        command name
        directory
        sudoedit

以lee的身份使用sudo fdisk -l命令,没有输出,并且告知lee不在sudoerfile中,并且邮件报告此事件给root

root查看邮件:

执行了usermod -G wheel lee(把lee用户加入到wheel组后):执行命令成功,因为上面配置文件中,我们定义了wheel组里的所有人都可以通过所有主机连接进来执行所有命令:

上面的方式也可通过在配置文件中添加 lee    ALL=(ALL)    fdisk -l实现

Alias_Type NAME = item1, item2, ...
    NAME: 必须使用全大写字母;
    Alias_Type:
        User_Alias
        Host_Alias
        Runas_Alias
        Cmnd_Alias

示例:

在配置文件中定义了用户别名NETADMIN,定义了命令别名NETADMINCMNDS,然后定义NETADMIN里的用户只能执行NETADMINCMNDS里的命令,所以netuser1和netuser2只可以通过sudo执行ip命令

下面配置定义了USERADMIN定义的用户可以不输入密码执行USERADMINCMNDS里的命令,但是,执行passwd时不能加root参数(就是不能改管理员密码)

# sudo [-u user] COMMAND

选项:

-V 显示版本编号

-h 会显示版本编号及指令的使用方式说明

-l 显示出自己(执行 sudo 的使用者)的权限

-v 因为 sudo 在第一次执行时或是在 N 分钟内没有执行(N 预设为五)会问密码,这个参数是重新做一次确认,如果超过 N 分钟,也会问密码

-k 将会强迫使用者在下一次执行 sudo 时问密码(不论有没有超过N 分钟)

-b 将要执行的指令放在后台执行

-p prompt 可以更改问密码的提示语,其中 %u 会代换为使用者的帐号名称,%h 会显示主机名称

-u username/#uid 不加此参数,代表要以root 的身份执行指令,而加了此参数,可以以 username 的身份执行指令(#uid 为该 username 的使用者号码)

-s 执行环境变数中的 SHELL 所指定的 shell ,或是/etc/passwd 里所指定的 shell

-H 将环境变数中的 HOME (家目录)指定为要变更身份的使用者家目录(如不加 -u 参数就是系统管理者 root )

command 要以系统管理者身份(或以 -u 更改为其他人)执行的指令

时间: 2025-01-02 19:44:39

sudo简介的相关文章

Linux 的sudo 和 su

Linux学习笔记之--su.sudo命令使用及区别 摘要:主要对su.sudo命令的功能进行介绍和两者之间的区别.以及使用方式 一:两者之间的区别 su用于用户之间的切换. sudo用于普通用户可以使用root权限来执行指定命令. 二:su.sudo命令介绍 1.su a) su简介 su用于用户之间的切换.但是前面的用户依然保持在登录状态.这种切换如果超级权限用户root向普通或虚拟用户切换不需要密码,而普通用户切换到其它任何用户都需要密码验证. b) su用法 su在不加任何参数,默认为切

Linux之sudo

Linux之sudo 一.sudo简介 sudo是unix/linux平台上的一个非常有用的工具,它允许系统管理员分配给普通用户一些合理的权力,让他们执行一些只有超级用户或其他特许用户才能完成的任务,比如:运行一些像restart,reboot,passwd之类的命令,或者编辑一些系统配置文件,这样不仅减少了用户登录次数和管理时间,也提高了系统安全性. sudo的特点:限制用户只在某台主机上运行某些命令.详细地记录了每个用户干了什么,能够将日志传到中心主机或者日志服务器.管理员提供配置文件,允许

linux下sudo命令[转]

一.sudo简介:    1.概念: sudo是linux下常用的允许普通用户使用超级用户权限的工具,允许系统管理员让普通用户执行一些或者全部的root命令,如halt,reboot,su等等.这样不仅减少了root用户的登陆和管理时间,同样也提高了安全性.Sudo不是对shell的一个代替,它是面向每个命令的. 它的特性主要有这样几点: 1.sudo能够限制用户只在某台主机上运行某些命令. 2.sudo提供了丰富的日志,详细地记录了每个用户干了什么.它能够将日志传到中心主机或者日志服务器. 3

Linux下sudo命令实例讲解

一.sudo简介 1.概念: sudo是linux下常用的允许普通用户使用超级用户权限的工具,允许系统管理员让普通用户执行一些或者全部的root命令,如halt,reboot,su等等.这样不仅减少了root用户的登陆和管理时间,同样也提高了安全性.Sudo不是对shell的一个代替,它是面向每个命令的. 它的特性主要有这样几点: 1.sudo能够限制用户只在某台主机上运行某些命令. 2.sudo提供了丰富的日志,详细地记录了每个用户干了什么.它能够将日志传到中心主机或者日志服务器. 3.sud

sudo 详解

1.sudo 简介 sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等.这样不仅减少了root用户的登录 和管理时间,同样也提高了安全性.sudo不是对shell的一个代替,它是面向每个命令的.(百度百科) su 命令 su是最简单的身份切换命令,一般都是su - username,然后输入password就ok了,root用su至其他用户无须密码:但非root用户切换时需要密码.切换到root可以使用su -

Linux系统安全基础知识

基本的系统安全 物理安全和登录安全 禁用root登录和sudo 可插拔认证模块(PAM) 基于PAM的口令安全和口令策略 基于PAM的访问控制 1.基本的系统安全 安全的磁盘布局 使用挂装选项提高文件系统的安全性 查找并取消文件/目录的非必要的特殊权限 避免安装不必要的软件包 配置软件包更新的Email通知 关闭不必要的服务 关闭IPv6的内核功能 1) .安全的磁盘布局 1.如果是新安装系统,对磁盘分区应考虑安全性: 1)根目录(/)中必须包括 /etc./lib./bin./sbin,即不能

《Linux应用大全 基础与管理》一书,讲述日常系统管理内容

<Linux应用大全 基础与管理>介绍了Linux基础与管理等方面的知识,主要内容包括Linux的安装,使用Linux图形界面,Linux应用程序,使用Linux字符界面,Linux文本编辑器,目录和文件管理,Linux常用命令,Kickstart配置,Shell编程,用户和组群账户管理,权限.所有者和ACL,归档与压缩,软件包安装和管理,磁盘分区和格式化,文件系统管理,磁盘配额,逻辑卷管理(LVM),磁盘阵列管理(RAID),Linux启动与引导,GRUB引导装载程序,进程和服务管理,任务计

02. Shell文件权限和脚本执行(更改权限)

Linux 有三种权限更改方式:chmod/acl/sudo 前两者用来更改文件权限,sudo用来更应用程序或者是命令的执行权限 chmod的局限是无法实现多种权限分配(用户群体只有三种),面对多权限时需要用ACL进行设置 Chmod chmod (agou)(+-)(rwx) filename agou 表示文件权限更改影响的范围,分别代表all, group, others, user +-表示增加或者删除权限 rwx表示具体的权限类型 chmod a+x test.txt 表示给test.

Linux--sudo权限讲解

sudo简介:sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等.这样不仅减少了root用户的登录 和管理时间,同样也提高了安全性.sudo不是对shell的一个代替,它是面向每个命令的 基本操作 [[email protected] /]# useradd Daniel #创建一个用户 [[email protected] /]# passwd Daniel #设置密码 [[email protected]