您的位置:首页 > 运维架构 > Linux

Linux用户切换su与提权sudo

2020-08-11 16:24 519 查看

应用场景
SSH远程管理、运维测试——切换用户身份su
管理权限细分——提升权限sudo
su用户切换命令格式
su 不加-切换到本机root不切换到目标用户环境(加-切换用户的同时切换到目标的系统环境)

[student@localhost ~]$ su
密码:
[root@localhost student]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/home/student/.local/bin:/home/student/bin
[student@localhost ~]$ su -
密码:
[root@localhost ~]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

以root身份执行某命令:
[student@localhost ~]$ su - -c “chmod 777 /var/ftp/k8s” root
查看su验证记录、shell开启与关闭:
[root@localhost student]# tail /var/log/secure |grep su
sudo用户提权
系统管理员root用户,配置普通用户有执行自身命令的权限
主配置文件 /etc/sudoers 或 visudo打开配置文件
提取格式:
普通用户名 主机名列表=命令列表 (必须写命令的绝对路径,多条命令用 , 号隔开)
例:
tom localhost,svr1=/sbin/,!/sbin/ifconfig
dc ALL=(ALL) NOPASSWD:/usr/bin/virt

使用别名做用户提权
vim /etc/sudoer
root ALL=(ALL) ALL
Host_Alias MYUSR=localhost,master #定义主机别名
Cmnd_Alias MYCMD=/usr/bin/rpm , /usr/bin/yum #定义命令别名
tom MYUSR=MYCMD #别名的使用

启用日志文件,记录用户提权操作
[root@localhost ~]# echo ‘Defaults logfile="/var/log/sudo.log"’ >> /etc/sudoers

普通用户查看可用的提权命令: sudo -l
普通用户使用可提权的命令时,只需在命令前加sudo即可

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: