1.su     su username   可以看出在root 下  su username  登录到普通用户下不需要密码, 普通用户登录到普通用户下需要输入密码,普通用户直接 su ,则登录到root下,需要输入root用户密码。

2. su - username    - 会初始化当前用户的环境,回到家目录下。

由图可知,当不加 -  时登录到rich用户下是目录还在root用户目录下,无权限访问, 加 - 后,直接回到rich家目录下。

3. - c 的,既可以指定用户省份去执行命令,指定rich 创建一个文件。

[root@localhost ~]# su - -c "touch /tmp/ 22.txt" rich
[root@localhost ~]# ls -lt /tmp/ |head
总用量 612
-rw-r--r--. 1 root root 0 12月 27 22:03 11.txt
drwx------. 3 root root 17 12月 27 21:19 systemd-private-7657ebd8912b4df088cc62c55f823b48-colord.service-vxpPTA

4.sudo   使普通用户执行root 用户的部分或者全部命令,需要root 提前设定权限。可使用visudo 来编辑。

将 win 用户加入,第三个ALL 这里是用来设定指定的用户可以使用那些命令,ALL 表示拥有和root用户一样的权利。在此处win 拥有root的所有权限。

第一次 ls 时需要输入win 用户自己的密码, 第二次cp 时不用输入密码。

5.免密码使用sudo, 在第三个ALL 处加入NOPASSWD: ,然后就可以看到rich用户第一次使用sudo命令时不用再输入密码。

6. 给命令取别名,类似于将命令放在一个列表或者集合里。比较简洁方便,效果是一样的。

7.也可以将拥有相同权限的用户放在一个组里。将用户加入到wheel这个组中。添加用户到wheel中,使用 usermod -g  wheel username

8.禁止root用户远程登录,只允许普通用户远程登录。用 vim 打开/etc/ssh/sshd_config,

如图中框起来的地方,去掉#, yes 改为 no。需要 systemctl restart sshd.serice 重启服务。

我们发现远程root 无法登录了。

  

9.普通用户登录,输入用户名,输入密码,登录成功。

10.在禁止root用户远程登录后,想要使用root权限。可以这样操作,设置user别名,加入用户。

 

由上图可知,当在visudo中设置以后,在禁止root用户远程登录的情况下,也可以通过这种转换方式登录到root。

 

posted on 2017-12-28 00:10  天梭  阅读(92)  评论(0编辑  收藏  举报