一、格式说明及常用配置选项

格式: 用户或组 主机=授权可以使用哪个用户的权限 可以执行的命令

User_Alias 用户定义别名(别名可以是用户,用户组(用户组前面要加%))
例:User_Alias OLD_ADMINS=wt

Runas_Alias 定义runas别名(sudo允许切换到的用户身份)
例:Runas_Alias OP=root

Cmnd_Alias 定义命令别名
例:Cmnd_Alias USERCMD=/usr/sbin/useradd

注意事项:如果别名后面有多个用户或命令,可以使用","隔开;如果使用的是组,在组前面需要加"%";如果配置语句太长,可以使用"\"换行;需要特别注意的是,所有定义的别名都需要大写

二、配置一个范例

1、创建一个新用户

 [root@WT ~]# useradd wt
[root@WT ~]# echo "wt"|passwd --stdin wt
Changing password for user wt.
passwd: all authentication tokens updated successfully.

2、执行visudo命令在最下面添加如下配置,实现sudo提权

#My sudo configuration
User_Alias OLD_ADMINS=wt
Runas_Alias OP=root
Cmnd_Alias USERCMD=/usr/sbin/useradd OLD_ADMINS ALL=(OP) USERCMD

3、切换到wt用户,并执行查看wt所拥有的权限(可以看到wt这个普通用户已经拥有创建用户命令的useradd命令了)

 [root@WT ~]# su - wt
Last login: Thu Sep :: CST on pts/
[wt@WT ~]$ sudo -l We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things: #) Respect the privacy of others.
#) Think before you type.
#) With great power comes great responsibility. [sudo] password for wt:
Matching Defaults entries for wt on WT:
!visiblepw, always_set_home, match_group_by_gid, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR
LS_COLORS", env_keep+="MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE
LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE",
env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY", secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin User wt may run the following commands on WT:
(root) /usr/sbin/useradd

4、试在普通用户wt用户创建一个test用户

 [wt@WT ~]$ sudo useradd test
[wt@WT ~]$ id test
uid=(test) gid=(test) groups=(test)

三、配置日志审计

1、配置日志审计

[root@WT ~]# rpm -aq sudo rsyslog
rsyslog-8.24.-.el7.x86_64
sudo-1.8.19p2-.el7.x86_64
[root@WT ~]# echo "Defaults logfile=/var/log/sudo.log">>/etc/sudoers
[root@WT ~]# visudo -c
/etc/sudoers: parsed OK

2、切换到普通用户wt,创建一个普通用户test2

[root@WT ~]# su - wt
Last login: Fri Sep :: CST on pts/
[wt@WT ~]$ sudo useradd test2
[sudo] password for wt:

3、切换到root用户,查看/var/log/sudo.log的内容

 [root@WT ~]# cat /var/log/sudo.log
Sep :: : wt : TTY=pts/ ; PWD=/home/wt ; USER=root ;
COMMAND=/sbin/useradd test2

Linux sudo用户提权与日志审计的更多相关文章

  1. adore-ng笔记和Linux普通用户提权

    官网:https://github.com/trimpsyw/adore-ng 安装: [root@xuegod63 ~]# unzipadore-ng-master.zip [root@xuegod ...

  2. linux普通用户提权操作

    [root@test1 ~]# vim /etc/sudoers ## Allow root to run any commands anywhere root ALL=(ALL) ALLzhouyu ...

  3. linux普通用户提权

    tar通配符注入. echo 'echo "chenglee ALL=(root) NOPASSWD: ALL" > /etc/sudoers' > demo.sh e ...

  4. NO29 用户提权sudo配置文件详解实践--志行为审计

     用户提权sudo配置文件详解实践: 放到visudo里:  验证权限:

  5. linux 安全基本防护 用户提权 ssh访问控制

    linu安全应用 信息安全分类: 物理安全:主机/机房环境 系统安全:操作系统 应用安全:各种网络服务,应用程序 网络安全:网络访问控制,防火墙规则 数据安全:信息的备份与恢复,加密解密 管理安全:保 ...

  6. Linux用户提权管理方案

    提权管理方案背景: 如果一个公司有10余个运维或网络安全人员,同时管理服务器,切换到管理员用户时(su - root),必须要有root管理员密码,如果其中一人修改过root密码,其他用户则登录不了, ...

  7. Linux组和提权

    目 录 第1章 组命名管理**    1 1.1 group组信息和密码信息    1 1.1.1 /etc/group 组账户信息    1 1.1.2 /etc/gshadow 组密码信息     ...

  8. LINUX渗透与提权总结

    本文为Linux渗透与提权技巧总结篇,旨在收集各种Linux渗透技巧与提权版本,方便各位同学在日后的渗透测试中能够事半功倍. Linux 系统下的一些常见路径: 001 /etc/passwd 002 ...

  9. Linux本地内核提权漏洞复现(CVE-2019-13272)

    Linux本地内核提权漏洞复现(CVE-2019-13272) 一.漏洞描述 当调用PTRACE_TRACEME时,ptrace_link函数将获得对父进程凭据的RCU引用,然后将该指针指向get_c ...

随机推荐

  1. [学习笔记] 在Eclipse中使用Hibernate,并创建第一个工程

    在Eclipse中使用Hibernate 安装 Hibernate Tools 插件 https://tools.jboss.org/downloads/ Add the following URL ...

  2. Matplotlib入门简介

    Matplotlib是一个用Python实现的绘图库.现在很多机器学习,深度学习教学资料中都用它来绘制函数图形.在学习算法过程中,Matplotlib是一个非常趁手的工具. 一般概念 图形(figur ...

  3. 使用node.js开发一个生成逐帧动画小工具

    在实际工作中我们已经下下来不下于一万个npm包了,像我们熟悉的 vue-cli,react-native-cli 等,只需要输入简单的命令 vue init webpack project,即可快速帮 ...

  4. 基于 HTML5 WebGL 和 VR 技术的 3D 机房数据中心可视化

    前言 在 3D 机房数据中心可视化应用中,随着视频监控联网系统的不断普及和发展, 网络摄像机更多的应用于监控系统中,尤其是高清时代的来临,更加快了网络摄像机的发展和应用. 在监控摄像机数量的不断庞大的 ...

  5. MySQL数据每日备份

    1.window下通过命令方式 @echo offset "Ymd=%date:~,4%-%date:~5,2%-%date:~8,2%%time:~0,2%%time:~3,2%" ...

  6. linux网络配置(iproute2)

    iproute2家族 ip命令:show  / manipulate routing,devices,policy routing and tunnels(显示/操纵路由.设备.策略路由和隧道) 语法 ...

  7. 解决配置vim中文乱码的问题

    解决linux下vim乱码的情况:(修改vimrc的内容) 全局的情况下:即所有用户都能用这个配置 文件地址:/etc/vimrc 在文件中添加: set fileencodings=utf-8,uc ...

  8. 【合集】python 的一些妙用,推导式、三元表达式、with as 等

    自己常用的内置函数 函数如下: dir len str list tuple zip map reduce(现在并入了functools中) 常用的进制转换 Oct hex bin lambda 表达 ...

  9. Dictionary的遍历

    Dictionary<string, int> list = new Dictionary<string, int>(); list.Add("d", 1) ...

  10. Java8 格式化时间

    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmmss");LocalDateTime. ...