用户账号管理基本概念

什么是用户账号管理

     用户账号一般包括普通用户账号、管理账号和系统账号。为了鉴别用户身份以及加强系统安全,系统为每个使用它的人分配了一个账号,这就是普通用户账号。每个人拥有一个独立的普通用户账号,每个账号有不同的用户名和密码。用户可以为自己的文件设置保护,允许或限制别人使用它们。用户账号被用来控制对系统的使用,只有拥有账号的人才被允许使用机器。另外,账号还被用来确认用户,保持系统日志,用发送者的名字标记电子邮件,等等。

Linux系统中的归属关系模式
     账号管理就像是一把锁。劣质的管理就好比上了一把不用钥匙的锁,人人可以窥探你的隐私。对于如何保障个人权益,答案是两方面的,作为普通用户,不要把你的账号和密码告诉别人;作为管理员,要执行严格的账号管理。

Linux下的用户可以分为三类:超级用户、系统用户和普通用户。每个用户都有一个数值,称为UID。
root:超级用户/管理员   uid,gid=0
     可以使用和管理系统中的所有资源
普通用户   uid:500-60000
     许可权限范围内使用系统资源
伪用户系统用户(pseudo user):无shell(uid:1-500)
bin
sys

超级用户
root 用户是超级用户,它具有至高无上的权利,不仅对系统任何文件都有权限,还可以管理系统。
root 用户的 UID 和 GID 都为0。
实际上,普通用户如果其 UID 和 GID 也都为0,它就成了和root 平起平坐的超级用户了。
大多数情况下,这样做并没什么好处,而且还有坏处。但有时在组织中需要多个系统管理员管理同一系统,多个超级用户有利于管理员的责任明确。

修改用户的 uid 和 gid 为 0,但给系统带来安全问题
usermod –u 0 –o zsan -o:强迫修改uid
用以下自动命令检查 passwd 中的超级用户名
/bin/grep ‘0:0′ /etc/passwd|awk ‘BEGIN {FS=”:” } {print $1}’|mail -s “`date +”%D %T”`” root
awk—一个优秀的样式扫描与处理工具
找回 root 口令
用户管理文件
/etc/passwd 口令文件
username:passwd:UID:GID:fullname:home-dir:shell
用户名:加密的口令:用户ID:组ID:用户的全名或描述:登录目录:登录shell

passwd文件各字段说明:
      字   段           说 明
   Account    用户在系统中的名字,它不能包含大写字母
   Password 用户口令,出于安全考虑,基本上不使用该字
                   段保存口令,而用字母 “x” 来填充该字段,真
                   正的密码保存在 shadow 文件
   UID       用户 ID 号,惟一表示某用户的数字
   GID       用户所属的私有组号, 该数字对应group文件中GID
   GECOS    这字段是可选的, 通常用于保存用户命名的信息
   Directory   用户的主目录,用户成功登录后的默认目录
   shell         用户所使用的shell, 如该字段为空则使用“/bin/sh”

/etc/shadow   影子口令文件
shadow 是一个文本文件,在 shadow 文件中,每行定义了一个用户信息,行中各字段各字段用 “:” 隔开。为进一步提高安全性,shadow 文件中保存的是已加密的口令。
username:passwd:last:may:must:warn:expire:reserved

/etc/shadow 文件中的每个记录用 “:” 隔开为9 个域,每个域的含义分别为:
用户登录名
用户加密后的口令,(若为空表示改用户不需口令即可登陆,若为*号,表示帐号被禁止)
从1970年1月1日至口令最近一次被修改的天数
口令在多少天内不能被用户修改
口令在多少天后必须被修改
口令到期前多少天开始给用户发出警告
口令过期多少天后用户帐号被禁止
自1970年1月1日到帐号过期那一天的天数
保留域
pwconv—开启用户的投影密码
      Linux 系统里的用户和群组密码, 分别存放在名称为passwd 和 group 的文件中, 这两个文件位于 /etc 目录下。因系统运作所需, 任何人都得以读取它们,, 造成安全上的破绽。投影密码将文件内的密码改存在/etc 目录下的 shadow 和 gshadow 文件内,只允许系统管理者读取,同时把原密码置换为 “x” 字符,有效的强化了系统的安全性。
pwunconv—关闭用户的投影密码。
      执行 pwunconv 指令可以关闭用户投影密码, 它会把密码从 shadow 文件内,重回存到 passwd 文件里。

用户管理器允许查看、修改、添加和删除本地用户和组群。
要使用用户管理器,必须运行X窗口系统,具备 root 权限,并且安装了redhat-config-users RPM 软件包。
从桌面启动用户管理器,单击面板上的”主菜单”→“系统设置”→“用户和组群”,或在 shell 提示(如XTerm或GNOME终端)下键入redhat-config-users 命令。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/535732.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JDK源码解析之 Java.lang.Compiler

Compiler类提供支持Java到本机代码编译器和相关服务。在设计上,它作为一个占位符在JIT编译器实现。 一、源码部分 public final class Compiler {private Compiler() {} // dont make instancesprivate static native void initialize();private st…

shell的基本概念

Shell就像一个壳层,这个壳层介于用户和操作系统之间,负责将用户的命令解释为操作系统可以接收的低级语言,并将操作系统响应的信息以用户可以了解的方式来显示。 从用户登陆到注销期间,用户输入的每个命令都会经过解译及…

JDK源码解析之 java.lang.System

一个和系统环境进行交互的类. System不允许被实例化, 而且是一个final类 一、不能实例化 private System() { }二、成员变量 public final static InputStream in null; //这是“标准”输入流。 public final static PrintStream out null; //这是“标准”输出流。 public …

详解MySQL中DROP,TRUNCATE 和DELETE的区别

注意:这里说的delete是指不带where子句的delete语句 相同点: truncate和不带where子句的delete, 以及drop都会删除表内的数据 不同点: 1. truncate和 delete只删除数据不删除表的结构(定义) drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger),索引(index…

JDK源码解析之 Java.lang.Package

如果我们在Class对象上调用getPackage方法,就可以得到描述该类所在包的Package对象(Package类是在java.lang中定义的)。我们也可以用包名通过调用静态方法getPackage或者调用静态方法getPackages(该方法返回由系统中所有已知包构成的数组)来获得Package对象。getNam…

Mysql中limit的用法详解

在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能。SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset LIMIT 子句可以被用于强制 SE…

Docker入门-简介

独具魅力的Docker作为一门新技术,它的出现有可能引起其所在领域大范围的波动甚至是重新洗牌。根据业内专业人士的看法,不论如何,Docker的出现,已经成为云服务市场中一枚极具意义的战略性棋子。从2013年开始在国内发力,…

Mysql中limit的优化

在一些情况中,当你使用LIMIT row_count而不使用HAVING时,MySQL将以不同方式处理查询。 如果你用LIMIT只选择一些行,当MySQL选择做完整的表扫描时,它将在一些情况下使用索引。 如果你使用LIMIT row_count与ORD…

Docker入门-架构

Docker 包括三个基本概念: 镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。容器(Cont…

MYSQL出错代码列表大全(中文)

mysql出错了,以前往往靠猜.现在有了这张表,一查就出来了. 1005:创建表失败1006:创建数据库失败1007:数据库已存在,创建数据库失败1008:数据库不存在,删除数据库失败1009:不能删除数据库文件导致…

Docker入门-安装

Centos7下安装Docker docker官方说至少Linux 内核3.8 以上,建议3.10以上(ubuntu下要linux内核3.8以上, RHEL/Centos 的内核修补过, centos6.5的版本就可以) 1、把yum包更新到最新:yum update 2、安装需要的…

Docker原理之Namespaces

命名空间(namespaces)是 Linux 为我们提供的用于分离进程树、网络接口、挂载点以及进程间通信等资源的方法。 一、Namespaces 在日常使用 Linux 或者 macOS 时,我们并没有运行多个完全分离的服务器的需要,但是如果我们在服务器上启…

mysql 快速插入(insert)多条记录

方法1: INSERT INTO table(col_1, col_2,col_3) VALUES(1,11,111); INSERT INTO table(col_1, col_2,col_3)   VALUES(2,22,222); INSERT INTO table(col_1, col_2,col_3)   VALUES(3,33,333); 有没有更快捷的办法呢?答案是有(见方法2) 方法2: INSERT INTO table(col…

Docker原理之CGroups

控制组(cgroups)是 Linux 内核的一个特性,主要用来对共享资源进行隔离、限制、审计 等。只有能控制分配到容器的资源,才能避免当多个容器同时运行时的对系统资源的竞争。控制组技术最早是由 Google 的程序员 2006 年起提出&#x…

Mysql中的转义字符

字符串是多个字符组成的一个字符序列,由单引号( “”) 或双引号 ( “"”) 字符包围。(但在 ANSI 模式中运行时只能用单引号)。 例如: a string"another string"在一个字符串中,如果某个序列具有特殊的含义,每个序…

Docker原理之UnionFS

一、UnionFS Linux 的命名空间和控制组分别解决了不同资源隔离的问题,前者解决了进程、网络以及文件系统的隔离,后者实现了 CPU、内存等资源的隔离,但是在 Docker 中还有另一个非常重要的问题需要解决 - 也就是镜像。 镜像到底是什么&#…

教你精确编写高质量高性能的MySQL语法

在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的编写,刚开始不会体会出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统的…

Docker使用-Hello World

1、docker pull hello-world 拉去docker远程仓库中的Hello World的镜像 [rootCarlota2 ~]# docker pull hello-world Using default tag: latest latest: Pulling from library/hello-world 0e03bdcc26d7: Pull complete Digest: sha256:7f0a9f93b4aa3022c3a4c147a449bf11e09…

Mysql数据库引擎快速指南

如果你是个赛车手并且按一下按钮就能够立即更换引擎而不需要把车开到车库里去换,那会是怎么感觉呢? MySQL 数据库为开发人员所做的就好像是按按钮换引擎;它让你选择数据库引擎,并给你一条简单的途径来切换它。 MySQL的自带引擎肯…

Docker使用-构建MySQL

拉取官方镜像(我们这里选择5.7,如果不写后面的版本号则会自动拉取最新版) docker pull mysql:5.7 # 拉取 mysql 5.7 docker pull mysql # 拉取最新版mysql镜像MySQL文档地址 检查是否拉取成功 $ sudo docker images一般来说数据库容…