17用户身份管理

摘要:
使用此命令创建用户帐户时。

一. 用户身份概述

设计Linux系统的初衷之一就是为了满足多个用户同事工作的需求,因此LInux系统必须具备很好的安全性。

1.用户ID——UID

在RHEL7系统中,用户身份有如下这些:

管理员UID为0:系统的管理员用户。
系统用户UID为1——999: Linux系统为了避免因某个服务程序出现漏洞而被黑客提权至整台服务器,默认服务程序会有独立的系统用户负责运行,进而有效控制被破坏范围。
普通用户UID从1000开始:由管理员创建的用于日常工作的用户。

需要注意的是,UID是不能冲突的,而且管理员创建普通用户的UID默认是从1000开始的(即使前面有闲置的号码)。

2.组ID——GID

为了方便管理属于同一组的用户,Linux系统中还引入了用户组的概念。通过使用用户组号码(GID,Group IDentification),我们可以把多个用户加入到同一组中,从而方便为组中的用户统一规划权限或指定任务。

另外,在Linux系统中创建每个用户时,将自动创建一个与其同名的基本用户组,而且这个基本用户组只有该用户一个人。如果该用户以后被归纳人其他用户组,则这个其他用户组称为扩展用户组。一个用户只有一个基本用户组,但是可以有多个扩展用户组,从而满足日常的工作需要。

二. 常用命令

1. useradd命令

useadd 命令用于创建新的用户,格式为“useradd [选项] 用户名”。

使用该命令创建用户账号时,默认的用户家目录会被放在/home目录中;默认的Shell解释器为/bin/bash,而且默认会创建一个与该用户名同名的基本用户组。
-d			指定用户的家目录(默认为/home/username)
-e			账户的到期时间,格式为 YYYY-MM-DD
-u			指定该用户的默认UID
-g			指定一个初始的用户基本组(必须已存在)
-G			指定一个或多个扩展用户组
-N			不创建与用户同名的基本用户组
-s			指定该用户的默认Shell解释器
[root@rockman home]# ls
hk  workdir
[root@rockman home]# useradd bob
[root@rockman home]# ls
bob  hk  workdir
2. groupadd 命令

garoupadd命令用于创建用户组,格式为“groupadd [选项] 群组名”。

[root@rockman home]# groupadd ronny
3. usermod 命令

usermod 命令用户修改用户的属性,格式为“usermod [选项] 用户名”。

Linux系统中一切都是文件,因此在系统中创建用户也就是修改配置文件的过程。用户的信息保存在/etc/passwd文件中,可以直接用文本编辑器修改其中的用户参数项目,也可以用usermod命令修改已经创建的用户信息。

4. passwd 命令

passwd命令用于修改用户密码、过期时间、认证信息等,格式为“passwd [选项][用户名]”。

普通用户只能使用passwd命令修改自身的系统密码,而root管理员则有权修改其他所有人的密码。更酷的是,root管理员在Linux系统中修改自己或他人的密码时不需要验证旧密码,这一点特别方便。

既然root管理员可以修改其他用户的密码,就表示完全拥有该用户的管理权限。passwd命令中可用的参数以及作用如下。

-l			锁定用户,禁止其登录
-u			解除锁定,允许用户登录
--stdin		允许通过标准输入修改用户密码,如echo"NewPassWord" | passwd --stdin 	Username
-d			试该用户可以空密码登录系统
-e			强制用户在下次登录时修改密码
-S			显示用户的密码是否被锁定,以及密码所采用的加密算法名称
#修改当前用户密码(root)
[root@rockman /]# passwd
Changing password for user root.
New password:
BAD PASSWORD: The password is a palindrome
Retype new password:
passwd: all authentication tokens updated successfully.
#修改bob用户密码
[root@rockman /]# passwd bob
Changing password for user bob.
New password:
BAD PASSWORD: The password is a palindrome
Retype new password:
passwd: all authentication tokens updated successfully.
#通过标准输入修改用户密码
[root@rockman /]# echo "123456" | passwd --stdin bob
Changing password for user bob.
passwd: all authentication tokens updated successfully.
5. userdel 命令

userdel命令用于删除用户,格式为“userdel [选项] 用户名”。

[root@rockman /]# id bob
uid=1001(bob) gid=1001(bob) groups=1001(bob)
#-f 强制删除用户   -r  同时删除用户及用户家目录
[root@rockman /]# userdel -rf bob
[root@rockman /]# id bob
id: bob: no such user
#bob文件夹已经被删除
[root@rockman home]# ls
hk  workdir

免责声明:文章转载自《17用户身份管理》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Java 之 Scanner 类Linux--查询文件的第几行到第几行命令下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

一个简单的项目介绍流程

以一个简单的项目进行介绍说明: • 最近测试的Tpshop项目是一个B/S架构的Web项目。Tpshop是一个 B2C的电商平台系统,运营模式类似于天猫,京东这些B2C类型网站。 • 项目系统由前台和后台两部分构成。前台面向购物用户,包括会员、商品展示、购物车、订单、支付、用户中心等系统模块。后台面向经营商家,包括商品管理,会员管理,订单处理等系统模块。...

shell 脚本之set 命令(转)

服务器的开发和管理离不开 Bash 脚本,掌握它需要学习大量的细节。 set命令是 Bash 脚本的重要环节,却常常被忽视,导致脚本的安全性和可维护性出问题。本文介绍它的基本用法,让你可以更安心地使用 Bash 脚本。 一、简介 我们知道,Bash 执行脚本的时候,会创建一个新的 Shell。 $ bash script.sh 上面代码中,scrip...

Angular安装及创建第一个项目

Angular简介 AngularJS 诞生于2009年,由Misko Hevery 等人创建,后为Google所收购。是一款优秀的前端JS框架,已经被用于Google的多款产品当中。AngularJS有着诸多特性,最为核心的是:MVW(Model-View-Whatever)、模块化、自动化双向数据绑定、语义化标签、依赖注入等等。   AngularJ...

自己用树莓派做了一个电视盒子,还可以看优酷和cctv

我刚接触树莓派时间不久,安装过raspberry(树莓派官方系统),ubuntu mate,openelec等系统,openelec是一个电视盒子系统,但是我的用的电视机是一个老式的,老是出现闪屏的问题,所以想考虑换个系统,抱着试试看的态度,我选择了kodi系统。  有的电视机,特别是老式电视机,插上之后,可能不显示,我的解决方案 首先下载kodi(网站是...

微信小程序最新获取用户头像昵称的方法

官方提供的最新方法Open-data标签,使用这个标签可以不用用户授权直接获得头像和昵称 微信小程序获取用户信息的两种方法wx.getUserInfo&open-data https://blog.csdn.net/lucky_Zeng/article/details/80066479...

Java Swing 使用 java.awt 包中的 Desktop 类

介绍: 这个 Desktop 类是用于与各种桌面功能进行交互的。比如用一个 URL 来调用系统默认浏览器打开,具体看文档吧。 官方API 文档: https://docs.oracle.com/en/java/javase/14/docs/api/java.desktop/java/awt/Desktop.html 问:怎么用呢? 答: 下面是一个调用系统...