Linux下进行用户的切换与创建以及细微设置
目录
为什么要创建普通用户
创建新用户
Step1:正确登入自己的云服务器
add指令添加普通用户
passwd设置登录密码
查看所有用户
ls/home
cat/etc/passwd
cat /etc/passwd |cut -d: -f 1-3
lastlog
su -l切换用户
查看当前为何用户
删除用户
编辑
sudo对于新创建用户不可使用的问题
为什么不能使用
解决方案
为什么要创建普通用户
在Linux下,从使用上来说,我们一般所有的操作都是在普通用户下进行执行的,并且学习都是使用普通用户来学习的,即便是工作以后也是用普通用户,那么对于如果创建普通用户就显得及其重要。
但是从主要原因上来讲还是因为此:
-
安全性:普通用户权限限制了对系统敏感区域和文件的访问,这样可以防止意外的系统破坏或恶意软件的影响。如果普通用户的操作出现错误,影响相对较小。
-
防止误操作:以普通用户身份操作可以避免误删或修改系统关键文件,根用户拥有完全的权限,容易导致严重的后果。
-
最小权限原则:遵循最小权限原则(Principle of Least Privilege)意味着用户应仅获得完成其任务所需的最低权限,从而减少潜在的安全风险。
-
审计和追踪:普通用户的行为更容易进行审计,可以清晰记录是谁执行了哪些操作。根用户的所有操作都通过同一个账户执行,难以追踪。
-
应用隔离:许多应用程序和服务运行在普通用户环境中,限制它们对系统的潜在影响。即使应用程序被攻陷,攻击者也无法获得更高的权限。
总结来说,使用普通用户可以提高系统的安全性和稳定性,避免潜在风险。
那么接下来就介绍怎么创建新的普通用户。
创建新用户
Step1:正确登入自己的云服务器
我这里用的是阿里云的centos7
大致指令为ssh root@+(自己服务器的公网ip)
然后再输入密码即可。
然后大致成功就是这样
add指令添加普通用户
接下来就是通过指令添加普通用户了,指令就为:
adduser +要创建的用户名
passwd设置登录密码
passwd+刚创建的用户名
然后连续输入两次设置的同样的密码,当然设置的密码不要太简单,要不然会报错
这是因为如果密码设置的太简单就会容易遭到攻击,这就使得别人可以入侵的服务器而干一些违法或者不好的事,所以密码要设置复杂一些,然后记下来
设置好密码后,这时候就已经创建成功了一个普通用户,那么怎么查看当前是否创建成功呢?
查看所有用户
ls/home
正常登陆的用户,在/home下都有家目录,所以可以直接看这个目录下的文件
输入:ls /home
这里的lisi就是我们刚刚创建的新的普通用户
cat/etc/passwd
直接查看/etc/passwd 文件后面第二个冒号的值大于等于1000时,这个就是一个用户
这里用三个不同颜色框起来的就是三个不同的普通用户
cat /etc/passwd |cut -d: -f 1-3
输入:cat /etc/passwd |cut -d: -f 1-3 ,只筛选出了有用的信息,方便查看,【推荐使用这个命令】
lastlog
输入:lastlog ,这个是系统的所有用户,绝大部分是系统内置的
su -l切换用户
那么接下来,我们已经会如何创建用户了,那么下一步就是要如何切换用户了
一般来说是使用su -l+用户名 来切换的
查看当前为何用户
那么如何判断当前已经切换过后的用户为lisi呢?
那么就需要使用whoami指令了
看上图,确实是从root却换到了lisi用户。
那么如何从普通切换到超级用户root呢?
同样还可以使用su -l +root,但是一般来说大多数是使用su - 的。因为大的少嘛。
删除用户
从下图的操作可以发现userdel确实可以删除用户,但是删除后其目录还在。
就看这里,我们第二次执行userdel lisi,他报错lisi已经不存在,那么也就证明lisi确实被删除了
但是目录还在就是因为他的语法设置就是这样。
userdel linuxde //删除用户linuxde,但不删除其家目录及文件;
userdel -r linuxde //删除用户linuxde,其家目录及文件一并删除;
别的选项还有
-f:强制删除用户,即使用户当前已登录;
-r:删除用户的同时,删除与用户相关的所有文件。
请不要轻易用-r选项;他会删除用户的同时删除用户所有的文件和目录,切记如果用户目录下有重要的文件,在删除前请备份。
sudo对于新创建用户不可使用的问题
然而对于新创建的普通用户,一般是对于系统来说是不信任的,那么对于这个新创建的用户,系统是不允许再此普通用户的身份下执行root权限的操作的,那么我们如何将其这个新创建的普通用户设置为系统所信任的用户呢?
上面简单的解释了其操作系统不信任,所以不能用,那么从根本上呢?
为什么不能使用
sudo
指令能够使某一条指令拥有root
权限,即以root
权限去执行
但是,如果是新创建的普通账户,一般来说一开始是不能执行sudo
命令的
因这一用户并不在sudoers这个文件中,因此没有使用sudo的权利
suduers文件位于路径/etc/sudoers
sudoers这个文件为root账户所属。这个文件相当于一个白名单,在这个文件里的用户才可以使用sudo命令,如果不在sudoers文件里,就无法使用sudo提权,来暂时获得root的权利
如果要将普通用户添加到sudoers文件中,那就需要进入root账户进行操作
解决方案
首先,进入root
账户:
上面已经说怎么进入root了,这里就不多说了
接着,进入目录/etc
:
然后,用vim打开文件sudoers
:
命令:
vim sudoers
可以看到如下界面:
接着,输入字符i
,进入插入模式:
然后,根据上面红褐色框所框出来部分的格式,将要添加的普通用户写入即可:
这里我上面已经添加了信任用户haha,你也可以按照上面一样添加上自己要信任的用户。
最后,先按Esc
键,进入命令模式,再按冒号:
,即shift + ;
进入底行模式,在底行模式下输入wq!
强制保存退出,然后Enter
注意:一定要是英文状态下的符号
下面就可以自己验证是否上述操作正确了,sudo是否可以使用。