目录
一、权限管理
1. 用户和组
(1)相关概念
用户 是 Linux 系统 中的一个 账户,代表 一个操作者 或 一个 服务进程。每个用户 都有一个 唯一的 用户名 和 身份标识(UID)。用户 登录系统时,需要 提供 有效的 用户名 和 密码,以 验证其身份。用户根据其身份 可以访问 特定的 文件和资源。
- 文件和目录的 权限设置 决定了 哪些用户 可以读取、写入或执行它们。每个用户 都有 自己的 家目录(如 /home/username),用于 存储 个人文件和配置。这提供了一定程度的隐私和安全隔离。
组 是一组用户的 集合,它 允许 对多个用户 应用相同的 权限设置。通过 将用户 添加到 组中,管理员 可以 轻松地 为组内的 所有用户 设置相同的 文件 和 目录权限。
- 组 可以用来 控制 对共享资源的 访问,如打印机、文件服务器等。组成员 可以 共享 相同的 文件和目录,方便协作 和 数据共享。
- 组 简化了 权限分配 和 管理的 过程。例如,通过 更改 组权限,可以 一次性 更新 组内 所有用户的权限,而不需要 单独 更改每个用户。
- 组策略 可以 限制 对敏感数据的 访问,提高 系统的 安全性。通过 将用户 分配到 不同的组,可以更好地 控制 对敏感资源的 访问。
(2)用户命令
① useradd(添加新的用户账号)
useradd 选项 用户名
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
② userdel(删除帐号)
userdel 选项 用户名
-r 把用户的主目录一起删除
③ usermod(修改帐号)
usermod 选项 用户名
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
④ passwd(用户密码的管理)
passwd 选项 用户名
-l 锁定口令,即禁用账号。
-u 口令解锁。
-d 使账号无口令。
-f 强迫用户下次登录时修改口令。
默认用户名,则修改当前用户的口令。
(3)组命令
① groupadd(增加一个新的用户组)
groupadd 选项 用户组
-g GID 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
② groupdel(删除一个已有的用户组)
groupdel 用户组
③ groupmod(修改用户组的属性)
groupmod 选项 用户组
-g GID 为用户组指定新的组标识号。
-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n新用户组 将用户组的名字改为新名字
(4)与用户账号有关的系统文件
① /etc/passwd 文件
Linux 系统中的 每个用户 都在 /etc/passwd 文件中 有一个 对应的 记录行,它 记录了 这个用户的 一些 基本属性。

用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
- 用户标识号:系统内部 用它来 标识用户。通常 用户 标识号的 取值范围是 0~65 535。0 是 超级用户 root 的标识号,1~99 由 系统保留,作为 管理账号,普通用户 的 标识号从 100 开始。在 Linux 系统中,这个 界限是 500。
- 组标识号:记录的是 用户 所属的 用户组。它对应着 /etc/group 文件中的 一条记录。
- 主目录:用户的 起始 工作目录。它是 用户在 登录到 系统之后 所处的 目录。在 大多数系统中,各 用户的 主目录都 被组织在 同一个 特定的 目录下,而 用户 主目录的 名称 就是 该用户的 登录名。各 用户对 自己的 主目录有读、写、执行(搜索)权限,其他用户 对此目录的 访问 权限则 根据 具体情 况设置。
- Shell:用户登录后,要 启动一个进程,负责 将用户的 操作传给 内核,这个 进程是 用户 登录到 系统后 运行的命令 解释器 或 某个特定的 程序。
② /etc/shadow 文件
对 安全性 要求 较高的 Linux 系统都 把加密后的 密码字 分离出来,单独 存放在 一个文件中,这个文件是 /etc/shadow 文件。 有 超级用户 才拥有 该文件 读权限,这就 保证了 用户密码 的安全性。

登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
- 登录名:是 与 /etc/passwd 文件中的 登录名 相一致的 用户账号。
- 密码字段:存放的是 加密后的 用户 口令字,长度为 13 个 字符。如果 为空,则 对应 用户 没有口令,登录时 不需要 口令;如果 含有 不属于 集合 { ./0-9A-Za-z } 中的 字符,则 对应的 用户 不能登录。
- 最后一次修改时间:表示的是 从某个 时刻起,到 用户最后 一次 修改口令时的 天数。时间 起点 对 不同的 系统可能 不一样。
- 最小时间间隔:指的是 两次 修改口令 之间 所需的 最小天数。
- 最大时间间隔:指的 是口令 保持有效的 最大天数。
- 警告时间:字段 表示的是 从系统 开始 警告用户到 用户密码 正式失效之间的 天数。
- 不活动时间:表示的是 用户 没有登录活动 但账号 仍能保持 有效的 最大天数。
- 失效时间:字段 给出的是一个 绝对的 天数,如果 使用了 这个字段,那么 就给出 相应账号的 生存期。期满后,该账号就不再是一个 合法的账号,也就不能 再用来登录了。
③ /etc/group 文件
将 用户 分组是 Linux 系统中 对用户 进行 管理及控制 访问权限的 一种手段。每个 用户 都属于 某个 用户组;一个 组中 可以有 多个用户,一个 用户 也可以 属于 不同的组。当一个 用户同时是 多个组中的 成员时,在 /etc/passwd 文件中 记录的是 用户所属的主组,也就是 登录时 所属的 默认组,而其他组 称为 附加组。

组名:口令:组标识号:组内用户列表
- 组名:是 用户组的 名称,由 字母或数字 构成。与 /etc/passwd 中的 登录名一样,组名 不应 重复。
- 口令:字段 存放的是 用户组 加密后的 口令字。一般 Linux 系统的 用户组 都没有口令,即 这个字段一般为空,或者是*。
- 组标识号:与 用户标识号 类似,也是一个 整数,被 系统内部 用来 标识组。
- 组内用户列表:是 属于这个组的 所有用户的 列表,不同 用户之间用 逗号(,)分隔。这个 用户组 可能是 用户的主组,也可能是 附加组。
2. 文件基本属性
在 Linux 中我们可以使用 ll 或者 ls –l 命令来显示一个文件的属性以及文件所属的用户和组。


(1)文件类型
- d :目录文件。
- - :文件。
- l :表示为 链接文档(link file)。
- b :表示为 装置文件里面的可供储存的接口设备(可随机存取装置)。
- c :表示为 装置文件里面的 串行端口设备,例如键盘、鼠标(一次性读取装置)。
(2)文件权限
接下来的 字符中,以 三个 为一组,且均为 rwx 的三个参数的 组合。其中, r 代表可读(read)、 w 代表可写(write)、 x 代表可执行(execute)。


(3)chgrp 更改文件属组
chgrp [-R] 属组名 文件名
-R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上 -R 的参数,那么该目录下的所有文件的属组都会更改。
(4)chown 更改文件属性
① 更改文件所有者(owner)、更改文件所属组
chown [–R] 所有者 文件名
chown [-R] 所有者:属组名 文件名
② 更改文件 9 个属性
Linux 文件属性有 两种设置方法,一种是数字,一种是符号。Linux 文件的 基本 权限 就有 九个,分别是 owner/group/others(拥有者/组/其他)三种身份 各有 自己的 read/write/execute 权限。
// 数字修改
chmod [-R] xyz 文件或目录
xyz : 数字类型的权限属性,为 rwx 属性数值的相加。
-R : 进行递归(recursive)的持续变更,以及连同次目录下的所有文件都会变更

二、进程相关
1. ps(显示进程状态)

(1)显示系统中全部的进程信息
ps aux

(2)查找当前系统运行状态中指定的进程信息
ps -ef | grep ssh
// 以ssh为例

(3)当前系统运行状态中指定用户的进程信息

2. top(实时显示系统运行状态)

top -d 5 // 每隔5秒刷新一次信息
top -n 5 // 设定总显示次数为5次,随后自动退出
3. kill(杀死进程)

(1)结束某个指定的进程(数字为对应的 PID 值)
kill 9999
(2)强制结束某个指定的进程(数字为对应的 PID 值)
kilL -9 9999
4. netstat(显示网络状态)

(1)显示系统网络状态中的所有连接信息
netstat -a

(2)显示系统网络状态中的 UDP 连接信息
netstat -nu

(3)显示系统网络状态中的 UDP 连接端口号使用信息
netstat -apu

(4)查找端口号被哪个进程占用了
netstat -tlnp | grep 端口号

(5)显示网卡当前状态信息
netstat -i

(6)显示网络路由表状态信息
netstat -r

(7)找到某个服务所对应的连接信息
netstat -ap | grep ssh


602

被折叠的 条评论
为什么被折叠?



