如何添加sudoer

如何添加sudoer,第1张

添加sudoer方法:

1、进入超级用户模式。也就是输入"su

-",系统会让你输入超级用户密码,输入密码后就进入了超级用户模式。

2、添加文件的写权限。也就是输入命令"chmod

u+w

/etc/sudoers"。

3、编辑/etc/sudoers文件。也就是输入命令"vim

/etc/sudoers",输入"i"进入编辑模式,找到这一

行:"root

ALL=(ALL)

ALL"在起下面添加"xxx

ALL=(ALL)

ALL"(这里的xxx是你的用户名),然后保存(就是先按一

下Esc键,然后输入":wq")退出。

4、撤销文件的写权限。也就是输入命令"chmod

u-w

/etc/sudoers"。

    笔者在添加新用户后或者在centos系统上使用sudo时会提示没有权限,需要编辑修改/etc/sudoers,于是笔者将WSL Ubuntu、树莓派4B,centos7系统的这个文件罗列出来看看到底怎么配置。

    sudo的作用是啥呢?Sudoers allows particular users to run various commands as the root user, without needing the root password。

1、WSL Ubuntu

     文件的第一句话:This file MUST be edited with the 'visudo' command as root. 这个文件需要root用户使用visudo来编辑修改,这个编辑器库检查语法,避免修改错误。

    /etc/sudoers.d/目录下的文件也同样有效,提示可以在目录下新建个配置文件来避免直接修改sudoers文件。Please consider adding local content in /etc/sudoers.d/ instead of directly modifying this file.

    文件里面最重要的是三个配置:

超级用户拥有所有权限

# User privilege specification  

root    ALL=(ALL:ALL) ALL

 admin用户组拥有所有权限

# Members of the admin group may gain root privileges  

%admin ALL=(ALL) ALL

 允许使用sudo来获得所有权限

# Allow members of group sudo to execute any command    

%sudo  ALL=(ALL:ALL) ALL

这条配置的含义是:

第一个,指定的是用户,也可以是别名;

第二个,ALL指定的是用户所在的主机,可以是ip,也可以是主机名;

第三个,括号里指定的也是用户,指定以什么用户身份执行sudo

第四个,ALL指定的是执行的命令;

文件最后包含sudoers.d目录。

#includedir /etc/sudoers.d

2、树莓派4B

    相比于WSL Ubuntu,树莓派resdebian就只有其中两条主要的配置。

# User privilege specification

root    ALL=(ALL:ALL) ALL

# Allow members of group sudo to execute any command

%sudo  ALL=(ALL:ALL) ALL

3、CentOS7

    相比于上面,CentOS7的sudoers文件就丰富的多,可以定义具体的权限。但也有些区别。

    root ALL=(ALL) ALL  。括号中只有一个ALL。

wheel用户在运行所有命令,可以不输入密码。

%wheelALL=(ALL) NOPASSWD: ALL

允许使用用户挂载U盘

%users ALL=/sbin/mount /mnt/cdrom, /sbin/umount /mnt/cdrom

允许使用用户关机

%users localhost=/sbin/shutdown -h now

    配置文件中列出很多别名NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS。比如PROCESSES = /bin/nice, /bin/kill, /usr/bin/kill, /usr/bin/killall。

    那么下面的配置就是允许sys用户组可以执行别名定义的应用。

    %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS

在 Linux 上, 只有 root 用户可以执行任何命令, 其他用户必须使用 sudo 才可执行特殊的命令.

sudo 是通过 sudoers 进行配置的.

/etc/sudoers:

不建议直接修改默认配置文件, 我们可以使用 #include 和 #includedir 添加自定义的配置文件.

/etc/sudoers.d/README:

上面的配置表示: root 用户可以在 任意机器 上以 任意用户 和 任意用户组 的 任意组合 执行 任意命令.


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/28654.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-02-18
下一篇2023-02-18

发表评论

登录后才能评论

评论列表(0条)

    保存