用户账号管理

基于账号身份对资源访问进行控制

账户类别:用户账号,组账号

识别方式:UID,GID

用户账号:超级用户root,系统用户,普通用户

组账号:用来区分权限,不用于登陆

基本组(私有组)

附加组(公有组)

用户账号分类

超级用户:即管理员root,UID为0,拥有最高系统权限

系统用户:UID范围1-499,一般不能登陆系统(/sbin[em]e188[/em]login)

普通用户:默认的UID范围500-6000

组账号分类

基本组(私有组):即每个用户专属的组。一般有一个成员,组名与对应的用户名相同

附加组(公有组):即对各用户共同的组,一般有多个成员,组名由管理员指定

————————————————————————————————————————————————

账号的存放类别

账号数据的存放:

本地账户:存储在本机磁盘中

网络账户:存储在网络上专门的服务器上

本地账户的数据文件

/etc/passwd,/etc/shadow

/etc/group,/etc/gshadow

解析用户账号文件:

/etc/passwd,保存用户账号的基本信息,每一个用户记录一行,以:分割为7个字段

[root@hydra/]#head -n 1 /etc/passwd

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

字段1:用户账号的名称

字段2:密码字串或占位符x

字段3:用户账号的UID号

字段4:所属基本组的GID号

字段5:用户全名

字段6:宿主目录

字段7:登陆shell程序的路径

解析用户账号文件:

/etc/shadow,保存密码字串/有效信期等信息,每个用户记录一行,以:分割为9个字段

[root@hydra/]#head -n 1/etc/shadow

root:$6$g4l6UXBx$szBBXiQgTvK/O........6vAkyLRQkCA:17310:0:99999:7:::

字段1:用户账号的名称

字段2:加密后的密码字符串

字段3:上次修改密码的时间

字段4:密码的最短有效天数。默认0

字段5:密码过期的最长有效天数,默认99999

字段6:密码过期前的警告天数,默认7

字段7:密码过期后多少天禁用此用户账号

字段8:账号失效时间,默认值为空

字段9:保留字段(未使用)

——————————————————————————————————————————————————————————

useradd 添加用户

useradd命令

格式:useradd [选项] 用户名

常用命令选项

-u:指定UID标记号

-d:指定宿主目录,缺省为/home/用户名

-e:指定账号失效时间

-g,-G:指定所属的基本组,附加组

-M:不为用户建立并初始化宿主目录

-s:指定用户的的登陆shell

passwd设置口令

passwd命令

格式:passwd [选项] 用户名

常用命令选项

-d:清空用户密码,使之无需密码即可登陆

-l:锁定用户账号

-S:查看用户账号的状态(是否被锁定)

-u:解锁用户账号

--stdin:从标准输入(比如管道)取密码

-f:强制进行操作

————————————————————————————————————————————

用户初始配置

useradd行为配置

默认配置文件:/etc/default/useradd(对新建的账号起作用)

[root@room1pc01 桌面]# cat /etc/default/useradd

# useradd defaults file

GROUP=100

HOME=/home

INACTIVE=-1

EXPIRE=

SHELL=/bin/bash

SKEL=/etc/skel

CREATE_MAIL_SPOOL=yes

login.defs登陆定义文件

默认配置文件:/etc/login.defs(对新创建的账号起作用)

[root@room1pc01 桌面]# grep -vE '^#|^$' /etc/login.defs

MAIL_DIR    /var/spool/mail

PASS_MAX_DAYS    99999

PASS_MIN_DAYS    0

PASS_MIN_LEN    5

PASS_WARN_AGE    7

UID_MIN              500

UID_MAX            60000

GID_MIN              500

GID_MAX            60000

CREATE_HOME    yes

UMASK           077

USERGROUPS_ENAB yes

ENCRYPT_METHOD SHA512

用户初始配置文件

配置文件来源:新建用户时,根据/etc/skel模板目录复制。

主要的初始配置文件

~/.bash_profile:每次登陆时执行

~/.bashrc:每次进新的Bash环境时执行

~/.bash_logout:每次退出登录时执行

全局配置文件:/etc/bashrc,/etc/profile

————————————————————————————————————————————

用户的删改查

usermod修改用户

格式:usermod [选项] 用户名

常用命令选项

-l:更改用户账户的登陆名称([root@hydra/]#usermod -l hydra1 hydra01(把改的名字写在前面)

-L:锁定用户账号

-U:解锁用户账号

-u:指定UID标记号

-d:指定宿主目录,缺省为/home/用户名

-e:指定账号失效时间

-g,-G:指定所属的基本组,附加组

-s:指定用户的的登陆shell

————————————————————————————————————————————————————————

调优(黑色艺术)

chage密码有效控制

格式:chage [选项] 用户名

让用户初次登陆需修改密码:chage -d 0 用户名

常用命令选项

-l:列出密码的有效期信息

-E:指出账号的过期时间,YYYY-MM-DD

-m:指定密码的最小天数

-M:指定密码的最大天数

——————————————————————————————————————————

userdel删除用户

格式:userdel [-r] 用户名

添加-r选项,宿主目录/用户邮件也一并删除

——————————————————————————————————————

——————————————————————————————————————

组账号管理

解析组账号文件:

/etc/group,保存组账号的基本信息

每个组记录一行,以:分割为4个字段

[root@room1pc01 桌面]# head -1 /etc/group

root:x:0:

字段1:组账号的名称

字段2:密码占位符x

字段3:组账号的GID号

字段4:本组成员用户列表

解析组账号文件

/etc/gshadow,保存组账号的管理信息

每个组记录一行,以:分割为4个字段

[root@room1pc01 桌面]# head -1 /etc/gshadow

root:::

字段1:组账号的名称

字段2:加密后的密码字符串

字段3:本组的管理员列表

字段4:本组的成员用户列表

groupadd添加组账号

格式:groupadd [-g GID] 组名

[root@hydra/]#groupadd -g 600 xx1

[root@hydra/]#grep xx1 /etc/group

stugrp:x:600:

[root@hydra/]#grep xx1 /etc/gshdow

stugrp:!::

gpasswd 管理组成员

格式:gpasswd [选项] 组名

常用命令选项

-A:定义组管理员列表

-a:添加组成员,每次只能添加一个

-d:删除组成员,每次只能删除一个

-M:定义组成员用户列表,可设置多个

groupdel删除组

格式:groupdel 组名

删除的目标组不能是用户的基本组

[root@hydra/]#griupdel xx1

[root@hydra/]#grep xx1 /etc/group

[root@hydra/]#

————————————————————————————————

Linux基础六的更多相关文章

  1. Linux基础(六) Vim之vundle插件

    背景 Vim缺乏默认的插件管理器,所有插件的文件都散布在~/.vim下的几个文件夹中,插件的安装与更新与删除都需要自己手动来,既麻烦费事,又可能出现错误. Vundle简介 Vundle 是 Vim ...

  2. Linux基础六(网络管理)

    目录 一.网络配置 1. IP 地址配置 2. 网络配置文件 3. 虚拟机网络配置参数 二.网络命令 1. 网络环境查看命令 2. 网络测试命令 三.远程会话安全协议-SSH原理 1. SSH 原理 ...

  3. Linux基础知识第六讲,远程管理ssh操作

    目录 Linux基础知识第六讲,远程管理ssh操作 一丶什么是SSH 1.什么是SSH 2.了解域名跟端口 二丶SSH命令以及远程连接linux进行维护 1.ssh命令格式 2.scp远程终端拷贝文件 ...

  4. Linux基础入门

    第一节,linux系统简介 一.实验内容 了解 Linux 的历史,Linux 与 Windows 的区别等入门知识. 二.实验要求 阅读linux简介与历史 三.实验步骤 (一).Linux 为何物 ...

  5. Linux基础入门学习笔记20135227黄晓妍

    学习计时:共24小时 读书:1小时 代码:8小时 作业:3小时 博客:12小时 一.学习目标 1. 能够独立安装Linux操作系统   2. 能够熟练使用Linux系统的基本命令   3. 熟练使用L ...

  6. Linux基础(6)

    Linux基础(六) shell脚本中的三大循环和函数知识点 一.流程控制之if结构 1.简单的if实例: #!/bin/bash var='/etc/init.d' #var='/dev/sda' ...

  7. Linux 基础(2)

    Linux 基础(二) 用户 组 及权限的相关操作 一.useradd命令选项:–u:指定用户的UID useradd –u 100 mu #指定mu的UID为100–g:指定用户所属的群组 user ...

  8. linux 基础 文件系统 用户权限

    描述Linux系统的启动过程? 1.开机自检 BIOS 2.MBR引导 3.GRUB菜单 4.加载内核 5.运行init进程 6.从/etc/inittab读取运行级别 7.根据/etc/rc.sys ...

  9. OracleOCP认证 之 Linux基础

    Linux 基础 一.SHELL 1: Shell 简介 shell 是用户和Linux 操作系统之间的接口.Linux 中有多种shell, 其中缺省使用的是bash. Linux 系统的shell ...

随机推荐

  1. 手机文件夹的emulated什么意思

    词典翻译是仿真,就是自带的存储卡, 手机的储存方式有两种,一种是手机内存 ,一种是SD卡内存.

  2. CentOS 下做端口映射/端口转发

    CentOS 下做端口映射/端口转发==[实现目标]==================[服务器A]有2块网卡,一块接内网,一块接外网,[服务器B]只有一块内网网卡:访问[服务器A]的7890端口跳转 ...

  3. docker命令行学习

    docker命令行学习 docker run docker run --help:老实说这条最管用了 docker run -it:交互模式,允许控制台输出 docker run -d:detach, ...

  4. 关于css选择器的一些细节

    1.如何区分一个html标签的不同样式 使用标签名.类名的方式解决 如果希望特别强调其中的某一个或几个元素,处理的方案有三个: 1.id选择器 2.class选择器 3.层级选择器 看下面的代码: & ...

  5. get、post、put、delete请求方式

    对资源的增,删,改,查操作,其实都可以通过GET/POST完成,不需要用到PUT和DELETE. Jersey框架,实现了restful风格,常用的注解@GET.@POST.@PUT.@DELETE如 ...

  6. JSP基础篇

    JSP可以认为是加上了Java代码块的HTML文件,常常和CSS,JS结合使用,下面是一个JSP的基本的例子. <%@ page language="java" conten ...

  7. wenpack-simple+elementUI配置

    首先跟着element官方文档走一遍 注意把.babelrc改成这样 { "presets": [ ["env", { "modules": ...

  8. 安装RabbitMQ(二)

    RabbitMQ的简易安装 前一篇博文的RabbitMQ安装有点复杂,经过搜索发现简单的安装方式如下. 1.Erlang Yum Repos 基于 SSL 高版本包含插件 rpm -Uvh http: ...

  9. WPF项目学习.三

    工具代码记录 版权声明:本文为博主初学经验,未经博主允许不得转载. 一.前言 记录在学习与制作WPF过程中遇到的解决方案. 分页控件的制作,邮件发送,日志代码,excel导入导出等代码的实现过程: 二 ...

  10. go语言实现无限极分类

     // 应用分类二级菜单     AppCateNode struct {         Id int64 `json:"id"`         Name string `js ...