这篇问文章主要讲述了用户管理和sudo命令以及sudo命令如何配置。
用户管理
Linux系统是一个多任务的分时操作系统,任何一个要使用系统资源的用户,都必须要想管理员申请一个账号,然后用这个账号的身份进入系统。
用户的账号主要有两个用途:
(1)帮助管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问。
(2)另一方面也可以帮助用户组织文件,并为用户提供安全性保护。
每个用户账户都拥有一个唯一的用户名和密码。用户在登录时输入对应的用户名和密码就可以进入系统和自己的主目录。
实现用户账户的管理,主要是完成以下几个方面:
(1)用户账户的添加、删除与修改。
(2)用户密码的管理。
(3)用户组的管理。
一、Linux系统用户账户的管理
(1)添加用户
用户账户的管理工作主要涉及到用户的添加、修改和删除。
添加用户用户就是在系统中创建一个新账号,然后为新账号分配用户名、用户组、主目录、和登录Shell等资源。刚添加的账号是被锁定的,无法使用。
useradd命令
useradd 选项 用户名
参数说明:
(1)-c:comment,指定一段注释性的描述。
(2)-d:指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
(3)-g:用户组,指定用户所属的用户组。
(4)-G:附加组,指定用户所属的附加组。
(5)-s:Shell文件,指定用户登录的Shell。
(6)-u:用户号,指定用户的用户号,如果同时也有-o选项,则可以重复使用其他用户的标识号。
(7)用户名:指定新账户的登录名。
创建一个用户名为LinuxTest的用户。
useradd -s /bin/bash -g kk -d /home/LinuxTest -m LinuxTest
这个命令创建了一个名为LinuxTest的用户,登录的Shell为/bin/bash,用户组为kk,没有附加组,用户的家目录为/home/LinuxTest。
我们可以看到系统以将LinuxTest的家目录创建完成了。
虽然现在LiunxTest是已经创建出来了,但是还不能使用,这是因为登录系统必须要有用户名和登录的密码,我们现在只是将用户创建了出来,还没有设置LiunxTest用户的密码。下面我们设置LinuxTest的密码。
*useradd和adduser的区别:
创建用户还可以使用adduser函数,再参数一致的情况下,adduser和useradd没有什么区别,但再不加参数的情况下,useradd会直接创建出一个“三无用户”即无家目录、无密码、无系统shell。而adduser更像时一种交互式的创建用户,会给用户提示。
(1)adduser会提示设置密码
(2)adduser会创建用户目录
(3)adduser会询问全名
二、密码管理
设置和修改用户密码的命令为passwd,root用户可以为自己和其他用户设置口令,普通用户只能用它修改自己的口令。命令的格式为:
passwd 选项 用户名
参数说明:
(1)-l:锁定密码,即禁用账号。
(2)-u:口令解锁。
(3)-d:使账号无口令。
(4)-f:强迫用户下次登录时修改口令。
用户名默认为当前用户。
设置密码(重新开一个shell)
passwd LinuxTest
密码再输入时是看不见的(不能太简单)。
设置完成密码后我们就可以登录LinuxTest这个用户了。
三、切换用户
点击switch User可以选择登录用户。
进入后由于是新用户,所以需要一些设置,就是安装系统时一样。
我们再shell中使用su命令也可以切换用户。
su 用户名
su root 或 su //切换到root用户
四、修改账号
修改账户就是根据实际情况更改用户的有关属性,例如用户名等信息。
usermod 选项 用户名
用法和useradd差不多时一样的。
五、删除账户
userdel 参数 用户名
参数说明:
(1)-r:它的作用是把用户主目录一起删除。
需要注意的是如果之前系统登录过这个用户之后,通过root用户删除时,是不好删除的。因为会有很多进程占用它,我们可以在下次登录时,登录到其他用户将其删除。
sudo命令
sudo命令是Liunx下常用的允许普通用户使用root权限的工具,允许系统管理员让普通执行一些或者全部root命令,且不需要root密码。这样不仅减少了root用户的登录和管理时间,同样也提高了安全性。
sudo命令的特点:
(1)sudo能够限制用户只在某台主机山允许某些命令。
(2)sudo提供了丰富的日志,详细的记录了每个用户干了什么,他能够将日志传到中心主机或日志服务器。
(3)sudo使用时间戳文件---日志来执行类似的“检票”系统。
(4)sudo的配置文件是/etc/sudoers,属性必须为440,它允许系统管理员计中的管理用户使用权限和使用主机。
一般的用户是不能使用sudo命令的,必许修改sudo的配置文件,即/etc/sudoers,才能使用。
系统会提示权限不够。
下面我们来看如何修改sudoers文件。
(1)使用vim打开/etc/sudoers文件。
我们发现它的权限为440,所以我们必须要使用root权限。
将其权限修改为640。
打开/etc/sudoers文件
在root ALL=(ALL) ALL这句话的下面,加上下面的4句中的任意一句。
用户名 ALL=(ALL) ALL //允许用户执行sudo命令(需要密码)
%用户名 ALL=(ALL) ALL //允许与该用户同组的用户执行sudo命令(需要密码)
用户名 ALL=(ALL) NOPASSWD:ALL //允许用户执行sudo命令(不需要密码)
%用户名 ALL=(ALL) NOPASSWD:ALL //允许与该用户同组的用户执行sudo命令(不需要密码)
保存退出后LiunxTest用户就可以使用sudo命令了,我们使用sudo命令将/etc/sudoers的权限修改为440。
注意:这里要输入的密码是账户的密码,不是root密码。