一、用户管理

(一)、用户和组的基本概念

Users and groups:
. Every process (running program) on the system runs as a particular user.
系统上的每个进程(运行的程序)都是作为特定用户运行的
. Every file is owned by a particular user.
每个文件是由一个特定的用户拥有
. Access to files and directories are restricted by user.
访问文件和目录受到用户的限制
. The user associated with a running process determines the files and directories accessible to that process.
与正在运行的进程相关联的用户确定该进程可访问的文件和目录

(二)、示例

查看当前登录用户信息:

[root@linux ~]# id
uid=(root) gid=(root) 组=(root)

查看进程:

[root@linux ~]# yum -y install vsftpd

[root@linux ~]# ps aux | grep vsftp
root 0.0 0.0 ? Ss : : /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
nobody 0.0 0.0 ? Ss : : /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
ftp 0.0 0.0 ? S : : /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
root 0.0 0.0 pts/ S+ : : grep --color=auto vsftp

(三)、与用户组相关的文件

/etc/passwd         root:x:::root:/root:/bin/bash                 用户信息
用户名:x:uid:gid:描述:HOME:shell x密码占位符
/etc/shadow root:$$MYG2NDG6$a1wtyr5GDM2esAPjug0YP0:::::: : 密码信息
$id$salt$encrypted
/etc/group root:x:: 组信息

(四)、扩展

加密算法$id:

$:  MD5
$: SHA-
$: SHA-

(五)、系统约定

CentOS 6:

uid:          特权用户
uid: ~ 系统用户
uid: + 普通用户

CentOS 7:

uid:          特权用户
uid: ~ 系统用户
uid: + 普通用户
The root user
. uid is
UID是0
. all power
所有权力
. This user has the power to override normal privileges on the file system
该用户有权力覆盖文件系统上的普通权限
. installing or removing software and to manage system files and directorie
安装或删除软件并管理系统文件和目录
. Most devices can only be controlled by root
大多数设备只能由root控制

二、用户

创建用户:

# useradd user02 -u                         //创建用户usr02,指定uid
# useradd user03 -d /aaa //创建用户user03 指定家目录
# useradd user05 -s /sbin/nologin //创建用户并指定shell
# useradd user07 -G hr,it,fd //创建用户,指定附加组
# useradd user10 -u -s /sbin/nologin //指定UID 指定登录shell

删除用户:

# userdel user10                                   //删除用户user10,但不删除用户家目录和mail spool
# ll -d /home/user10/
drwx------ - : /home/user10/
# ll /var/spool/mail/user10
-rw-rw---- mail - : /var/spool/mail/user10
# userdel -r user2 //删除用户user2,同时删除用户家目录和mail spool

用户密码:

# passwd alice                  //root可以给任何用户设置密码
$ passwd //普通用户只能给自己修改密码,而且必须提供原密码

三、组成员管理

(一)组成员管理:

只针对已从在的用户:

# usermod -G hr niuniu2                     //覆盖原有的附加组
# usermod -G fd,it niuniu2
# usermod -aG hr niuniu2 //增加新的附加组 # gpasswd -a jack wheel //usermod -aG hr zhuzhu
# gpasswd -M zhuzhu,maomao100 hr
# gpasswd -d zhuzhu hr

(二)、其他管理:

# usermod -s /sbin/nologin niuniu2            //设置这个账户的登录shell 

四、no Shell

/sbin/nologin       //用户无法登录系统,实现管理。仅作为运行进程的用户,访问FTP的用户。
//安全的用户
# useradd www -s /sbin/nologin
# grep 'bash$' /etc/passwd /bin/bash //登录系统,实现管理

shell是用户登录后运行的第一个程序

/usr/sbin/poweroff
/usr/sbin/reboot
# setenforce

策略示例:

# useradd maomao100
# echo |passwd --stdin maomao100 //给大家的一个初始密码
# chage -d maomao100 //强制用户在下一次登录时修改密码

五、用户提权

$ useradd u1
-bash: /usr/sbin/useradd: 权限不够
$ su - root
password:
# useradd u1

必须在Root用户下提权:

# useradd user1 -G wheel
# id yangyang
uid=(user1) gid=(user1) 组=(user1),(wheel)

修改visudo

# visudo
## Allows people in group wheel to run all commands
#%wheel ALL=(ALL) ALL //注释这一行 ## Same thing without a password
%wheel ALL=(ALL) NOPASSWD: ALL //打开这一行 //保存退出即可

测试提权:

# su - user1        //切换用户
$ sudo useradd user2 //使用sudo提权创建一个用户, $ id user2 //查看刚刚创建的用户
uid=(user2) gid=(user2) groups=(user2) //提权成功

Linux基础用户管理的更多相关文章

  1. (四)Linux之用户管理(用户和用户组)

    Linux之用户管理(用户和用户组) 目录 Linux之用户管理(用户和用户组) 一.概述 二.用户和组的关系 三.关于UID和GID(用户ID和组ID) 四.用户和组的数据 /etc/passwd内 ...

  2. Linux基础——用户和用户组

    Linux基础--用户和用户组 一.用户和用户组 用户在/etc/passwd中 用户组在/etc/group/中注意:在创建用户时,系统默认生成一个用户组(组名和用户名一致) 1.用户 1.1查看用 ...

  3. linux 下用户管理

    linux 下用户管理 一.用户的分类 1.超级用户:root UID=0 2.系统用户:不需要登录系统,对应用程序服务,主要维护系统的正常运行:UID = 1 ~ 499(RHEL7 = 1 ~ 9 ...

  4. Linux下用户管理、目录结构

    linux的文件系统是采用层级式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录. 目录介绍: / root,存放root用户的相关文件 home,存放普通用户的相关文 ...

  5. 基于操作系统原理的Linux 的用户管理

    一.实验目的 1.掌握为root用户修改密码的方法. 2.掌握创建新用户的方法. 3.掌握用户组的管理方法. 4.掌握为用户授权的方法. 二.实验内容 1.Linux的用户管理 (1)创建新用户创建新 ...

  6. Linux下用户管理:创建用户指定密码

    首先我们来了解下Linux下用户管理的概念: 如上图所示,左边的一列表示用户名,中间的一列表示用户组,最右边的一列表示的是家目录.用户名我们这里处于简单就,添加了root,xm,xh三个用户.用户组和 ...

  7. linux系统用户管理(一)

    Linux系统用户管理1.用户管理*****2.Linux用户命令****3.用户创建的原理***4.密码管理***5.组命令管理**6.身份切换*****7.sudo提升权限***** 我们现在所使 ...

  8. 实验三:Linux系统用户管理及VIM配置

    项目 内容 这个作业属于哪个课程 班级课程的主页链接 这个作业的要求在哪里 作业要求链接地址 学号-姓名 17043133-木腾飞 学习目标 1.学习Linux系统用户管理2.学习vim使用及配置 实 ...

  9. 实验三 Linux系统用户管理及VIM配置

    项目 内容 这个作业属于哪个课程 班级课程的主页链接 这个作业的要求在哪里 作业要求链接接地址 学号-姓名 17041428-朱槐健 作业学习目标  1.学习Linux系统用户管理 2.学习vim使用 ...

随机推荐

  1. C# 位运算及实例计算

    前言: 平时在实际工作中很少用到这个,虽然都是一些比较基础的东西,但一旦遇到了,又不知所云.刚好最近接触了一些相关这方面的项目,所以也算是对 这些内容重新温习实践了一遍.所以这篇不仅作为个人备忘,也分 ...

  2. MySQL 全文索引实现简单版搜索引擎

    目录 前言 使用 三种类型的全文搜索方式 相关参数 测试innodb引擎使用全文索引 准备 使用默认方式创建全文索引 使用ngram分词解析器创建全文索引 结论 前言 只有Innodb和myisam存 ...

  3. leadcode的Hot100系列--78. 子集--回溯

    上一篇说了使用位运算来进行子集输出,这里使用回溯的方法来进行排序. 回溯的思想,我的理解就是: 把解的所有情况转换为树或者图,然后用深度优先的原则来对所有的情况进行遍历解析. 当然,因为问题中会包涵这 ...

  4. 面试中常见的算法之Java中的递归

    1.方法定义中调用方法本身的现象2.递归注意实现 1) 要有出口,否则就是死递归 2) 次数不能太多,否则就内存溢出 3) 构造方法不能递归使用3.递归解决问题的思想和图解: 分解和合并[先分解后合并 ...

  5. extern和static区别

    1. 声明和定义 ​ 当定义一个变量的时候,就包含了对该变量声明的过程,同时在内存张申请了一块内存空间.如果在多个文件中使用相同的变量,为了避免重复定义,就必须将声明和定义分离开来.定义是创建与名字关 ...

  6. 12306抢票系统——ER图及数据表

    12306自动抢票系统——ER图及数据表 1. 抢票系统ER图 数据表 2.抢票系统数据结构表 (1)列车表 Trains table 字段名 数据类型 说明 是否为主键 Train_id strin ...

  7. Spring mybatis 之-ssm框架环境搭建(方案一)

    SSM框架- S-Spring  S-Spring mvc M-mybatis  就需要以下几个配置文件,放在resources文件夹下面: db.properties 放的是数据库连接池的配置文件, ...

  8. E11000 duplicate key error index

    E11000 duplicate key error index mongodb插入报错,重复主键问题,有唯一键值重复 一般使用collection.insertOne(doc);插入一条已存在主键的 ...

  9. Java中的单例模式(Singleton Pattern in Java)

    Introduction 对于系统中的某个类来说,只有一个实例是很重要的,比如只有一个timer和ID Producer.又比如在服务器程序中,配置信息保留在一个文件中,这些配置信息由一个单例对象统一 ...

  10. 基于Bitnami gitlab OVA包的gitlab 环境搭建

    前言 最近在折腾gitlab,本篇记录搭建的过程方便以后查找 环境 Windows server + VMware 安装 为方便本次我们直接采用Bitnami的VOA安装包(VOA格式可同时兼容Vir ...