linux三级地址,linux(二) 应等保三级要求整改方案

2023-11-10

一、身份鉴别

1.1 密码复杂度及策略

第一种

修改 /etc/login.defs 文件内容即可

# 密码最大有效期

PASS_MAX_DAYS 90

# 两次修改密码的最小间隔时间

PASS_MIN_DAYS 90

# 密码最小长度,对于root无效

PASS_MIN_LEN 8

# 密码过期前 7 天开始提示

PASS_WARN_AGE 7

第二种

vim /etc/pam.d/system-auth

password requisite pam_pwquality.so try_first_pass local_users_only remember=5 retry=3 difok=3 minlen=10 ucredit=-1 lcredit=-3 dcredit=-3 authtok_type=

retry 。就是说,如果用户输入的密码强度不够就退出。可以使用这个选项设置输入的次数,以免一切都从头再来。

remember=5 表示禁止使用最近用过的5个密码(己使用过的密码会被保存在 /etc/security/opasswd 下面)

minlen=10 表示最小密码长度为 10 类型数量,这里的 “类型数量” 表示不同的字符类型数量。PAM 提供4种类型符号作为密码(大写字母、小写字母、数字和标点符号)。如果你的密码同时用上了这4种类型的符号,并且你的 minlen 设为10,那么最短的密码长度允许是6个字符。

ucredit=-1 表示密码必须至少包含一个大写字母

lcredit=-2 表示密码必须至少包含两个小写字母

dcredit=-1 表示密码必须至少包含一个数字

ocredit=-1 表示密码必须至少包含一个标点符号

dictpath 这个是验证用户的密码是否是字典一部分的关键。

remember=5 必须在每一行 password 中后 都要添加,否则不生效

1.2 登录超时,登录次数限制

CentOS中有一个pam_tally2.so的PAM模块,来限定用户的登录失败次数,如果次数达到设置的阈值,则锁定用户。

# 终端

vim /etc/pam.d/login

# ssh连接

vim /etc/pam.d/sshd

在 #%PAM-1.0 下添加如下

auth required pam_tally2.so deny=5 unlock_time=300 even_deny_root root_unlock_time=120

在 -auth 下加入如下

account required pam_tally2.so

even_deny_root 也限制root用户;

deny 设置普通用户和root用户连续错误登陆的最大次数,超过最大次数,则锁定该用户

unlock_time 设定普通用户锁定后,多少时间后解锁,单位是秒;

root_unlock_time 设定root用户锁定后,多少时间后解锁,单位是秒;

此处使用的是 pam_tally2 模块,如果不支持 pam_tally2 可以使用 pam_tally 模块。另外,不同的pam版本,设置可能有所不同,具体使用方法,可以参照相关模块的使用规则。

查看登录失败

[root@node102 sh]# pam_tally2 --user

Login Failures Latest failure From

xulei 31 01/20/21 17:43:14 192.168.200.89

删除数据

pam_tally2 -r -u user

会话超时

vim /etc/profile

单位秒

export TMOUT=900

source /etc/profile

二、访问控制

归根到底,访问控制里面的所有要求基本就是对不同的文件和进程进行权限控制,所以就需要我们对用户进行分组管理。

作用

数据库

只负责管理数据库的用户

服务

负责业务服务或其他组件的用户

安全

负责系统安全,日志审计登的用户

先添加组

添加用户,并分配到对应的组

给组分配权限

ACL

[root@node102 ~]# getfacl ./anaconda-ks.cfg

# file: anaconda-ks.cfg

# owner: root

# group: root

user::rw-

group::---

other::---

owner 为文件所属者

group 为文件所属组

user 代表文件所属者有 读写权限

group 组内的其他人不能操作该文件

other 其他人也不能操作该文件

三、安全审计

安全审计简单的来讲就是日志,操作日志,行为日志,失败日志等。按等保要求要满足以下几点:

启用安全审计功能

审计覆盖每个用户

审计内容应包括:具体时间、用户、事件类型、事件是否成功。

定期备份审计

对审计进程或文件给与不同的权限

audit

audit 主要用来记录安全信息,用于对系统安全事件的追溯;audit 来记录内核信息,包括文件的读写,权限的改变等。

查看 auditctl 是否启动

[root@node102 ~]# auditctl -s

enabled 1

failure 1

pid 838

rate_limit 0

backlog_limit 8192

lost 0

backlog 0

loginuid_immutable 0 unlocked

里面的enabled的值即为auditd内核模块的状态,enabled 为 0 则代表auditd内核模块没有启动,系统不会记录任何信息。如果 enabled 为 1,则代表auditd内核模块正常开启,此时可以正常收集信息。如果 enabled 为 2,似乎是代表审计规则被锁定,不能修改升级规则。

而当enabled为1但auditd守护进程没有开启时,内核收集到的信息将会记录到写到/var/log/messages中。

当然,一般情况下不会出现这种状态,使用service auditd start或stop命令启动或停止auditd守护进程时,内核的状态和auditd守护进程的状态是一致的。 也就是start时,会开启auditd守护进程,同时auditd内核的enabled也会被设为1,stop时,也一样。

除非你使用auditctl -e命令特意去这么做:

[root@node102 ~]# service auditd stop

Stopping logging: [ 确定 ]

[root@node102 ~]# auditctl -e 1

enabled 1

failure 1

pid 0

rate_limit 0

backlog_limit 8192

lost 0

backlog 0

是否覆盖到每个用户和是否对重要行为、事件进行审计

我们可以通过auditctl -l查看现在运行着的审计规则(默认是无规则):

[root@node102 ~]# auditctl -l

No rules

还可以通过查看/etc/audit/audit.rules文件,得到写在配置文件中的永久审计规则:

[root@node102 ~]# cat /etc/audit/audit.rules

## This file is automatically generated from /etc/audit/rules.d

-D

-b 8192

-f 1

实际运行的规则和配置文件中写的规则有什么区别吗?对于实际运行的规则,你可以临时的增加、删除、修改(服务重启就恢复原样)。 而对于写在配置文件中的规则,如果你修改了配置文件却没有重启服务,那么你修改的也不会生效。

audit的审计规则大概有两类:一类是对文件的监控,一类是对系统调用的监控。

例1:监控 /etc/my.cnf 文件,只要在文件加如以下内容

-w /etc/my.cnf -p wa

-w 路径

-p 权限 如果没有 -p 选项,则默认监视所有动作 rwxa(读、写、执行、修改文件属性)

-k 关键字

例2:监控系统调用行为,监视文件权限变化,因为改变权限必须调用umask

-a entry,always -S umask -S chown

-a always 总是记录审计;none 不记录;exit 行为完成后记录审计;entry 行为刚刚开始 时记录审计

-S 系统调用名称

-F 字段=值

-k 关键字

请查阅系统调用列表后决定监控那种行为,系统调用是底层的、全局性的,监控不合适的调用,会给系统带来巨大负担。

备份

复制以下脚本,并添加到定时任务中,每天执行一遍即可

#!/bin/bash

# 日志位置

FILE=/var/log/audit/audit.log

current_time=`date +%y%m%d`

cat $FILE |while read LINE

do

Udate=`echo $LINE|awk -F'[(.]+' '{print $2}'`

#Udate=`echo $LINE|awk -F. '{print $1}' | awk -F'(' '{print $2}'`

Cdate=`date -d @$Udate`

echo $LINE|sed "s/[0-9]\{10\}/$Cdate/" >> /home/sh/log/audit${current_time}.log

done

对于内容不理解的看这里

权限

audit.log 默认只有root有读写权限,其余人全没有

[root@node102 audit]# ll

total 13536

-rw-------. 1 root root 5456443 Jan 22 11:52 audit.log

-r--------. 1 root root 8388686 Oct 18 03:01 audit.log.1

audit.rules 默认如下,我们把组的读权限也去掉,保证绝对安全。(命令:chmod g-r audit.rules)

[root@node102 audit]# ll /etc/audit/audit.rules

-rw-r-----. 1 root root 81 Jun 15 2020 /etc/audit/audit.rules

然后就是我们每天的备份文件,权限也是一样,要么只给安全组用户可读权限,要么就只有管理员最高权限。

四、入侵防范

应遵循最小安装的原则,仅安装需要的组件和应用程序;

应关闭不需要的系统服务、默认共享和高危端口;

应通过设定终端接入方式或网络地址范围对通过网络进行管理的管理终端进行限制;

一般我们安装的centos7及以上都是系统默认的软件以及端口,相对于来说一个刚装好的centos应该是安全的,所以我们只需要关注我们程序业务需要哪些端口或应用包即可。而防火墙应该都是默认开启原则,我们需要端口被允许访问的话,我建议使用 iptables 命令,写到一个脚本中,当启动的时候执行脚本就行。

写到这里就是目前能做到的,其余大家可以自己看看,有些需要购买杀毒软件装入。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

linux三级地址,linux(二) 应等保三级要求整改方案 的相关文章

  • 【计算机网络】TCP报文段详解

    本文为借阅书籍资料 观看他人博客总结得出 欢迎提问 一 前期说明 TCP虽然是面向字节流的 但是在网络中的传输单元确实是报文段的格式 一个TCP报文段分为首部和数据两个部分 而协议的全部实现都在TCP报文段的首部体现出来的 只有先理解首部各
  • 【计算机视觉】ViT:代码逐行解读

    文章目录 一 代码 二 代码解读 2 1 大体理解 2 2 详细理解 一 代码 import torch import torch nn as nn from einops import rearrange from self attent
  • 如何调整图片分辨率大小(适用于电脑/手机)

    随着智能手机快速发展 相机分辨率也从几百万像素升级到上千万 甚至上亿像素 超高像素的图片不仅会占用越来越多的存储空间 还会在上传和分享时耗费不少时间 而且在一些特殊APP或者网站上传图片时 可能对图片宽高分辨率有要求 这些时候 就需要我们调
  • ARP Proxy

    ARP Proxy原理 当主机没有配置网关 发一个请求目的MAC地址 ARP Proxy会使用自己的MAC地址作为该ARP请求的的回应 分类 路由式ARP Proxy 实现同一网段 请求的是目的MAC地址 不同物理位置 中间有三层设备 的互
  • 开源大模型详解

    作者 Linux猿 简介 CSDN博客专家 华为云享专家 Linux C C 云计算 物联网 面试 刷题 算法尽管咨询我 关注我 有问题私聊 欢迎小伙伴们点赞 收藏 留言 本篇文章主要对开源大模型进行总结和介绍 一 什么是大模型 大模型指网
  • 吐槽记~(这个帖子是我的垃圾桶)~哈哈

    我倒是要看看tamen到底有多少该吐槽的点 一 令人窒息的业务 初见 1 收到原始需求文档 涉及前后端开发 涉及流程 但是无流程图 无UI图 全文字描述 2 过需求会议 来一份会议纪要 加20个修改点 3 再来一个会议 提出15个修改点 开
  • mpvue小程序实战项目开发记录篇(二)

    六 mpvue的能力 1 彻底的Vue组件化开发能力 提高代码复用性 2 完整的vue开发体验 3 快捷的 webpack 构建机制 开发阶段 hotReload 4 支持npm安装依赖 5 使用 Vue js 命令行工具 vue cli
  • 手机闪存速度排行_手机闪存性能排行

    手机专用闪存主要分为eMMC和UFS两大类别 前者仅支持并行读写 即半双工运行 读写必须分开执行 哪怕是最新的eMMC5 1标准其顺序读取和写入速度也不过300MB s和200MB s左右 常见于售价低于千元的入门级4G手机市场 UFS自诞
  • Win10 某个移动硬盘不自动分配盘符

    简单来说就是某个移动硬盘不自动分配盘符 每次都要到磁盘管理里面手动分配盘符 而且每次删除设备后 手动分配的盘符不消失 1 使用管理员启动 CMD 命令提示符 2 输入 diskpart 3 列出磁盘 list disk 4 选择磁盘 sel
  • 创建动态数组键盘输入一个正整数 n,创建大小为 n 的数组(采用动态数组的方式),将数组中的元素初始化为 n、n+1、...、2n - 1。并输出数组中的元素。输入描述:键盘输入一个正整数 n输

    include
  • 【QT 网络云盘客户端】——实现文件属性窗口

    目录 文件属性对话框 设置字体样式 获取文件的信息 显示文件属性对话框 当我们点击文件中的属性 则会弹出一个属性对话框 实现过程 0 设置 属性 菜单项的槽函数 1 鼠获取鼠标选中的QListWidgetItem 它包含 图标和文件名 2
  • 代码重构与单元测试——重构1的单元测试(四)

    四 重构1的vb net教程单元测c 教程试 程序开发过程中 写代码是为了实现需求 当我们的代码通过了编译 只是说明它的语法正确 功能能否实现则不能保证 因此 当我们的某些功能代码完成后 为了检验其是否满足程序的需求 可以通过编写测试代码
  • java自动化测试语言高级之多线程编程

    java自动化测试语言高级之多线程编程 Java 多线程编程 Java 给多线程编程提供了内置的支持 一条线程指的是进程中一个单一顺序的控制流 一个进程中可以并发多个线程 每条线程并行执行不同的任务 多线程是多任务的一种特别的形式 但多线程
  • Fiddler工具使用汇总

    Fiddler工作原理 fiddler作为一个代理服务器 跟浏览器建立连接之后 浏览器像目标服务器发送的请求都会经过fiddler代理 所以fiddler可以捕获到http s 请求 从而可以解释 分析 甚至重写发出去的http s 请求
  • Conda、pip下载包:PackagesNotFoundError: The following packages are not available from current channels:

    1 问题 安装包的时报下面错误 安装包之前查一下当前环境对应的包的版本 conda search 包名 2 解决方法1 报错原因是当前镜像中不存在这个包 解决方法如下 直接去官网https anaconda org 搜包名 找到对应的版本点
  • ESXI虚拟机 - 使用vmdk虚拟机转换为OVF模板,导入ESXI

    目录 一 前提条件 二 转换为OVF模板 三 导入ESXI系统 四 安装时可能会出现的问题 一 前提条件 已安装VMware Workstation 并且创建了一个的虚拟机 此处以win8 1为例 已存在ESXI系统 二 转换为OVF模板
  • 包装类Integer判断“==”相等

    今日小编在复习Java基本数据操作类是发现的遗忘问题 是Integer的 比较问题 与大家进行分享 示例代码如下 public class IntegerComparison public static void main String a
  • 四因素三水平正交试验表_最简单的正交试验教程,一次性搞懂它

    大家好 今天要分享的是正交试验设计与结果检验过程 正交试验设计时试验优化的常用技术 它可以通过科学合理地设计 达到用较少的试验次数 取得较为准确可靠的结果 正交试验设计一般包括以下几步 确定研究因素和指标水平 制作成正交试验表格 实施试验
  • seaborn简明教程(一)

    1 Seaborn简介 seaborn是基于matplotlib的数据可视化库 它在matplotlib的基础上 进行了更高级的API封装 从而使得绘图更加容易 不需要经过大量的调整 就能使图形变得精致 seaborn的几个鲜明特点如下 绘

随机推荐

  • 使用docker部署fastdfs集群版

    一 前言 本文档说明在node01和node02两台主机上安装部署FastDFS双节点 node01 ip 198 168 1 121 安装tracker1 storage1 node02 ip 198 168 1 122 安装tracke
  • 2020年,给你7个程序员接私活必备网站!

    2020互联网圈不好混 不是每个公司都能像蚂蚁金服一样这么大气 不少公司今年因为疫情已经开始裁员 不要抱怨 加油干就完事了 今天给大家推荐几个赚钱养家的好渠道 一起来看看吧 1 程序员客栈 程序员的经纪人 https www proginn
  • Python人员信息管理系统(简直期末人福音)

    1 涉及模块 datetime os random sys PyQt5 2 运行效果 支持功能 添加信息 修改信息 删除信息 查询信息 文件存储数据 每次运行都会加载显示之前的信息 3 部分源码 创建字体对象 用来对要显示的文字进行设定fo
  • IIS 网站安装SSL证书

    步骤一 申请SSL证书 申请免费证书步骤 阿里云申请免费证书步骤 申请完成后 等待证书签发 签发后下载到本地 解压缩后会得到如下两个文件 一个证书文件 一个密码文件 步骤二 将文件复制到服务器上 双击证书文件安装 安装选计算机 安装过程中要
  • Graph Stacked Hourglass Networks for 3D Human Pose Estimation

    方法重复使用编码器 解码器 图形结构特征在三种不同尺度的骨骼中表示 获取局部和全局特征 使用不同深度中间特征的多层次特征学习方法 目前的基于GCN的方法有一些局限性 图卷积利用所有关节点信息 可以看做是所有特征仅在 一个尺度 上处理 很难获
  • 安全类常用网站

    目录 Burp Suite Burpsuite学院 安全测试常用的几个工具 Burp Suite Burp Suite Application Security Testing Software PortSwiggerGet Burp Su
  • UniswapV2核心合约学习(3)——UniswapV2Pair.sol

    记得朋友圈看到过一句话 如果Defi是以太坊的皇冠 那么Uniswap就是这顶皇冠中的明珠 Uniswap目前已经是V2版本 相对V1 它的功能更加全面优化 然而其合约源码却并不复杂 本文为个人学习UniswapV2核心合约源码的系列文章的
  • k8s指南-DNS与服务发现

    目录 1 k8s指南 概述 2 k8s指南 架构 3 k8s指南 工作负载 1 4 k8s指南 工作负载 2 5 k8s指南 工作负载 3 6 k8s指南 工作负载 4 7 k8s指南 Service 8 k8s指南 Ingress 9 k
  • Apache APISIX信息泄露漏洞(CVE-2022-29266)

    目录 漏洞概述 漏洞复现 环境搭建 攻击复现 漏洞概述 在2 13 1版本之前的APache APISIX中 攻击者可以通过向受 jwt auth 插件保护的路由发送不正确的 JSON Web 令牌来通过错误消息响应获取插件配置的机密 依赖
  • 百度、德勤管理咨询联合发布《知识中台白皮书》,聚焦企业知识赋能高效创新...

    近日 十九届五中全会审议通过的十四五规划36次提及科技 其中人工智能成为最高优先级 引领新一轮科技革命和产业革命的战略性技术 在十四五规划中发挥着关键作用 百度作为国内人工智能的头雁企业 致力于发挥 AI 技术领域多年积累的优势 以云计算为
  • 3. 内存管理(Memory Management)

    计算机有几兆字节的非常快速 昂贵 且易变的 cache memory 几千兆字节的中速 中等价格 易变的 main memory 以及几千兆字节缓慢 便宜 非易变的磁盘 固态硬盘存储 不涉及可移除的存储 例如 DVDs 和 USB 存储器
  • 再见以前说再见 数据结构复习

    数据结构 实验14 15 基本排序算法实现 数据结构 实验12 13 基本查找算法实现 数据结构 实验10 11 图及其应用 数据结构 实验7 9 二叉树的基本操作和应用 数据结构 实验六 模式匹配 数据结构 实验五 队列的算法实现及应用
  • 配置setting.json解决vscode和vim按键冲突

    vim 对于需要经常使用的vscode中的复制 粘贴 剪切 全选 查找和新建等 在vim正常模式下是不可用的 不过可以在配置文件中取消vim handleKeys键位映射 即保留这些原始按键功能 对于上述可能存在和正常按键冲突 可以通过设置
  • LeetCode 1、两数之和(C)

    作者只是一个小白 最近希望能提升自己的代码水平 所以开始刷leetcode 写博客是为了整理自己的学习内容 难免会出错 如果有大大发现 非常欢迎指正哦 目录 题目 1 两数之和 题解 方法一 双重for循环 暴力枚举 1 自己的代码 2 代
  • 数据库键(key)、主键(primaryKey)、索引(index)、唯一索引(uniqueIndex)区别

    1 键 key 数据库的物理结构 一是约束 偏重于约束和规范数据库的结构完整性 二是索引 辅助查询用的 包括 primary key unique key foreign key 主键 唯一键 外键 1 primary key 主键 一个表
  • IKE与IPSec详解

    一 IKE简介 安全联盟SA 定义 安全联盟是要建立IPSec 隧道的通信双方对隧道参数的约定 包括隧道两端的IP地址 隧道采用的验证方式 验证算法 验证密钥 加密算法 共享密钥以及生命周期等一系列参数 SA由三元组来唯一标识 这个三元组包
  • Could not find method jackOptions() for arguments

    去掉 jackOptions enabled true 就好了
  • 【软件工程基础复习整理】第四章需求分析(5)UML建模语言

    结构化方法 数据流建模 IDEF0功能建模 IDEF1X数据建模 数据和功能分开 面向对象方法 封装起来 UML建模语言 面向对象方法的统一建模语言 UML建模语言 结构化方法70年代高潮 面向对象方法80年代末90年代初高潮 多种面向对象
  • /* px-to-viewport-ignore-next */ 注释无效解决方法

    进入github https github com evrone postcss px to viewport 因为npm库里对postcss to viewport的代码更新停了所以npm install的是之前有bug的代码 用项目里的
  • linux三级地址,linux(二) 应等保三级要求整改方案

    一 身份鉴别 1 1 密码复杂度及策略 第一种 修改 etc login defs 文件内容即可 密码最大有效期 PASS MAX DAYS 90 两次修改密码的最小间隔时间 PASS MIN DAYS 90 密码最小长度 对于root无效