当前位置: 首页 > news >正文

基础实验回顾

一、虚拟机网络设定

在这里插入图片描述
在这里插入图片描述

克隆一台node1

在node1上进行网络配置

进入网卡配置目录

# 红帽9网卡配置文件目录,其他版本不一样
[root@localhost ~]# cd /etc/NetworkManager/system-connections/

网卡配置文件

[root@localhost system-connections]# vim ens160.nmconnection

在这里插入图片描述

[root@localhost system-connections]# nmcli connection reload 
[root@localhost system-connections]# nmcli connection up ens160

二、sshd

更改sshd配置文件,允许超级用户登录

[root@localhost ~]# vim /etc/ssh/sshd_config

在这里插入图片描述

PermitRootLogin yes 允许超级用户登录,不更改Xshell连接不上

重启sshd服务

[root@localhost ~]# systemctl restart sshd
纯净实验环境
[root@localhost ~]# rm -rf ~/.ssh/
生成密钥
[root@localhost ~]# ssh-keygen -f /root/.ssh/id_rsa -P ""

-f /root/.ssh/id_rsa -f 指定密钥位置 -P ""指定密码为空

[root@localhost ~]# ssh-keygen -f /root/.ssh/id_rsa -P ""
Generating public/private rsa key pair.
Your identification has been saved in /root/.ssh/id_rsa
Your public key has been saved in /root/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:kEygDZAjI1PYKaiaCMV1bFnKR2bjzq5HS+EA49RX+hk root@localhost.localdomain
The key's randomart image is:
+---[RSA 3072]----+
|oBooo+oo*..      |
|@ =++==B.o       |
|+*.o.+*.+ E      |
|o   . .=.. o     |
|+.     oS.o      |
|+      .+        |
|       o..       |
|       .o        |
|      ..         |
+----[SHA256]-----+
上锁
# 锁root用户
[root@localhost ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub  root@172.25.254.128
[root@localhost ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub  root@172.25.254.128
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@172.25.254.128's password: Number of key(s) added: 1Now try logging into the machine, with:   "ssh 'root@172.25.254.128'"
and check to make sure that only the key(s) you wanted were added.

root用户被公钥加密成功

三、用户管理

监控动作

[root@localhost ~]# watch -n 1 "tail -n 3 /etc/passwd /etc/group;ls -l /home"

用户建立时的命令
useradd test 创建用户

userdel -r test 删除用户及其相关文件

useradd -M test 不建立用户的家目录

useradd -s /sbin/nologin test -s建立系统账号,非交互式

useradd -d /mnt test 指定用户存放的工作目录,一般为/home

四、权限管理

在Linux系统中,用户对文件或目录的访问权限除了r、w、x三种一般权限外,还有SET UID(SUID)、SET GID(SGID)、Sticky Bit(粘滞位)三种特殊权限,用于对文件或目录进行更加灵活方便的访问控制。

1、SUID 权限的含义:是为了让一般用户在执行某些程序的时候, 在程序的运行期间, 暂时获得该程序文件所属者的权限。

分析:student用户要更改自己的密码

■ student 在执行 passwd 修改自己的密码时, 其修改的密码, 最终是需要保存到 /etc/shadow

这个文件中, 而这个文件的权限是 --------- ,它的拥有者是 root ,也只有 root 可以“ 强制” 存储, 其他用户连看都不行。

■ 可偏偏 student 去执行 passwd (/usr/bin/passwd) ,却可以更新自己的密码。

这就是因为有 s 权限的存在,当 s权限在拥有者的权限位上时, 即如 -rwsr-xr-x 这样时, 称为SUID 。SUID 即 Set UID , UID 指的是拥有者的的 ID, 而这个程序 (/usr/bin/passwd) 的拥有者为(root) 。

注意:

  • suid仅对二进制文件有效。

  • 在执行过程中,调用者会暂时获得该文件的所有者权限。

  • 该权限只在程序执行的过程中有效。

# find / -perm /4000■ 0 表示为无的权限■ 4 代表拥有者的 s 权限位■ /4000 代表权限至少是4000

2、SGID 权限

SGID 可以用在两个方面:

■ 文件: 如 果 SGID 设置在二进制文件上, 则不论用户是谁,在执行该程序的时候,程序的所属组将会变成该程序文件的所属组。

■ 目录, 如 果 SGID 是设置在 A 目录上, 则在 A 目录内所建立的文件或目录的所属组, 将会是此 A目录的所属组。

一 般来说, SGID 多用在特定的多人团队的项目开发上,在系统中用的很少。

该如何查询整个系统中设置了 SGID 的文件呢 ?
# find / -perm /2000
■ 0 表示为无的权限
■ 2 代表所属组的 s 权限位
■ /2000 代表权限至少是2000

3、Sticky Bit 权限

Sticky Bit (SBit) 当前只针对目录有效, 对文件没有效果。其对目录的作用是:

■ 在 具 有 SBit 的目录下, 用户若在该目录下具有 w 及 x 权限 , 则当用户在该目录下建立文件或目录时, 只有文件拥有者与 root 才有权力删除。

例如:当 student 用户属于 A 目录的组成员或属于 other ,且拥有 wx 权限时, 可以对该目录内任何人建立的目录或文件进行“ 删除/重命名/移动” 等操作。 如果将 A 目录加上了 Sticky Bit 权限, 则 student用户只能针对自己建立的文件或目录进行“ 删除/重命名/移动” 等操作。

4、设置文件和目录的特殊权限

为文件或目录添加三种特殊权限同样可以通过chmod命令来实施,使用“u±s”、“g±s”、“o±t”的字符权限模式分别用于添加和移除SUID、GUID、sticky权限。

若使用数字形式的权限模式,可采用“nnnn”格式的四位八进制数字表示,其中:后面三位是一般权限的数字表示,前面第一位则是特殊权限的标志数字:

0——表示不设置特殊权限

1——表示只设置sticky

2——表示只设置GUID权限

3——表示只设置SGID和sticky权限

4——表示只设置SUID权限

5——表示只设置SUID和sticky权限

6——表示只设置SUID和SGID

7——表示同时设置SUID、GUID、sticky3种权限

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【密码学】椭圆曲线密码体制(ECC)
  • 基于深度学习的联邦学习
  • 【Python】任推邦近30日推广数据采集+推送
  • Open3D 计算点云的归一化协方差矩阵
  • JAVA中的重载
  • opencv-图像仿射变换
  • 北京汽车美容元宇宙:数字化浪潮下的车美服务新革命
  • JavaScript 对话框式弹出提示框 PopoverTip 实现详解
  • JavaFX布局-ToolBar
  • 【前端】JavaScript入门及实战111-115
  • 关于C/C++的编译、构建、CMake、x86_amd64等问题(自用)
  • 浅谈Trie树算法
  • 开启休假模式
  • WebSocket 协议与 HTTP 协议、定时轮询技术、长轮询技术
  • Linux 安装 Redis 6.2.14
  • 《网管员必读——网络组建》(第2版)电子课件下载
  • classpath对获取配置文件的影响
  • es6--symbol
  • JS实现简单的MVC模式开发小游戏
  • leetcode讲解--894. All Possible Full Binary Trees
  • magento 货币换算
  • NLPIR语义挖掘平台推动行业大数据应用服务
  • Python爬虫--- 1.3 BS4库的解析器
  • RedisSerializer之JdkSerializationRedisSerializer分析
  • webpack+react项目初体验——记录我的webpack环境配置
  • yii2权限控制rbac之rule详细讲解
  • 百度小程序遇到的问题
  • 关于 Cirru Editor 存储格式
  • 关于Android中设置闹钟的相对比较完善的解决方案
  • 欢迎参加第二届中国游戏开发者大会
  • 两列自适应布局方案整理
  • 实习面试笔记
  • 树莓派 - 使用须知
  • 小程序 setData 学问多
  • 原生 js 实现移动端 Touch 滑动反弹
  • 如何在招聘中考核.NET架构师
  • #Spring-boot高级
  • (Matalb回归预测)PSO-BP粒子群算法优化BP神经网络的多维回归预测
  • (webRTC、RecordRTC):navigator.mediaDevices undefined
  • (定时器/计数器)中断系统(详解与使用)
  • (二)基于wpr_simulation 的Ros机器人运动控制,gazebo仿真
  • (附源码)springboot 智能停车场系统 毕业设计065415
  • (附源码)springboot电竞专题网站 毕业设计 641314
  • (附源码)计算机毕业设计SSM智慧停车系统
  • (函数)颠倒字符串顺序(C语言)
  • (六)DockerCompose安装与配置
  • *算法训练(leetcode)第四十五天 | 101. 孤岛的总面积、102. 沉没孤岛、103. 水流问题、104. 建造最大岛屿
  • .mkp勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .net 生成二级域名
  • .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法)
  • .NetCore项目nginx发布
  • .NET教程 - 字符串 编码 正则表达式(String Encoding Regular Express)
  • @autowired注解作用_Spring Boot进阶教程——注解大全(建议收藏!)
  • @JSONField或@JsonProperty注解使用
  • @RequestMapping处理请求异常