有关visudo的需求分析及其使用

背景:最近小伙伴们老是抱怨云服务器又登录不上了,由于许多人都在使用同一台服务器,不免有的人误操做使用了关机或者重启命令。所以给那些在线的小伙伴带来了困扰。如何解决

题目:建立普通用户,经过sudo提权,禁止使用关机,重启命令。

解决办法:

第一种 :不是办法的办法

能够经过使用命令别名来设置:即将关机命令使用alias进行修改:vim

[root@www-# vim .bashrc 

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias grep='grep --color=auto'
alias reboot='echo " cannot use reboot: Permission denied" '
alias init='echo " cannot use init: Permission denied" '
alias poweroff='echo " cannot use poweroff: Permission denied"'
alias shutdown='echo " cannot use shutdown: Permission denied" '

从新加载环境设置:bash

[root@www- ~]# source .bashrc

第二种:使用visudo进行用户权限管理

提示:visudo是直接操做/etc/sudoers文件,咱们也能够直接 vi /etc/sudoers,可是visudo命令的好处在于,退出/etc/sudoers文件时,系统会检查/etc/sudoers语法是否正确。服务器

  1. 单用户受权markdown

    [root@localhost ~]# visudo
     root    ALL=(ALL)       ALL
     admin   ALL=(root)     NOPASSWD: ALL,!/usr/bin/passwd,/usr/bin/passwd [a-zA-Z]*,!/usr/bin/passwd root,!/sbin/reboot,!/sbin/halt,!/sbin/shutdown,!/sbin/init,!/sbin/poweroff
  2. 群组受权app

    [root@localhost ~]# visudo
     ## Allows people in group wheel to run all commands
     # %wheel        ALL=(ALL)       ALL
     %test ALL=(ALL) NOPASSWD: ALL,!/usr/bin/passwd,/usr/bin/passwd [a-zA-Z]*,!/usr/bin/passwd root,!/sbin/reboot,!/sbin/halt,!/sbin/shutdown,!/sbin/init,!/sbin/poweroff
     #只须要把用户添加到组里便可
     [root@localhost ~]# usermod -a -G test jj
  3. 别名受权ide

    [root@localhost ~]# visudo
     #指明用户及其别名USERNAME
     User_Alias USERNAME=jiajie,jj,admin #指明命令
     Cmnd_Alias COMMAND=ALL,!/usr/bin/passwd,/usr/bin/passwd [a-zA-Z]*,!/usr/bin/passwd root,!/sbin/reboot,!/sbin/halt,!/sbin/shutdown,!/sbin/init,!/sbin/poweroff #配置别名拥有的权限
     USERNAME ALL=(root) NOPASSWD:COMMAND
相关文章
相关标签/搜索