linux useradd 数字,详解linux useradd用户组合权限管理等

1,权限相关概念

Rwx

任何一个文件都应该由两部分组成,这两部分其实基于文件系统来组织,磁盘分区创建完成后,在高级格式化的时候,就把整个磁盘分区分成两部分,其中一部分是源数据,一部分是来放数据的,所有的数据都放在数据区的数据块上,读权限其实就是去查看原数据指向的数据快中的内容,可以使用cat,tail等来查看这些内容,对目录而言就比较独特,目录的R权限,可以对其执行ls。目录和文件来讲都有源数据和数据,目录名等信息是放在源数据中的

而目录的所有文件信息,其实也存放于数据区,所以对于目录而言执行ls命令就雷同于文件打开一样,但仅能看到仅要信息

W权限对文件而言可以编辑文件内容,而目录则可以删除创建文件,所以一个用户即便对一个文件没有写权限,并不意味着他不能够删除文件,因为它只要对目录有写权限就可以删除这个目录上的所有文件

X执行权限,如果对于一个文件而言,他可以吧这个文件提取给内核发起一个起动的进程,

进程是一个动态概念,他需要获得CPU的时间,内存,获得文件打开的权限,文件描述符等等等

在ls –l的时候看到有9位权限

Rwxrwxrwx

左侧三位:文件属主来访问的权限

中间三位:属组内的所有用户访问权限

右三位:既非属主又非属之外的,其他权限2,用户,组,权限深入详解

Useradd,del,mod,pass

创建,删除,修改,添加密码

Groupdd,del,mod,pass

创建,删除,修改,添加密码

用户账号:用户,组

useradd存放目录:

用户账号: /etc/passwd

[root@bogon ~]# cat /etc/passwd

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

sync:x:5:0:sync:/sbin:/bin/sync

man 5 passwd 查看,给出的格式

account:password:UID:GID:GECOS:directory:shell

1:用户账号

2,密码占位符,通常x表示,x表示密码并不存放在本地

存放在shdow(the   encrypted  user  password,  anasterisk (*),  or  the  letter  'x'.(See pwconv(8) for an explanation of'x'.))

3,UID 用户自身的数字表示

4,GID 用户所属基本组ID

5,GECOS 用户注释:住址信息办公电话等等

6,directory,用户家目录位置(用户有家目录,但是用户家目录未必存在)

7,shell:用户的默认的(bin/bashell)shell(用户必须有一个合法的(etc/shell),可以的shell,否则将无法登录系统)

用户登录会打开一个交互界面

Useradd和adduser是同一个文件,只是一个符号连接而已。

[root@bogon ~]# which useradd

/usr/sbin/useradd

[root@bogon ~]# which adduser

/usr/sbin/adduser

[root@bogon ~]# ls -l /usr/sbin/ad

addgnupghome* adduser@

[root@bogon ~]# ls -l /usr/sbin/adduser

lrwxrwxrwx. 1 root root 7 Mar 23 06:35 /usr/sbin/adduser -> useradd

[root@bogon ~]#

注意:用户比较容易识别的是名称,但计算机更容易识别的是数字,所以用户登录时,无论我们输入的是什么样的用户名,最后计算机都会把他转变成数字,并接着随后的时间都是用数字来追踪。计算机通过查看/etc/passwd文件,将用户账号,查找用户搜索键,逐次比较查找,比如你登录的是root,它会查找root的Id号是什么。

这个过程我们称之为:名称解析过程

名称解析:name resolving

名称解析把一种名字转换为另外一种名字的过程,叫做名称解析。

名称解析基于名称解析库:数据库文件,

以某个字段为搜索键,一一对应到另外一个字段的数据,就完成了名称解析

NAME ID

-u uid

-g gid Gid需要事先存在,如果不是用-G选项,useradd会自动创建一个与用户同名的组作为用户所属的基本组,此时词组一般也成为用户的私有组

-c 注释信息

-d /path/./. 显示指定家目录:默认/home/

-s /bin/ 指定用户默认使用的shell

用户类别:

管理员:0

系统用户:1-499 (服务,程序特别创建,可能并不需要登录,没有家目录)

普通用户:500+  (useradd)

-r  创建系统用户

-m 必须给用户创建家目录

-M 不给用户创建家目录

-d  设定用户创建时useradd的默认行为

-G  为用户指定附加组 (需要事先存在)

[root@bogon ~]# Groupadd distro

[root@bogon ~]#useradd –G distro slackware

如果GID和UID不相同是,权限有所改变

Id命令;

[root@bogon ~]# id nginx

uid=496(nginx) gid=492(nginx) groups=492(nginx)

[root@bogon ~]#

GID为用户的GID,在GID之后的是附加组,以逗号隔开

Man ID查看其他命令

-u uid

-g gid

-G groups

-n groupname

Finger name(查看用户信息:登陆名,name,家目录,shell,创建后的登陆史,用户邮件,任务计划)

Sbin/nologin(系统用户可以-s)

[root@bogon ~]# cat /etc/shells

/bin/sh

/bin/bash

/sbin/nologin

/bin/dash

/bin/tcsh

/bin/csh

[root@bogon ~]# ls /sbin/nologin

/sbin/nologin

[root@bogon ~]#

用户密码:   /shadow

组账号:/etc/group

组密码:/etc/gshadow

Groupadd :

/etc/group

Whatis group

Man groupadd

group_name:passwd:GID:user_list

name

userlist:以词组为其附加组的用户的用户列:以逗号分隔

-g gid

-r 添加为系统组

还有几个useradd相关配置文件

Man useradd

/etc/default/useradd

Default values for account creation.

[root@bogon ~]# cat /etc/default/useradd

# useradd defaults file

GROUP=100

HOME=/home   定义用户家目录

INACTIVE=-1

EXPIRE=

SHELL=/bin/bash  定义用户默认shell

SKEL=/etc/skel    skel创建用户的骨架

CREATE_MAIL_SPOOL=yes  定义邮件队列 :/var/mail/&/var/spool下创建于用户同名文件

[root@bogon ~]#

/etc/skel/

Directory containing default files.

我们打开/etc/home/mark下看到几个文件是隐藏的,这些文件来自/etc/skel复制而来,而有些文件是后期生成的。创建一个用户有家,登陆进来能看到正常的提示符,就是这个原因。

如果没有,将异常,比如:系统用户(会没有ps1定义等等)

[root@bogon ~]# ls -a /home/mark/

.              .esd_auth        .mozilla

..             .fontconfig      Music

.bash_history  .gconf           .nautilus

.bash_logout   .gconfd          Pictures

.bash_profile  .gnome2          Public

.bashrc        .gnome2_private  .pulse

.cache         .gnote           .pulse-cookie

.config        .gnupg           .ssh

.dbus          .gstreamer-0.10  Templates

Desktop        .gtk-bookmarks   Videos

.dmrc          .gvfs            .Xauthority

Documents      .ICEauthority    .xsession-errors

Downloads      .local           .xsession-errors.old

[root@bogon ~]# ls -a /etc/skel/

.  ..  .bash_logout  .bash_profile  .bashrc  .gnome2  .mozilla

[root@bogon ~]#

Useradd –D –s /bin/tcsh更改shell为tcsh(也就是改变这个文件)

[root@bogon ~]# useradd -D -s /bin/tcsh

[root@bogon ~]# cat /etc/de

default/  depmod.d/

[root@bogon ~]# cat /etc/default/useradd

useradd   useradd-

[root@bogon ~]# cat /etc/default/useradd

# useradd defaults file

GROUP=100

HOME=/home

INACTIVE=-1

EXPIRE=

SHELL=/bin/tcsh

SKEL=/etc/skel

CREATE_MAIL_SPOOL=yes

[root@bogon ~]#

/etc/login.defs

Shadow password suite configuration.

[root@bogon ~]# man 5 shadwo

No entry for shadwo in section 5 of the manual

[root@bogon ~]# man 5 shadow

用户加密后存放的密码

Etc/shadow

login name:登陆名

encrypted password:加密后的密码

date of last password change:最后一次修改密码日期;相对于1970年1月1号至上次密码修改经过的天数(需要换算)

minimum password age:密码最小使用期限 :单位:天

maximum password age:密码最大使用期限:单位:天

password warning period:密码警告期限:0表示不警告

password inactivity period:密码非活动期限,超出活动期限将被锁定

account expiration date:密码过期期限,其为一个日期(起始1970年1月1)

reserved field;预留字段;

在我们useradd 用户后,这些信息是被自动添加的

Passwd命令:

Passwd:改自己密码

Passwd 用户名:改指定用户密码

管理员不受任何密码强度,且可直接修改任何成员密码

-n,-x,-n,-k,-d,man查看

--stdin:标准输入:#echo “passwd ” | passwd –stdin 用户

例如:

锁定:passwd  -l 用户

锁定就是在用户密码前加!!而成的,可以在/etc/shadow查看,-u解锁

Usermod命令:(man查看)

-c comment :注释信息

-d  /PATH  修改用户的家目录;

-m修改家目录后一同把用户复制至新位置

-g GID 修改用户的基本组

-G GID1,GID2,…:修改用户附加组

-a:于-g一同使用,表示将用户添加至新指定的附加组,且保留原来的

-i :修改原来的登陆名

-s :修改用户默认shell

-l 锁定用户

-u解锁用户

Chsh  命令:

Chsh   用户名

Chsh –l :列出当前系统上可用shell

-s :修改为指定shell

Chfn命令:

Chfn

*/etc/shadow密码加密,以及如何对比如何认证的

user1:$1$lXgoPEgC$nbeN8ARcer.SqJ4I3l0rT1:16525:0:99999:7:::

加密/解密;

明文,密文

常用的加密方法:

对称加密:优点:速度快

缺点:秘钥分发困难

公钥加密(对称):缺点:中间人攻击

单向加密:仅能由明文产生密文:反之不成;严格严格意义上来讲,它实现的是提取数据特征码

同一个数据,使用同一个算法,多次计算得到的结果一定相同;常用于验证数据完整性

定长输出:无论原数据大小是说明,加密后的结果输入大小相同

例如:验证字符串的统一数据

[root@bogon ~]# md5sum /tmp/yum.log

d41d8cd98f00b204e9800998ecf8427e  /tmp/yum.log

[root@bogon ~]# md5sum /tmp/yum.log

d41d8cd98f00b204e9800998ecf8427e  /tmp/yum.log

[root@bogon ~]# md5sum /tmp/yum.log

d41d8cd98f00b204e9800998ecf8427e  /tmp/yum.log

[root@bogon ~]# md5sum /tmp/yum.log

d41d8cd98f00b204e9800998ecf8427e  /tmp/yum.log

[root@bogon ~]# md5sum /tmp/yum.log

d41d8cd98f00b204e9800998ecf8427e  /tmp/yum.log

[root@bogon ~]#

比如我们创建两个用户同一个密码,得到的密码字符串是不一致的(在数据加密之前被加入随机码而生成;在etc/shadow 中,密码字符串前$于$中间的,此乃随机码)

MD5:message digest

Shal: secure hash algorithm

Centos :sha512

Centos:md 5

Md5:message digest

123bits位位数定长输出

Sha1:secure hash algorithm

160bits 位位数定长输出

Sha256:

256bits 位位数定长输出

Sha512:

512bits

Shadow

$加密算法$8位随机字符$加密后的密码

Chage :修改用户账户密码的过期信息

Chage –l :查看用户的过期信息

Su:百度吧

事实上实现用户账号和组的管理大多数时候,可以直接编辑这些文件来实现

一次用户的创建大概经历了那些过程?

Useradd添加一个用户时:

1,在/etc/passwd文件中添加一行信息:

[root@bogon ~]# cat /etc/passwd

root:x:0:0:root:/root:/bin/bash

译----〉用户账号:密码字符:uid:gid:注释信息:家目录:shell

2,在/etc/group文件中添加一航信息

[root@bogon ~]# cat /etc/group

root:x:0:

组名:占位符:gid:user_lost

3.创建家目录,默认是和用户同名的目录/home/用户名

复制etc/skel目录中的隐藏文件至用户的加目录中

并修改其属主,属组权限

4,在/etc/shadow创建用户密码相关属性信息:密码默认为空,密码最长使用期限

5c1967c5325842cec010c6abd3e07965.gif

除非另有说明,否则本站上的内容根据以下许可进行许可: CC署名-非商业性使用-相同方式共享4.0国际许可协议4.0进行许可

本文作者:www.linuxea.com for Mark

文章链接:http://www.linuxea.com/linux-useradd.html (转载请注明本文出处和本章链接)

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

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

相关文章

junit jndi_使用Spring创建用于JUnit测试的JNDI资源

junit jndi直到最近,我还使用静态方法来设置内存数据库(HSQLDB)。 我在JUnit测试的setUp / tearDown中调用了这些方法。 当我使用Spring时,这对我来说总是有点不自然,并且所有内容都应在其应用程序上下文中运行。 创建…

c语言程序经过编译以后生成的文件名的后缀为,c语言源文件经过编译后生成文件的后缀是什么...

c语言源文件经过编译后生成文件的后缀是什么c语言源文件经过编译后生成文件的后缀是“.obj”。C语言源程序经过编译程序编译之后,生成一个后缀为“.obj”的文件,最后由称为“连接程序”的软件,把此“.obj”文件与各种库函数连接在一起&#x…

通过PL/SQL developer工具访问远程的Oracle数据库_访问数据库_连接数据库_登录数据库

文章目录工具简介电脑没有安装 Oracle 数据库电脑安装了 Oracle 数据库工具简介 PL/SQL Developer 是 Oracle 数据库开发工具,PL/SQL Developer 功能很强大,可以做为集成调试器,有 SQL 窗口,命令窗口,对象浏览器和性能…

xgboost简单介绍_好文干货|全面理解项目中最主流的集成算法XGBoost 和 LightGBM

点击上方“智能与算法之路”,选择“星标”公众号第一时间获取价值内容本文主要介绍基于 Boosting 框架的主流集成算法,包括 XGBoost 和 LightGBM。送上完整的思维导图:XGBoostXGBoost 是大规模并行 boosting tree 的工具,它是目前…

本地 Windows 如何将 Web 工程部署到远程 Windows 主机上

文章目录第一步:先连接远程 Windows 主机:第二步:连接远程 Windows 主机后,把发布包复制到远程主机上并确定有关的目录第三步:删除远程主机的数据库中的旧数据第四步:创建新的用户和表空间第五步&#xff1…

r语言三维柱状图_R语言三维图的绘制

R语言在可视化方面的地位是毋庸置疑的,但是呢相对于MatalabR语言在三维图形的展示上存在一定的劣势。当然,作为大众的免费软件,指定不服,很多人为此也基于R语言开发了一些相应的三维图的绘制包,像rgl,gg3D&…

从事仪表专业学c语言有用吗,测控专业就业方向有哪些 就业前景比你想象中的好...

测控专业就业方向有哪些?这个专业的就业前景好不好?这些问题都是小伙伴们比较关心的问题,下面随小编一起来了解一下吧。主要就业方向1.智能仪器仪表方向,我觉得这个方向主要是从事仪器仪表,电子产品的软件,硬件研发,…

c语言 将url图片存到本地_python爬虫:爬取男生喜欢的图片

任务目标:1.抓取不同类型的图片2.编写一个GUI界面爬虫程序,打包成exe重新文件3.遇到的难点1.分析如何抓取不同类型的图片首先打开网站,可以看到有如下6个类型的菜单在这里插入图片描述点击不同菜单,发现URL显示如下大胸妹&#xf…

c语言编译后找不到exe,在VS 2015命令提示符中找不到c – rc.exe

我刚刚安装了Windows 10 Creators Update(版本10.0.15063).我安装了多个版本的Visual Studio(2012年,2013年,2015年和2017年).我几周前才安装了VS 2017.问题在“VS2015 x64本机命令提示符”中运行时,CMake(版本3.8.1)不再找到C/C编译器(在VS 2017命令提示符下运行时它可以正常工…

tomcat如何通过配置的方式部署web工程

Workspaces 下有很多工程文件,这个 Workspaces 是 Myeclipse 自动生成的,我们通过 Myeclipse 写的工程都在这个 Workspaces 文件夹下。 我们部署工程到服务器上,就是要每个 WEB 工程里面的 context 文件夹,这个文件夹可以放在 t…

python爬虫源码_Python—爬虫:王者荣耀全套皮肤【附源码】

怎么获取全套皮肤?用钱买,或者用爬虫爬取下来~虽然后者不能穿。这个案例稍微复杂一点,但是一个非常值得学习的项目。具体实现思路:分析网页源代码结构找到合适的入口穷举访问并解析爬取所有英雄所有皮肤图片代码思路/程序流程&…

警惕成教自考_不,保持警惕不会伤害Java。 关于Java许可的评论。

警惕成教自考所以。 Oracle希望通过Java赚钱。 然后,The Register发表了一篇非常对立的文章,上面有一个超级吸引人的标题。 根据他们的消息来源,“ Oracle正在大力加强对声称违反其许可证的Java客户的审计”。 当Twitter诗句对人们批评Oracle…

android colorstatelist_Android 样式系统 | 主题背景属性

在 Android 样式系统系列的前几篇文章中,我们介绍了主题背景与样式的区别,以及为什么说通过主题背景和公共主题背景属性来分解您要实现的内容是一个不错的主意,请点击链接回顾:Android 样式系统 | 主题背景和样式Android 样式系统 | 常见的主…

python二级考试可以用pycharm吗_学Python,Pycharm不能不知道怎么用

栏目介绍必会的Pycharm。我决定把去年写的Python文章整理一个专栏,垃圾的就直接删除,将多篇博文整理成一篇。 工欲善其事必先利其器,Pycharm 是最受欢迎的Python开发工具,它提供的功能非常强大,我尽量把自己用的都写写…

apache camel_Apache Camel Intellij IDEA插件的工作已开始

apache camel仅仅因为圣诞节并不意味着骆驼静止不动。 在23日晚上,我花了一些时间进行研究,并开始研究IDEA的Apache Camel插件的小原型。 它已经存在了我很长时间。 原因是Apache Camel为目录提供了有关工具的大量有用信息。 该目录包含有关每个Camel组…

Final Cut Pro X剪辑影片基本步骤

文章目录一、资源库、事件、项目之间的区别二、制作一个视频的步骤(一)创建资源库(二)创建事件(非必需)(三)导入资源(四)创建项目(五)进行剪辑(六…

单例模式引发的内存泄漏:_资源泄漏:救援的命令模式

单例模式引发的内存泄漏:多年来, 使用Plumbr进行性能监控时,我遇到了数百个资源泄漏引起的性能问题。 在这篇文章中,我想描述一种最简单的方法来清理资源并避免该问题。 首先,我以电影播放器​​应用程序为例来描述问题。 这种应…

ant构建项目迁移到gradle_Gradle这么弱还跑来面腾讯?

点击上方“刘望舒”,选择“星标”多点在看,就是真爱作者: 厘米姑娘(腾讯开发妹子)| 来源 :公号 码个蛋https://www.jianshu.com/p/1274c1f1b6a4前言在使用Android Studio过程中没少被Gradle坑过,虽然网上有很多简单粗暴的解决方案…

java heroku_使用Spring Boot和Heroku在20分钟内完成Java的单点登录

java heroku建筑物身份管理,包括身份验证和授权? 尝试Stormpath! 我们的REST API和强大的Java SDK支持可以消除您的安全风险,并且可以在几分钟内实现。 注册 ,再也不会建立auth了! 大规模更新 我最初为本文…

如何使用SSH客户端远程操作linux系统,并启动、关闭tomcat和查看后台日志

cd … 表示回退到上一级目录 ls 表示查看当前目录下的所有文件 我们的tomcat安装路径在usr\local\yzmis\下面找 例如你要关闭信誉质量考核系统所在的tomcat,你要进入test下去找到apache-tomcat-6.0.14 再进入bin目录下,然后执行[trserver100 bin]$ ./sh…