权限管理-系统命令sudo权限

1.前言

  • sudo权限有什么作用???
    假如在一个公司里,团队的负责人是root权限,其他人员都是普通用户权限,这个负责人任务太多,没有太多的时间去维护日常的服务器工作,这个时候需要普通用户去进行维护,普通用户的限制都比较多,很多命令都不能使用,所以把只能管理员用户可以执行的命令赋予普通用户执行,这就是sudo权限的作用。在Linux中命令也是文件。

2.sudo权限

  • root把本来只能超级用户执行的命令赋予普通用户执行
  • sudo的操作对象是系统命令

3.sudo使用

  • 命令:visudo
    说明:实际上修改的是/etc/sudoers文件。再执行完这个命令,再文件中直接添加这个添加要赋予的sudo权限即可,比如user1 ALL=/usr/bin/vim(这个比较危险,不要去尝试,下面会详细说明)

模板:
(1) 赋予用户的模板:
      root     ALL=(ALL)   ALL
解释: 用户名 被管理主机的地址 =(可使用的身份)授权命令(绝对路径
(2) 赋予用户组的模板:
      %wheel   ALL=(ALL)    ALL
解释: %组名 被管理主机的地址 =(可使用的身份)授权命令(绝对路径

  • 举个栗子:user1 ALL=/usr/bin/vim (user1用户切换到root用户使用vim命令,这个操作不安全)
    解释这个栗子: user1用户本身是可以使用vim命令的,是局限在自己的权限范围之内的,如果用sudo的方式赋予给user1,在执行这条命令的时候,它的身份会切换成root,这条命令一旦生效,user1用户不光能管理他范围之内的文件,所有root能管理的文件,他也能管理,比如/etc/passwd、/etc/shadow、这些权限会对他失去作用。 所以千万不要给普通用户赋予。
  • 注意事项: 被管理主机的地址,也就是访问主机的地址。 如果只有一台计算机,这个地方写ALL或者写本机Linux的ip都代表允许某一个用户来我当前计算机上,执行哪些命令,写网段有什么作用? 如果写本机,那就允许用户访问本机,如果网段,只在Linux当中的NIS符这样的服务中才能用,如果把整个网段的用户名和密码,集中在一台服务器上,这个样才起网段才有意义的。如果写的网段,需要搭配义字符、域库管理这样的服务才能实现。
  • (ALL) 是把用户转换成什么身份(可以写也可以不写,默认的话把普通用户当成root来对待), 执行任何命令的时候,普通用户user1在执行任何命令的时候,被访问的主机(也就是Linux服务器),会认为user1的身份是任何身份,把普通用户当成了任何临时身份,这里主要指的是管理员root来对待,
  • 开始实验:
    (1)执行visudo命令
    在这里插入图片描述

4.授权user1用户可以重启服务器

  • 命令: visudo
  • 举个栗子: user1 ALL=/sbin/shutdown -r now(跟上面举得user1 ALL=usr/bin/vim这个栗子类似)
  • 注意事项: 如果只是赋予user1用户shutdown命令,那么user1用户可以使用shutdown的任何选项,比如关机也可以,这样是不安全的,服务器一旦关机,必须通过人为的方式进行开机。 所以把命令写的精确一点,只给用户shutdown的重启的命令,还样比较安全

5.普通用户执行sudo赋予的命令

(1)命令: su - user1
    说明: 切换到user1用户
(2)命令: sudo -l
    说明: 在user1用户中查看可用的sudo命令
(3)命令:sudo /sbin/shutdown -r now
    说明: user1用户执行执行sudo赋予的命令

6.实验操作

开始实验:

  • (1)实验内容: 在root用户中执行visudo加入sudo /sbin/shutdown -r now,然后再切换成普通用户user1执行sudo /sbin/shutdown -r now,此时普通用户user1可以执行重启命令了。
    实验过程:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • (2)实验内容: 首先root用户再/tmp目录下创建一个文件dong,给这个文件赋予的权限是600,说明其他用户是对这个文件是没有rwx。然后在root用户中执行visudo加入user1 192.168.150.128=/usr/bin/vim,这个ip地址也可以换成ALL的。最后再切换成普通用户user1执行sudo /usr/bin/vim dong。此时普通用户user1可以对这个文件进行rwx权限了。因为这执行这个sudo /usr/bin/vim dong命令的时候,user1已经切换到root来执行vim这个命令了。
    实验过程:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    小提示: 如果没有给user1赋予sudo权限,user1使用vi时打不开dong这个文件的,因为dong这个文件的权限是600,对其他人根本就没有rwx权限。因为这执行这个sudo /usr/bin/vim dong命令的时候,user1已经切换到root来执行vim这个命令了。

猜你喜欢

转载自blog.csdn.net/weixin_46818279/article/details/106949778