linux中的系统安全
一.账号安全

将非登录用户的shell设为/sbin/nologin
系统中用户有三种:超级管理员 普通用户 程序用户
前两种用户可以登录系统,程序用户不给登录 所以称为非登录用户
命令格式: usermod -s /sbin/nologin(改已有用户)
锁定长期不使用的账号
passwd -l 用户 或者 usrmod -L 用户
解锁:passwd -u 用户 或者usrmod -U 用户
删除无用的账号
userdel 用户
锁定账号文件 passwd shadow
passwd 存账户信息 shadow存账户密码
锁定这两个文件安全
命令格式:chattr +i 文件
lsattr 查看特殊权限
操作如下
没设置chattr之前,vim a 文件时是可以进去编辑的



当编辑a文件时 wq要保存时,显示保存不了

然后再进入vim a 文件中 文件内容不变

解锁文件 :chattr - i
操作如下:

解锁完可以编辑文件内容

密码安全控制
设置密码规则、修改密码配置文件

对新建用户密码规则:



对于已有用户修改密码规则
命令:chage 参数 用户名
修改密码的有效期 chage - M 数字 用户


如果不知道参数 可以chage 用户名 直接回车 会自动回显

chage - d 0 用户名 用户在下次登录时必须修改密码


命令历史的限制
默认的历史命令为1000条

如果要临时删除时 命令格式:history -c 之前的命令就看不见了

永久清除历史命令
历史命令都存储在bash.history中 如果要清除 就要把里面的命令清空

有三种方式
1.退出后清除 ~/.bash_logout
2.开机后清除 ~/.bashrc (对自己有效、对当前用户生效)
3.对所有用户有效,不仅仅是root下的用户 /etc/profile

操作如下:

表明将history都写成空格
终端自助注销 设置闲置多少秒之后 会登出系统
设置所有用户闲置10秒自动退出 进入/etc/profile中


使用su命令切换用户
su 不加— 代表不完整的切换 意思就是下一个用户会继承上一用户的所有东西 什么都没变
su 加— 代表完整切换 意思就是说下一个用户不会继承上一用户的东西,两者不一样

两者变量一模一样
当 su - 时

root与张三的变量改变
密码验证
root 切换到普通用户不需要验证密码
普通用户互相切换 验证需要密码

linux中的PAM认证
pam模块类似于一个插件,别人吧功能写好,放这。如果需要用 则把模块调过来即可。
查看pam 详细信息

查看pam的目录

点so结尾 代表功能模块

当用户来访问某一程序,如果这一程序启用了pam模块,它会先去读取配置文件,然后按照配置文件调用模块进行操作 !!!
进入到配置文件中:

tcp中 auth:账号的认证与授权 看此账号是否存在
accout :看此账号的有效性(限制或允许用户对某个服务的访问时间 在什么时间段可以访问或拒绝访问)
passwd :看密码对不对跟复杂性
session:用户会话期间的控制,可在以使用多少资源
control中

shell模块


进入到shell的组 把/bin/sch删除



当/bin/sch被删除时,就不在shell列表里,就不能通过

总结:当设置shell模块(pam_shells.so)时,只有shell类型里面的内容才可以通过,不在shell类型(/etc/shell)里面的 通过不了
pam_nologin.so模块 如果要维护的情况下可以使用这一模块

在etc下面建立一个nologin的文档
不影响su功能
但是登录不了系统

所以如果有/etc/nologin的文件存在 普通用户是登录不了系统的

补充tips :


此时此刻boot用户还是可以切换普通用户的
当把wheel的#(代表注释)去掉之后,意味着只能是wheel组里面的用户才可以使用

此时再看一下 root 切换普通用户的状态 是不给登录的

如果要改变 就把root加入到wheel组中 又可以切换了

总结:
limit模块 控制进程占用资源
ulimit - a 可以查看limit里面的所有选项

limits 在/etc/security文件夹中


pgrep - l - u liwu (仅查看liwu的进程并且进程的名字)
当一开始只有一个进程的时候 输入四个进程 超过五个显示没有子进程


参数详细解答
例如 nofile 设置打开的文件数目


因为之前nofile设置的是1024 当用1025测试时,可以超过了

此时再压力测试 就没有问题了
注释: ab 是压力测试 测试一个终端在同一时间能干几件事情 如上图 同一时间接收1025个文件 总共接收5000个文件
压力测试 来源于httpd-tools 包

sudo
sudo命令的缺点:如果不去设置 任何人都能切换到root上
sudo 提权操作
sudo相当于一个程序,写一条命令 可以su让用户(用户一开始没有使用这个命令的权利)去使用
sudo的配置文件在 visudo中


举例操作:
此时liwu还没有挂载的权限
如果想要liwu拥有挂载的权限 就要修改visudo
命令要写绝对路径 用which mount查

此刻再验证一下liwu的mount权限 此时挂载成功

! 取反的意思 liwu无法挂载

nopasswd 无需输入密码 限时五分钟 在这五分钟之内不需要输入密码
子目录

主配置文件放置一些重要文件 子配置文件放置用户的个性化配置 当一次性有20个配置文件,为了方便管理 设置子配置文件,为了方便管理.如果不设置的情况下 改主配置文件,里面的二十个用户都会被改变

当设置完自配置文件之后,先执行子配置文件,再执行主配置文件的命令
别名
nmap (网络扫描工具)

相关文章:
linux中的系统安全
一.账号安全 将非登录用户的shell设为/sbin/nologin 系统中用户有三种:超级管理员 普通用户 程序用户 前两种用户可以登录系统,程序用户不给登录 所以称为非登录用户 命令格式: usermod -s /sbin/nologin(改已有用户&#…...
LeetCode(209)长度最小的子数组⭐⭐
给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的 连续 子数组,并返回其长度。如果不存在符合条件的子数组,返回 0。 示例: 输入:s 7, nums [2,3,1,2,4,3]输出:2…...
【JAVA】MySQL中datetime类型23:59:59自动变为下一天的00:00:00
如:2024-08-11 23:59:59 变成了 2024-08-12 00:00:00。 解析:数据库入库的时候会有500毫秒的进位,然而程序在赋值时间给变量的时候很大概率会超过500ms,有时是999ms。 解决方案 // DateUtil Hutool官网 将生成的时间往前偏移99…...
Unity游戏内相机(主角头部视角)的旋转问题:“万向节锁定”(Gimbal Lock)
前言: 在Unity中,相机的正前方是Z正半轴,相机的正右方是X正半轴,相机的正上方是Y正半轴。这个很好理解。 现在,我想要相机看向左前上方45,你会觉得要怎么做呢? 如果是我的话,我的第一…...
Keras实现seq2seq
概述 Seq2Seq是一种深度学习模型,主要用于处理序列到序列的转换问题,如机器翻译、对话生成等。该模型主要由两个循环神经网络(RNN)组成,一个是编码器(Encoder),另一个是解码器…...
1080p 1k 2k 4k 8k 分辨率,2K就不应该存在。
众所周知 1K(1080P):分辨率为19201080像素,2K:分辨率为25601440像素4K:分辨率为38402160像素8K:分辨率为76804320像素 边长比例,和像素比例如下: 2K宽高都是1k的1.333…...
接口芯片选型分析 四通道差分驱动可满足ANSI TIA/EIA-422-B 和ITU V.11 的要求 低功耗,高速率,高ESD
四通道差分驱动可满足ANSI TIA/EIA-422-B 和ITU V.11 的要求 低功耗,高速率,高ESD。 其中GC26L31S可替代AM26LS31/TI,GC26L32S替代AM26LS32/TI,GC26E31S替代TI的AM26LV31E...
使用.Net nanoFramework获取ESP32板载按键的点击事件
本文以 ESP32-S3-Zero 板载的按键为例,介绍了GPIO的使用方法,以及如何获取按键的点击事件。板载按钮作为自带的天然用户按钮,除了其本身的功能外,也可以作为某些应用场景下的简单的交互方式。 1. 引言 对于一般的产品来说&#x…...
安全远控如何设置?揭秘ToDesk、TeamViewer 、向日葵安全远程防御大招
写在前面一、远程控制:安全性不可忽略二、远控软件安全设置实测 ◉ ToDesk◉ TeamViewer◉ 向日葵 三、远控安全的亮点功能四、个人总结与建议 写在前面 说到远程办公,相信大家都不陌生。远程工作是员工在家中或者其他非办公场所上班的一种工作模式&am…...
Spring AOP(详解)
目录 1.AOP概述 2.AOP相关术语 3.Spring AOP的原理机制 3.1JDK动态代理 3.2 CGLIB动态代理 3.3简单代码展示 3.3.1JDK动态代理 3.3.2CGLIB动态代理 4.Spring的AOP配置 4.1pom.xml 4.2增强方法 4.3切点 4.4切面 5.基于注解的AOP配置 5.1.创建工程 5.2.增强 5.3AOP…...
Linux系统编程之进程
目录 1、进程关键概念 1.什么是程序,什么是进程,有什么区别 2.如何查看系统中有那些进程 3.什么是进程标识符 4.什么叫父进程,什么叫子进程 5.C语言的存储空间是如何分配的 2、进程创建 1.fork函数创建进程 2.vfork函数创建进程 3、…...
Vue中使用require.context自动引入组件的方法介绍
我们项目开发中,经常需要import或者export各种模块,那么有没有什么办法可以简化这种引入或者导出操作呢?答案是肯定的,下面就为大家介绍一下require.context require.context 是 webpack 提供的一个 API,用于创建 con…...
Java 监控诊断利器 Arthas monitor/watch/trace 命令使用详解
目录 一、命令介绍二、测试Demo三、命令使用示例3.1、monitor 命令3.1.1、监控primeFactors方法调用情况(5秒一个周期,每过5秒将这5秒统计的信息输出)3.1.2、监控primeFactors方法调用情况(5秒一个周期,每过5秒将这5秒…...
论文阅读:基于MCMC的能量模型最大似然学习剖析
On the Anatomy of MCMC-Based Maximum Likelihood Learning of Energy-Based Models 相关代码:点击 本文只介绍关于MCMC训练的部分,由此可知,MCMC常常被用于训练EBM。最后一张图源于Implicit Generation and Modeling with Energy-Based Mod…...
【Verilog】期末复习——设计一个带异步复位端且高电平有效的32分频电路
系列文章 数值(整数,实数,字符串)与数据类型(wire、reg、mem、parameter) 运算符 数据流建模 行为级建模 结构化建模 组合电路的设计和时序电路的设计 有限状态机的定义和分类 期末复习——数字逻辑电路分…...
基于springboot的java读取文档内容(超简单)
读取一个word文档里面的内容,并取出来。 代码: SneakyThrowsGetMapping(value "/readWordDoc")ApiOperationSupport(order 1)ApiOperation(value "文档读取 ", notes "文档读取 ")public R ReadWordDoc () {System.o…...
K8S亲和性,反亲和性,及污点
nodeName:硬匹配,不走调度策略 nodeSelector:根据节点的标签选择,会走调度的算法 只要是走调度算法,在不满足预算策略的情况下,所有pod都是pending node节点的亲和性: 硬策略:必…...
2024年,AI、Web3、区块链、元宇宙:有没有“相互成就“的可能性?
加密圈最近有点冷清,曾经是科技界的宠儿,去年中旬开始一直在被SEC的诉讼困扰着,而且正处冷清的熊市,被迫居于 AI 后面的次要地位。 曾在 Web3 领域活跃并具有影响力的企业家 Jeremiah Owyang 住在旧金山,目前也深入研…...
Mac电脑好用的修图软件:Affinity Photo 2中文 for Mac
Affinity Photo 2提供了广泛的图像编辑和调整工具,使用户能够对照片进行精确的编辑和改进。它支持图像裁剪、旋转、缩放、变形等操作,以及曝光、色彩、对比度、饱和度等调整。 非破坏性编辑:软件采用非破坏性编辑方式,即对原始图…...
数据结构之Radix和Trie
数据结构可视化演示链接,也就是视频中的网址 Radix树:压缩后的Trie树 Radix叫做基数树(压缩树),就是有相同前缀的字符串,其前缀可以作为一个公共的父节点。同时在具体存储上,Radix树的处理是以…...
Leetcode 3577. Count the Number of Computer Unlocking Permutations
Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...
最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...
自然语言处理——Transformer
自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效,它能挖掘数据中的时序信息以及语义信息,但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN,但是…...
均衡后的SNRSINR
本文主要摘自参考文献中的前两篇,相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程,其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt 根发送天线, n r n_r nr 根接收天线的 MIMO 系…...
Linux离线(zip方式)安装docker
目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1:修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本:CentOS 7 64位 内核版本:3.10.0 相关命令: uname -rcat /etc/os-rele…...
(一)单例模式
一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...
零知开源——STM32F103RBT6驱动 ICM20948 九轴传感器及 vofa + 上位机可视化教程
STM32F1 本教程使用零知标准板(STM32F103RBT6)通过I2C驱动ICM20948九轴传感器,实现姿态解算,并通过串口将数据实时发送至VOFA上位机进行3D可视化。代码基于开源库修改优化,适合嵌入式及物联网开发者。在基础驱动上新增…...
如何在Windows本机安装Python并确保与Python.NET兼容
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...
yaml读取写入常见错误 (‘cannot represent an object‘, 117)
错误一:yaml.representer.RepresenterError: (‘cannot represent an object’, 117) 出现这个问题一直没找到原因,后面把yaml.safe_dump直接替换成yaml.dump,确实能保存,但出现乱码: 放弃yaml.dump,又切…...


