用户和组介绍
用户介绍:
linux 相当于社会是个整体 root 就是人的名字 uid 就是每个人的身份证号
linux 人的名字 身份证号
社会 root uid
Linux里的用户名是给人看的,为了方便人使用。比如root用户,
真正标识用户的是UID,也就是Linux只识别uid。
身份标识:每个用户都有一个唯一标识,就是UID(User,identify)。
用户组
人是有组织,【家庭】,学校,班级,公司。
用户也要属于某个组或者多个组织。主组,不重要的组织叫做附加组。
同样,组名是方便使用者,组标识GID,也是唯一标识,用于计算机识别。
Linux里有用户和用户组两个对象,用户是个体,组是一个组织。
规则:创建用户必须要属于一个组织,用户不能独立存在,用户可以属于多个组织。
用户深入介绍(user)
Linux里都有哪些用户?作用?
linux中有三类用户
1.超级管理员用户root
2.普通用户(名称是自己定义的)
3.虚拟用户 (系统自带,人工创建)
详细说明:
root 用户:
linux系统管理员,掌握这系统的最高权限,拥有自己的专属地方,也就是家目录/root
管理员的用户名是root,它的UID固定为0。
练习:把自己创建的用户的UID改成0,让她成为root
查看用户uid
id 自己所创建的用户名 (如果id 查看不出来 可以自己添加 useradd 自己的设置的id)
1.修改/etc/passwd里面的oldboy用户对应的uid
vim或者vi /etc/passwd
oldboy:x:0:8893::/home/oldboy:/bin/bash,把以冒号分隔第3列改为0,然后保存。
然后用su - 切换到用户下
切换到oldboy用户下,发现还是root. 他会提示你上一次登录的信息
普通用户
UID范围C6:500-60000,C7 1000-60000
特点:权限低:
写的权限范围,限于家目录/home/用户名,/tmp。
读的权限范围,除了/root,大部分目录都可以进入。
由管理员用户root创建的,日常登录应该首先登录普通用户,然后再必要的时候切换root管理。
登录shell也是/bin/bash
普通用户如何管理系统?
示例;qq(用户id)切换到root,使用su - root (输入root密码)
oldboy不切换到root,可以使用root的权限去做事,管理员root按需要按命令给权限,
工作时候,普通用户使用sudo 命令
特点:至于赋予普通用户一部分权限,普通用户没有办法获得root权限
【虚拟】用户(【傀儡】用户)
1、虚拟用户存在的意义:
1.Linux里面的文件、进程(软件运行后)这样的东西如果要存在,
必须要有对应用户和组。
文件创建时就要有对应用户和组。进程启动时就要有对应用户和组。
2.为了安全,既需要这样的角色,但又不需要他的功能以及登录要求。
3.虚拟用户存在的目的就是满足文件存在以及进程启动时对用户和组的要求。
用普通用户行不行?行,但是权限太大了. root行不行,也行,权限更大,危险太大。
虚拟用户特点:
1.装系统之后就存在,但是不能登录。
2.UID范围往往1-499。
3.登录shell是/sbin/nologin,也就是不能登录。
3、企业生产系统安全:最小化原则:
1.安装软件最小化
2.登录安全最小化(用普通用户登录)
3.进程启动权限最小化(用植物人虚拟用户启动)。
4.文件目录权限最小化
5.卸载软件最小化(尽量不卸载)
6.删除文件最小化(尽量不删除)
一切的最小化,才能获得最大化的安全。
用户信息和用户登录日志信息
查看用户信息 id
查看当前登录用户 whoami
查看用户登录情况 w
查看当前用户登录日志 last
lastlog - 报告所有用户的最近登录情况,或者指定用户的最近登录情况
清理登录信息:lastlog -C -u oldboy ##清理登录用户信息
查看用户登录情况两个关键文件
cat /var/log/secure ##远程ssh登录日志
lastlog
查看用户登录情况关键文件
/var/log/lastlog #用户登录情况日志,使用lastlog命令访问。
/var/log/secure ##远程ssh登录日志
/var/log/messages ##Linux系统日志