centos7管理用户权限

 

1、Centos创建用户并授权:

https://blog.csdn.net/bug4pie/article/details/79761443

https://www.jb51.net/article/120366.htm

https://www.cnblogs.com/userOS/p/5906319.html    

http://blog.chinaunix.net/uid-26642180-id-3962245.html    (文件含义说明,配置解析)

https://blog.csdn.net/capecape/article/details/78503184   (用户权限管理实例)

https://blog.csdn.net/kingslave1/article/details/78057163?locationNum=8&fps=1  (centos7限制普通用户登录权限)

https://blog.csdn.net/capricorn90/article/details/52653251   (centos7限制用户关机权限)

https://blog.csdn.net/qq_39583463/article/details/81912021  (Linux限制普通用户只能使用某命令)

https://blog.csdn.net/nange_nice/article/details/77964108  (sudo详尽用法)

https://blog.csdn.net/twilight_karl/article/details/76595348  (sudo 权限管理)

https://www.cnblogs.com/zutbaz/p/4248845.html      (CENTOS7 用户帐户设置)

https://blog.csdn.net/mingongge/article/details/52701368     (Linux服务器权限管理之sudo高级应用)  

所以经测试结果表明,sa   ALL= !/sbin/fdisk ,/usr/sbin*,/sbin*命令执行的匹配规则是从后到前的,所以后面执行sudofdisk不会提示权限不足的现像

 https://www.centoschina.cn/course/config-centos/9414.html          (visudo各行的含义)

https://yq.aliyun.com/articles/539323?spm=5176.10695662.1996646101.searchclickresult.6b1a743bIBiMsP           (阿里云visudo配置)

usermod -s /bin/tcsh vic     (修改bash环境)

——————————————————————————————————————————————————————————————————————————————————

查看所有组命令

cat /etc/group


1、查看free命令存放路径,whereis free

修改命令的执行权限,原权限是755,修改为744,chmod 755 /usr/bin/free   即可取消其它用户的执行权限

 2、修改用户的环境变量  ~/.bashrc,和~/.bash_profile,两个都得改要不不生效

PATH=$HOME/programs

export PATH

~/.bash_profile 是交互式、login 方式进入 bash 运行的
~/.bashrc 是交互式 non-login 方式进入 bash 运行的
通常二者设置大致相同,所以通常前者会调用后者。  (https://www.cnblogs.com/persist/p/5197561.html)


# User privilege specification

root    ALL=(ALL) ALL

# Allow members of group sudo to execute any command after they have
# provided their password
# (Note that later entries override this, so you might need to move
# it further down)
%sudo ALL=(ALL) ALL
#
#includedir /etc/sudoers.d
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

 

以上是我的Ubuntu10.04的默认/etc/sudoers文件。"#"开头的都是注释可以忽略。

首先用户需要转换成根用户并使用visudo命令打开/etc/sudoers文件。

讲解:root    ALL=(ALL) ALL

root表示被授权的用户,这里是根用户;

第一个ALL表示所有计算机;

第二个ALL表示所有用户;

第三个ALL表示所有命令;

全句的意思是:授权根用户在所有计算机上以所有用户的身份运行所有文件。

%admin ALL=(ALL) ALL同上面一样,只不过被授权的成了admin这个组。

 

通用格式

/etc/sudoers的通用格式为:

user  host  run_as  command

user:一位或几位用户,在/etc/group中可以用一个%代替它,组对象的名称一定要用百分号%开头。

host:一个或几个主机名;

run_as:作为哪个用户运行,常见选项是root和ALL

command:想让用户或组运行的一个或几个根级别命令。

 

例如:

hans   ALL=(root)   useradd,userdel

授权hans用户在所有计算机上以root身份运行useradd,userdel命令。

%smith  ALL=(ALL)  NOPASSWD:useradd,userdel

授权smith组全部成员在所有计算机上以所有用户的身份运行useradd,userdel命令;且运行时不必输入密码。

 

需要注意的是,当我们为用户定义可以运行的命令时,必须使用完整的命令路径。这样做是完全出于安全的考虑,如果我们给出的命令只是简单的userad 而非 /usr/sbin/useradd,那么用户有可能创建一个他自己的脚本,也叫做userad,然后放在它的本地路径中,如此一来他就能够通过这个名为 useradd的本地脚本,作为root来执行任何他想要的命令了。这是相当危险的!

原文地址:https://www.cnblogs.com/yaok430/p/9680289.html