Linux用户和权限之一

简介: Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

01

用户说明


Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。

每个用户账号都拥有一个唯一的用户名和各自的口令。用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。

Linux用户分总共分为三种,分别如下:

root用户  (ID 0)

系统用户  (ID 1-499)

普通用户  (ID 500以上)

每个用户拥有一个UserID,操作系统实际读取的是UID,而非用户名;每个用户属于一个主组,属于一个或多个附属组,一个用户最多有31个附属组;每个组拥有一个GroupID;每个进程以一个用户身份运行,该用户可对进程拥有资源控制权限;每个可登录用户拥有一个指定的Shell环境,/sbin/nologin和/bin/false不能登录。

相关配置文件如下:

/etc/passwd     保存用户信息

/etc/shadow     保存用户密码(以加密形式保存)

/etc/group      保存组信息

/etc/login.defs   用户属性限制,密码过期时间,密码最大长度等限制

/etc/default/useradd 显示或更改默认的useradd配置文件


02

用户管理


用户管理(useradd、userdel、passwd、usermod)

useradd

添加用户账号就是在系统中创建一个新账号,然后为新账号分配用户号、用户组、主目录和登录Shell等资源。刚添加的账号是被锁定的,无法使用。

用法:useradd 选项 用户名

查询帮助

useradd --help

增加一个用户张三(zhangsan)



$ useradd -D   # 增加用户的默认配置GROUP=100HOME=/homeINACTIVE=-1EXPIRE=SHELL=/bin/bashSKEL=/etc/skelCREATE_MAIL_SPOOL=yes
root@yaoyuan ~# useradd zhangsanroot@yaoyuan ~# echo yaoyuan |passwd --stdin zhangsanChanging password for user zhangsan.passwd: all authentication tokens updated successfully.root@yaoyuan ~# id zhangsanuid=54322(zhangsan) gid=54331(zhangsan) groups=54331(zhangsan)root@yaoyuan ~# su - zhangsan

passwd

指定和修改用户口令的Shell命令是passwd。超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。命令的格式为:

passwd 选项 用户名

passwd --help

可使用的选项:

  • -l 锁定口令,即禁用账号。
  • -u 口令解锁。
  • -d 使账号无口令。
  • -e 强迫用户下次登录时修改口令。

如果默认用户名,则修改当前用户的口令。

usermod

修改用户配置,-g 是主组,-G是辅助组。




zhangsan@yaoyuan ~$ ll /media/total 4drwxrwx---. 1 root vboxsf 4096 Mar 18 16:00 sf_oraclezhangsan@yaoyuan ~$ ll /media/sf_oracle/ls: cannot open directory /media/sf_oracle/: Permission denied
root@yaoyuan ~# usermod -a -G  vboxsf zhangsan
zhangsan@yaoyuan ~$ exitexitoracle@yaoyuan ~$ su zhangsanzhangsan@yaoyuan oracle$ ll /media/sf_oracle/

-a是增加,如果没有-a,原来的辅助组都删除了。

增加oracle用户的vboxusers组



# usermod -a -G  vboxusers oracle# id oracleuid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),982(vboxusers)[root@databace linux]# id oracleuid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54323(oper),54324(backupdba),54325(dgdba),54326(kmdba),54330(racdba),54327(asmdba),982(vboxusers)

         

这种增加辅助组的方法在给用户赋权中很好用,例如oracle用户的组是oinstall,而yaoyuan用户不属于这个组就不能进入/home/oracle目录,但给yaoyuan用户增加一个辅助组就可以了:



$ ll -ld /home/oracledrwxrwx---. 29 oracle oinstall 4096 Jul  7 11:02 /home/oracle$ ll /home/oraclels: cannot open directory /home/oracle: Permission denied$ sudo usermod -a -G oinstall yaoyuan

重新登录oracle后就可以了。一个用户最多有31个附属组

userdel

userdel删除用户

组管理

通过命令groupadd、groupdel、groupmod来对组进行管理。

相关文章
|
1月前
|
Linux Shell
Linux系统文件默认权限
Linux系统文件默认权限
|
13天前
|
Linux 数据安全/隐私保护
linux特殊权限!!
本文介绍了Linux系统中的特殊权限,包括suid、sgid和sbit。suid使普通用户在执行特定命令时获得root权限;sgid使用户在创建文件时继承目录的用户组权限;sbit确保用户只能删除自己在共享目录中创建的文件。此外,文章还讲解了chattr和lsattr命令,用于更改和查看文件的扩展属性,以及umask的概念和计算方法,帮助理解文件和目录的默认权限。
30 1
linux特殊权限!!
|
1月前
|
运维 监控 安全
Linux_权限理解(详细PLUS)
【10月更文挑战第3天】本文介绍了Linux系统中的权限管理基础,包括文件系统对象与权限关联、权限的继承性、字符与数字表示法的解读,以及用户、组与权限的动态交互。详细解析了`chmod`命令的高级用法和权限修改的风险,探讨了SUID、SGID和Sticky Bit等特殊权限的作用机制,并提出了基于角色的权限分配和定期权限审计的最佳实践。
59 11
|
1月前
|
Linux 应用服务中间件 nginx
Linux下权限设置之suid、sgid、sticky
Linux下权限设置之suid、sgid、sticky
|
1月前
|
Linux 数据安全/隐私保护 Windows
Linux_权限理解(详细PLUS
Linux_权限理解(详细PLUS
|
1月前
|
网络协议 Linux 网络安全
【Linux】用户和权限及实用操作------迅速了解用户和权限及其实用操作
【Linux】用户和权限及实用操作------迅速了解用户和权限及其实用操作
|
1月前
|
Linux Go 数据安全/隐私保护
Linux入门2——初识Linux权限
Linux入门2——初识Linux权限
26 0
|
3月前
|
存储 安全 Linux
Linux权限之谜:一步步教你如何解锁sudo权限并窥视/etc/shadow的神秘面纱!
【8月更文挑战第22天】在Linux中,`sudo`命令让授权用户能以其他用户(通常是root)身份运行命令。关键的安全文件`/etc/shadow`存储用户密码哈希,仅root可读。要使用`sudo`,需确保账户被列入`sudoers`文件中。系统管理员可通过`visudo`编辑此文件来赋予用户权限,例如添加`username ALL=(ALL) NOPASSWD: ALL`行。获得`sudo`权限后,可运行`sudo cat /etc/shadow`查看文件内容,但需谨慎操作以免影响系统安全。遵循最小权限原则,确保安全使用这些强大工具。
87 2
|
3月前
|
Linux 数据安全/隐私保护
在Linux中,什么是文件权限?什么是rwx权限模型?
在Linux中,什么是文件权限?什么是rwx权限模型?
|
3月前
|
Unix Linux Shell
Linux 权限简介
Linux 权限简介
44 1