su命令、sudo命令、限制root远程登录

一:su命令

● su 的用法:
  su [OPTION选项参数] [用户]
  -, -l, ——login 登录并改变到所切换的用户环境;
  -c, ——commmand=COMMAND 执行一个命令,然后退出所切换到的用户环境;
语法:su username,临时切换到username用户
或者su - username,切换到username用户,并初始化各种环境变量
如果某个用户没有创建家目录,则需创建家目录,并将相关配置文件拷贝过来。

二:sudo命令

● sudo(有时间限制)
临时执行root命令,需要输入用户密码,并且需要root预先设定。我们可以使用visudo命令来编辑配置文件/etc/sudoers
安装visudo命令:yum install -y sudo
默认root能够sudo,因为文件中有一行“root ALL=(ALL) ALL”,在该行下加入“test ALL=(ALL)ALL”,就可以让test用户有了sudo权利。
该配置分为三个部分

  1. 最左侧是用户名,指定哪个用户拥有sudo权利。
  2. 左边的ALL其实是一个用户名,即test可以切换到哪个用户身份,ALL表示所有用户。小括号里面指定主机名或者主机IP,即test用户从哪个ip登陆来的,ALL为所有。
  3. 最后的ALL,用来指定test用户可以使用的命令为哪些。多个命令用逗号隔开。
    该配置文件不用重启即可生效。

批量设置用户:
将配置文件中“# %wheel ALL=(ALL) ALL”前面的#去掉,让其生效。
表示wheel组中的所有用户都有了sudo权利,可以把需要的用户添加进来即可。

sudo -i: 为了频繁的执行某些只有超级用户才能执行的权限,而不用每次输入密码,可以使用该命令。提示输入密码时该密码为当前账户的密码。没有时间限制。执行该命令后提示符变为“#”而不是“$”。想退回普通账户时可以执行“exit”或“logout” 。
其实,还有几个类似的用法:
sudo /bin/bash : 这个命令也会切换到root的bash下,但不能完全拥有root的所有环境变量,比如PATH,可以拥有root用户的权限。这个命令和 sudo -s 是等同的。
sudo -s : 如上
sudo su : 这个命令,也是登录到了root,但是并没有切换root的环境变量,比如PATH。
sudo su - : 这个命令,纯粹的切换到root环境下,可以这样理解,先是切换到了root身份,然后又以root身份执行了 su - ,这个时候跟使用root登录没有什么区别。这个结果貌似跟sudo -i 的效果是一样的,但是也有不同,sudo 只是临时拥有了root的权限,而su则是使用root账号登录了linux系统。

所以,我们再来总结一下:
sudo su - 约等于 sudo -i
sudo -s 完全等于 sudo /bin/bash 约等于 sudo su
sudo 终究被一个"临时权限的帽子"扣住,不能等价于纯粹的登录到系统里。

三:限制root远程登陆

vi /etc/ssh/sshd_config
按Root关键字搜索
将PermitRootLogin yes 改为no
这样就禁止root直接登陆。
然后再用普通用户登陆服务器,再su或者sudo到root用户下。

原文地址:http://blog.51cto.com/10941098/2129090

时间: 2024-07-31 13:32:12

su命令、sudo命令、限制root远程登录的相关文章

su、sudo、限制root远程登录

1.su命令 su用来切换用户. su -  用户    是完全切换,就是变成另一个用户. su 用户       是不完全切换,变量还是上一个用户. 其实,完全切换,就是在切换时加载用户的环境变量.bash_history,.bash_logout,.bash_profile. 一个没有家目录的用户,如何给这个没有家目录的用户配置变量. root用户操作的以下步骤 1.useradd -M can1 创建一个没家目录的用户. 2.mkdir /home/can1 创建家目录 3.cp -r /

su、sudo,限制root远程登录

su:切换用户的命令,在root用户下,可以用这个命令来切换.[[email protected] ~]# su - aming上一次登录:日 1月 21 20:36:34 CST 2018pts/0 上[[email protected] ~]$我们可以看到,用户已经从root转换到了aming.我们也可以输入命令id来查看它是谁[[email protected] ~]$ iduid=1001(aming) gid=1001(aming) 组=1001(aming) 环境=unconfine

Linux -su、sudo、限制root远程登录

su:2.1.su - root 完整切换到root2.su oracle 部分切换到oracle3.以某人身份去执行命令,而不切换到该用户下su - -c "touch /tmp/1.txt" user1 以user1的身份在tmp目录下创建一个1.txt文件.sudo:1.普通用户临时拥有其他用户的权限,去执行命令,一般用于,普通用户授权root权限.2.visudo 可查看配置文件,按i,可修改文件允许root在任何地方运行任何命令,user拥有执行所有命令的权限.最后一个ALL

3.7 su命令 3.8 sudo命令 3.9 限制root远程登录

3.7 su命令 3.8 sudo命令 3.9 限制root远程登录 3.7 su命令 su aming su - aming 切换用户的时候要加上 su - 这样才切换的彻底 切换到user5下面 因为之前 user5 的用户被锁定了 在切换到root下 更改下user5 的密码 但是前缀显示 -bash-4.5  是因为user5 用户没有家目录 先查看变user5的 所属主 所属组 退出aming 进入root用户 创建一个 目录 但是这样 前缀还是一样,是因为 /home/user5/

三周第三次课(12月27日) 3.7 su命令 3.8 sudo命令 3.9 限制root远程登录

三周第三次课(12月27日)3.7 su命令3.8 sudo命令3.9 限制root远程登录 su命令: 用户和工作组管理: su命令用于切换当前用户身份到其他用户身份, 变更时须输入所要变更的用户帐号与密码. 语法: su(选项)(参数) 选项: -c<指令>或--command=<指令>:执行完指定的指令后,即恢复原来的身份: -f或--fast:适用于csh与tsch,使shell不用去读取启动文件: -l或--login:改变身份时,也同时变更工作目录,以及HOME,SHE

三周第三次课 3.7 su命令 3.8 sudo命令 3.9 限制root远程登录

3.7 su命令 1.su命令 su命令是用来切换用户的: su命令需要使用- 进行切换,如果不使用- 也可以, 但当前目录是在root下,没有彻底切换 在root下 使用su命令创建文件,以指定用户的身份创建文件 切换后显示-bash-4.2 因为user5的用户的家目录是不存在的,也没有用户的配置文件进行加载 切换至user5后,还是不行,说明没有配置文件 系统的模块目录 !$:表示上一条命令的最后一个参数 3.8 sudo命令 1.sudo命令 给普通用户授权root的身份 sudo的配置

CentOS6.6下启用sudo,禁用root远程登录

CentOS默认不启用sudo,且可以直接用超级管理员身份登录服务器. 1.添加sudo用户 执行visudo命令,找到: 1 root    ALL=(ALL) ALL 在下面增加:(注意,sky9890是Linux新增的一个普通用户) 1 sky9890 ALL=(ALL) ALL #说明在此可以增加用户所有权限,以上增加用户与本实验无关. 2.禁止root用户登录 编辑/etc/ssh/sshd_config,将 1 PermitRootLogin yes 改为 1 PermitRootL

Linux学习笔记(十三) su 、sudo 、限制root远程登陆

一.su切换用户su - username带用户环境切换用户 su - -c "touch /tmp/123.txt" user1 以user1用户创建/tmp/123.txt 文件 如果需要切换到一个没有家目录的用户,会像图中一样报错 这时候首先需要创建家目录,然后将文件夹用户与组修改为目标用户与组 ,再将bash配置信息复制到家目录下, cp /etc/skel/.bash* /home/user4即可登陆 这里最好将家目录下配置文件属性也修改为目标用户的chown -R user

切换用户su命令、授权sudo命令、限制root远程登录

su命令 用来切换用户的 ctrl+d退出来 su - 彻底切换用户,包括自己的配置.环境变量 [[email protected] ~]# whoami root [[email protected] ~]# su - awei 上一次登录:一 5月  7 15:44:46 CST 2018pts/1 上 [[email protected] ~]$ id uid=1000(awei) gid=1000(awei) 组=1000(awei) 环境=unconfined_u:unconfined

linux限制root远程登录、su命令、sudo命令

su命令: 1.su  切换用户命令 例:su - aming 2.whoami  查看当前用户命令 3.pwd   查看当前目录 例:输入su aming也可以切换用户,但是目录不在自己用户目录下,如下: [[email protected] ~]# su aming [[email protected] root]$ pwd /root [[email protected] root]$ ls ls: 无法打开目录.: 权限不够 [[email protected] root]$ exit