码迷,mamicode.com
首页 > 其他好文 > 详细

6.13

时间:2018-06-12 20:58:59      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:安全性   su -   pass   使用命令   自动   方式   环境   服务   root用户   

1、su命令

  su:切换用户,可以使用“su - username”切换到指定用户下:

技术分享图片

  使用“-”是为了彻底切换到指定用户的环境下,如果不加该参数,切换用户后还在原用户家目录下:

技术分享图片

  使用-c选项可以在不切换用户的情况下,使用指定用户的身份执行命令:

技术分享图片

  在普通用户下也可以执行“su - username”切换到其他用户,当目标用户的家目录不存在时,会显示如下情况:

技术分享图片

  可以通过给目标用户创建家目录,将家目录的所有者和所属组修改为指定用户以及属组:

技术分享图片

  然后将/etc/skel/下的.bash文件复制到创建的家目录下,并更改所有者和所属组:

技术分享图片

  然后再切换到目标用户,此时显示正常:

技术分享图片

  普通用户可以执行“su -”切换到root用户:

技术分享图片

2、sudo命令

  sudo:让普通用户临时以指定用户的身份来执行命令,通常情况下是普通用户执行root权限的命令,避免将root用户给普通用户使用。

  修改sudu命令时,建议采用visudo,因为使用这种方式打开时,可以自动检测输入的语法是否正确,打开文件后可以看到下图,表示允许root用户中所有的地方执行所有的命令:

技术分享图片

  可以模仿这条命令的方式,增加如下内容,user1   ALL(user2)   ALL,表示user1将被赋予user2的权限,后面的ALL指的是被授权的命令,也可以修改为具体的命令,此处的命令需要些绝对路径:

技术分享图片

  默认情况下普通用户无法访问/root/目录,但是在编辑过sudo后,执行sudo命令(第一次使用时需要输入用户密码),就可以查看/root/用户:

技术分享图片

  在使用visudo编辑sudo时,增加"NOPASSWD:",可以让用户在使用sudo命令时不再输入密码:

技术分享图片

  User_Alias:可以将多个真实用户放在一个虚拟用户;

  Cmnd_Alias:将多个命令放在一个命令别名中。

技术分享图片

  使用命令别名后,在编辑sudo文件时就可以之间使用上图中定义的命令别名:

技术分享图片

  使用visudo编辑sudo文件时,也可以针对用户组做设置

技术分享图片

 3、限制root用户远程登录

  为了保障系统的安全性,需要限制root用户通过远程登录,只能通过登录普通用户,然后由普通用户su切换到root用户,在不知道root用户的密码时,需要使用sudo su -root切换到root用户。

  使用visudo编辑sudo文件,增加User_Alias,将需要切换到root用户的普通用户添加进虚拟用户中:

技术分享图片

  然后为该用户组赋予执行root用户命令的权限:

技术分享图片

  此时普通用户使用“sudo su -”就可以切换到root用户:

技术分享图片

  限制root用户远程登录:

  编辑/etc/ssh/sshd_config,通过“/Root”查找到PermitRootLogin这一行,将yes修改为no:

技术分享图片

  然后执行systemctl restart sshd.service重启ssh服务,再进行登录时无法登录:

技术分享图片

 

6.13

标签:安全性   su -   pass   使用命令   自动   方式   环境   服务   root用户   

原文地址:https://www.cnblogs.com/w494129131/p/9174880.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!