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

【银河麒麟高级服务器操作系统】安全配置基线相关分析全过程及解决方案

了解更多银河麒麟操作系统全新产品,请点击访问

麒麟软件产品专区:https://product.kylinos.cn

开发者专区:https://developer.kylinos.cn

文档中心:https://documentkylinos.cn

服务器环境以及配置

【机型】物理机或虚机

【内核版本】

4.19.90-23.8.v2101.ky10.x86_64

【OS镜像版本】

银河麒麟高级服务器操作系统-Kylin Linux Advanced Server 

release V10 (SP1) /(Tercel)-x86_64-Build20/20210518

现象描述

发现银河麒麟高级服务器操作系统V10 sp2和V10 sp3服务器系统版本设置如下,安全基线操作可正常生效,命令如下:

vim  /etc/pam.d/su

auth sufficient pam_rootok.so

auth required pam_wheel.so group=wheel

但是在银河麒麟高级服务器操作系统V10 sp1-0518系统版本上添加如上内容未生效,本地测试可把group=wheel更改为use_uid后测试成功,但是表示加固文档是固定内容,不可修改,现需要协助排查sp1-0518系统版本pam_wheel.so 模块加group=wheel不生效问题。安全配置基线,如图1:

图1

现象分析

自测环境,分别使用银河麒麟高级服务器操作系统V10-SP1-0518-x86和V10-SP2-0524-arm系统进行测试验证,发现/etc/pam.d/su配置文件里,调用pam_wheel.so模块加group=wheel参数,都不生效,替换成use_id,测试验证生效,验证效果如图2和图3:

图2 银河麒麟高级服务器操作系统V10 sp1-0518-x86

图2   银河麒麟高级服务器操作系统V10 SP2-0524-ARM

从上面的测试验证情况,可知,银河麒麟高级服务器操作系统限制wheel组成员,可su到root用户使用,非wheel组成员,不可su到root用户这个功能。需要调用pam_wheel.so模块,后面加上use_uid来实现。

   已知pam_wheel.so模块是Pluggable Authentication Modules (PAM)的一部分,它用于控制对su命令的访问。并查询到pam_wheel.so模块相关配置说明如下:

    auth:这是PAM模块类型,定义了模块在认证过程中的角色。

    required:这表示如果此模块失败,那么整个认证过程都将失败,除非有一个[success=ok default=ignore]的模块成功。它必须在该类型的所有其他模块之前。

    pam_wheel.so:这是模块的名称,它控制对su命令的访问。

    use_uid:这是给pam_wheel.so模块的参数。当设置了use_uid参数时,pam_wheel.so将会检查当前有效的用户ID,而不是初始的用户ID,以确定该用户是否为wheel组的成员。

分析结果

综上,系统测试分析情况,可知,在银河麒麟高级服务器操作系统V10系统中,限制实现只有属于wheel组的用户才被允许使用su命令来切换到root用户这个安全基线功能,是需要在/etc/pam.d/su配置文件的pam_wheel.so模块后面,通过追加use_uid这个模块配置参数实现的。

pam_wheel.so模块后面,追加group=wheel模块配置,为什么没有实现相关功能,可能是做了相关功能裁剪,所以没有实现。

解决方案

/etc/pam.d/su配置,如下:

[root@localhost ~]# cat /etc/pam.d/su

auth       required       pam_kysec.so

#%PAM-1.0

auth            sufficient      pam_rootok.so   --追加配置

# Uncomment the following line to implicitly trust users in the "wheel" group.

#auth           sufficient      pam_wheel.so trust use_uid

# Uncomment the following line to require a user to be in the "wheel" group.

#auth           required        pam_wheel.so use_uid

auth            required        pam_wheel.so use_uid   --追加配置

auth            substack        system-auth

auth            include         postlogin

account         sufficient      pam_succeed_if.so uid = 0 use_uid quiet

account         include         system-auth

password        include         system-auth

session         include         system-auth

session         include         postlogin

session         optional        pam_xauth.so

相关文章:

【银河麒麟高级服务器操作系统】安全配置基线相关分析全过程及解决方案

了解更多银河麒麟操作系统全新产品,请点击访问 麒麟软件产品专区:https://product.kylinos.cn 开发者专区:https://developer.kylinos.cn 文档中心:https://documentkylinos.cn 服务器环境以及配置 【机型】物理机或虚机 【…...

用Python实现图片转ASCII艺术:图像处理与字符艺术的完美结合

解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 ASCII艺术是一种通过字符来表现图像的艺术形式,最早用于早期计算机显示器,它仅支持字符显示。如今,尽管图像分辨率和显示技术得到了极大的提升,ASCII艺术作为一种复古而别具一格的图像表现形式,仍然受到许多…...

大数据-162 Apache Kylin 全量增量Cube的构建 Segment 超详细记录 多图

点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…...

Redis-缓存过期淘汰策略

缓存淘汰策略 生产上redis内存设置为多少 设置为最大内存的 3/4 redis 会占用物理机多少内存 默认大小是 0,64 位系统下表示不限制内存大小,32位系统表示 3G 如何设置修改redis内存大小 config get maxmemory 查看修改方式 配置文件 单位是字节 2.…...

如何设置LED电子显示屏的屏幕参数?

LED电子显示屏因其高亮度、低能耗和长寿命等优点,在广告、信息显示等领域得到了广泛应用。正确设置屏幕参数对于确保显示屏的最佳性能至关重要。以下是LED电子显示屏设置屏幕参数的步骤: 1. 确定屏幕参数 在开始设置之前,需要了解显示屏的基本…...

Spring Boot Starter Parent介绍

引言 spring-boot-starter-parent 是一个特殊的项目,为基于 Spring Boot 的应用程序提供默认配置和默认依赖。 在本 Spring Boot 教程中,我们将深入了解所有 Spring Boot 项目内部使用的 spring-boot-starter-parent 依赖项。我们将探讨此依赖项所提供…...

【含开题报告+文档+PPT+源码】基于SpringBoot乡村助农益农平台的设计与实现

开题报告 近年来,随着社会经济的快速发展和人民生活水平的提高,人们对优质农产品的需求越来越高。然而,传统的农产品销售管理模式存在一些问题。首先,农产品供应链信息不透明,导致生产者难以了解市场需求和价格变动趋…...

数据中心运维挑战:性能监控的困境与智能化解决方案的探寻

随着数字化进程的加速,数据中心已成为企业信息架构的核心支撑,其运维管理的复杂度和重要性也随之提升。运维团队需应对设备老化、资源分配失衡、性能波动等多重难题,以确保数据中心持续高效运行。 其中,性能监控作为运维管理的关键…...

基于SSM的民宿管理系统【附源码】

基于SSM的民宿管理系统(源码L文说明文档) 目录 4 系统设计 4.1 系统概要设计 4.2 系统功能结构设计 4.3 数据库设计 4.3.1 数据库E-R图设计 4.3.2 数据库表结构设计 5 系统实现 5.1用户信息管理 5.2 房东信息管理…...

显卡 3090 vs v100

1.3090 Date: 2020 AmperePielines/ Cuda cores: 10496 2.V100 Date: 2018 VoltaPielines/ Cuda cores: 5129 3.结构 & Core比较: v100优点: v100功耗小v100较快的双精度(fp64)和混合精度(fp16fp32)pcie版的NVLink与2080ti完全一致 v100缺点: 不支持整数格式计算&…...

怎么在单片机裸机程序中移植EasyLogger?

1、介绍 EasyLogger 是一款超轻量级、高性能的C日志库,非常适合对资源敏感的软件项目。例如:IoT产品、可穿戴设备、智能家居等等。相比log4c、zlog这些知名的C日志库,EasyLogger的功能更加简单,提供给用户的接口更少,但…...

C/C++解析文件名和目录路径

文章目录 主要函数使用注意事项示例程序总结 #include <libgen.h> 是一个 C/C 语言的头文件&#xff0c;主要用于字符串处理&#xff0c;特别是在处理文件路径时。它提供了一些函数来帮助你解析文件名和目录路径。 主要函数 以下是 libgen.h 中一些常见的函数&#xff…...

Git 基本命令行操作

Git是一个开源的分布式版本控制系统&#xff0c;用于管理源代码和文档的版本。以下是Git的基本命令行操作&#xff1a; 一、配置 安装完成后&#xff0c;需要配置Git的用户名和邮箱&#xff0c;以便在提交记录时记录操作者的信息。 配置全局用户名&#xff1a;git config --g…...

【Rust练习】17.泛型

练习题来自&#xff1a;https://practice-zh.course.rs/generics-traits/generics.html 函数 1 // 填空 struct A; // 具体的类型 A. struct S(A); // 具体的类型 S. struct SGen<T>(T); // 泛型 SGen.fn reg_fn(_s: S) {}fn gen_spec_t(_s: SGen<A&…...

java脚手架系列4--测试用例、拦截器

异常处理、拦截器、数据库连接 1 测试用例 单元测试是一个老生常谈的问题&#xff0c;无论是后端对自己的代码质量把的第一道关也好&#xff0c;也是对测试减缓压力。这里就不过多讲述测试用例的重要性&#xff0c;但是有2个框架我们必须了解一下。 1.1 JUnit和mockito 我们…...

论文推荐 |【Agent】自动化Agent设计系统

论文标题&#xff1a; Automated Design of Agentic Systems 论文地址&#xff1a; https://arxiv.org/abs/2408.08435 GitHub地址&#xff1a; https://github.com/ShengranHu/ADAS 自动化代理设计在性能和通用性方面显著超越了手动方法。 • 引入了自动化代理系统设计&am…...

Linux操作系统提供了五种主要的IO(输入/输出)模型

Linux操作系统提供了五种主要的IO&#xff08;输入/输出&#xff09;模型&#xff0c;这些模型旨在优化应用程序对输入输出操作的管理和处理。以下是关于这五种IO模型的详细介绍。 一、阻塞IO&#xff08;Blocking IO&#xff09; 阻塞IO是最常见、最传统的IO模型。在这种模型…...

基于深度学习的花卉识别系统

简介&#xff1a; 基于Python的花卉识别分类系统利用深度学习和计算机视觉技术&#xff0c;能够准确识别和分类各种花卉&#xff0c;如玫瑰、郁金香和向日葵等。这种系统不仅有助于植物学研究和园艺管理&#xff0c;还在生态保护、智能农业和市场销售等领域展现广泛应用前景。随…...

【斯坦福CS144】Lab0

一、实验目的 1.初步了解计算机网络&#xff0c;准备实验所需的材料和环境&#xff1b; 2.掌握基础实验方法&#xff1b; 3.动手实现网络功能。 二、实验内容 1.下载实验所需的资料&#xff0c;安装虚拟机&#xff0c;配置环境&#xff1b; 2.获取一个网页&#xff1b; …...

关于Mybatis中,IPage<PO>转换成IPage<VO>的问题

以下是一个比较常见通用的一个查询并且为单表查询&#xff0c;在开发初期&#xff0c;或者项目不是很复杂的时候&#xff0c;或者一开始项目框架就规划好的情况下&#xff0c;通常我们都会封装。 在我们的项目中&#xff0c;这部分代码其实是自动生成的&#xff0c;足以满足大…...

MVC 数据库

MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...

对WWDC 2025 Keynote 内容的预测

借助我们以往对苹果公司发展路径的深入研究经验&#xff0c;以及大语言模型的分析能力&#xff0c;我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际&#xff0c;我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测&#xff0c;聊作存档。等到明…...

Module Federation 和 Native Federation 的比较

前言 Module Federation 是 Webpack 5 引入的微前端架构方案&#xff0c;允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

Python如何给视频添加音频和字幕

在Python中&#xff0c;给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加&#xff0c;包括必要的代码示例和详细解释。 环境准备 在开始之前&#xff0c;需要安装以下Python库&#xff1a;…...

【HTTP三个基础问题】

面试官您好&#xff01;HTTP是超文本传输协议&#xff0c;是互联网上客户端和服务器之间传输超文本数据&#xff08;比如文字、图片、音频、视频等&#xff09;的核心协议&#xff0c;当前互联网应用最广泛的版本是HTTP1.1&#xff0c;它基于经典的C/S模型&#xff0c;也就是客…...

企业如何增强终端安全?

在数字化转型加速的今天&#xff0c;企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机&#xff0c;到工厂里的物联网设备、智能传感器&#xff0c;这些终端构成了企业与外部世界连接的 “神经末梢”。然而&#xff0c;随着远程办公的常态化和设备接入的爆炸式…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf

FTP 客服管理系统 实现kefu123登录&#xff0c;不允许匿名访问&#xff0c;kefu只能访问/data/kefu目录&#xff0c;不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...

push [特殊字符] present

push &#x1f19a; present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中&#xff0c;push 和 present 是两种不同的视图控制器切换方式&#xff0c;它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...

力扣热题100 k个一组反转链表题解

题目: 代码: func reverseKGroup(head *ListNode, k int) *ListNode {cur : headfor i : 0; i < k; i {if cur nil {return head}cur cur.Next}newHead : reverse(head, cur)head.Next reverseKGroup(cur, k)return newHead }func reverse(start, end *ListNode) *ListN…...