如何写一个自动化Linux脚本去进行等保测试--引言

#我的师兄喜欢给我的休闲实习生活加活,说是让我在实习期间写一个自动化脚本去进行等保测试。呵呵哒。

怎么办呢,师兄的指令得完成,师兄说让我使用Python完成任务。

设想如下:

1、将Linux指令嵌入到python脚本中

2、调试跑通

3、给指令加上节点做可视化页面

我们的测试方案就按照指导书进行,选用的还是常见服务器系统。

首先是身份鉴别,这部分写的脚本就将一些常用指令嵌入进去到python脚本中,很简单吧。

比如说

输入下面的指令,查看能登录的用户:
   grep '/bin/bash' /etc/passwd

在python中的os库中,存在这样的一个命令:

cmd = os.popen(" grep '/bin/bash' /etc/passwd").read()

(记得先import os 动下脑瓜子

popen就是打开命令栏输入括号内的东西,.read就是直接读取控制流输出,最后保存到cmd中。

这里的话,可能需要输入命令sudo下,因为可能在测评的时候不是root用户。我们需要在提示输入密码的时候程序自动输入密码。

这就需要了解下管道的知识了管道参考浅谈管道(pipe)-CSDN博客

我们需要用到shell中的管道符。简单来说,管道符就是将上一个命令的输出转换为下一个命令的输入。

这里的命令是

cmd = os.popen(" echo password | sudo -S grep '/bin/bash' /etc/passwd").read()

使用这个命令就能够实现自动输入密码啦,这里的密码明文写死password,实际用你自己的密码替换就好。

这里再拓展下,写成下面的形式:

os.system('echo %s | sudo -S %s' % (password, command))

这样等于给这个写成了小接口,让他拓展性使用强一点。

以上内容大致将核心写完了,后面就可以写成自动化的检测脚本去直通了,不过脚本还是有很多局限的,像是不同的系统,不同的环境会报出很多未知的错误,实习老师也说了没啥用,兼容性太差,实际工作的时候还是看工作情况。需要完整脚本学习的关注私聊我。

这边看到了博客介绍了许多自动化脚本,学习一下:

python自动化运维脚本(仅供参考)_设计一个自动化脚本,查看df -h 信息放到日志中-CSDN博客

感谢看到了网上的开源脚本

主机一键巡检脚本--基于python实现_python巡检百台设备完全无压力-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/146452.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【Day02-JS+Vue+Ajax】

1. JS介绍 在前面的课程中,我们已经学习了HTML、CSS的基础内容,我们知道HTML负责网页的结构,而CSS负责的是网页的表现。 而要想让网页具备一定的交互效果,具有一定的动作行为,还得通过JavaScript来实现。那今天,我们就…

如何用 Web 界面 AI 工作流提升科研写作效率?

(注:本文为小报童精选文章。已订阅小报童或加入知识星球「玉树芝兰」用户请勿重复付费) 更易用,更高效。 痛点 作为一名研究生导师,我深深体会到学生在撰写论文时拖延症的严重程度。他们往往打开一个空白的 Word 文档&…

CSS01-语法规范、基础选择器

一、CSS语法规范 示例: 二、CSS的基础选择器 选择器(选择符)就是根据不同需求把不同的标签选出来这就是选择器的作用。 简单来说,就是选择标签用的。 选择器的分类: 1、标签选择器 2、类选择器(开发最常用) 长字符命名…

VScode开发GD32移植(标准库通用),保姆级!!!!!!!

VScode开发GD32移植(标准库通用),保姆级!!!!!!! 文章目录 VScode开发GD32移植(标准库通用),保姆级!!!!!&#…

稳联Profinet转Canopen网关携手伺服,高效提升生产效率

在当今的工业生产领域,追求高效、精准和可靠的生产方式是企业不断努力的方向。稳联技术Profinet转Canopen(WL-ABC3033)网关与伺服系统的携手合作,为提高生产效率带来了新的机遇和突破。 实现无缝通信,优化生产流程稳联…

煤矿智慧矿井数据集 (1.煤矿采掘工作面智能分析数据集2.煤矿井下钻场智能分析数据集 )

智慧矿井智能分析数据集 数据1:数据1包含煤矿采掘工作面工人安全帽检测,工人行为检测(行走,站立,坐,操作,弯腰,靠,摔,爬),液压支撑防护…

python内置装饰器,解决接口自动化中公共方法(如,读excel),无需实例化即可调用...

Python 还提供了一些内置的装饰器,比如 staticmethod 和 classmethod,用于定义静态方法和类方法。 如接口自动化中,公共的方法,在一个文件夹,其他文件需要调用;

【题库制作】对于一个文档题库,将3或4个选项的题目分别放在单独的区域

原文链接:https://www.cnblogs.com/MrFlySand/p/18422619 操作步骤 如下图,对于一个文档题库,将3或4个选项的题目分别放在单独的区域 多添加一行D:将答案:替换为D.\n答案: 删除多余的D行:将D\…

HTML粉色烟花秀

目录 系列文章 写在前面 完整代码 代码分析 写在最后 系列文章 序号目录1HTML满屏跳动的爱心(可写字)2HTML五彩缤纷的爱心3HTML满屏漂浮爱心4HTML情人节快乐5HTML蓝色爱心射线6HTML跳动的爱心(简易版)7HTML粒子爱心8HTML蓝色…

CSP-J2024年全真模拟题 阅读程序篇2

因为明天考试,这回给大家准备了超详细的解析~ 22.程序中 n 和 m 只有输入正整数,程序的输出值才可能是 YES A.对B.错 23.程序中用到了递归函数 bool fun(int n) A.对B.错 24.若输入 n 和 m 都是素数,程序的输出值…

powerbi- l6-获取文件的动态链接

需求: 需要对文件夹中的文件进行处理处理的文件名包含当天的日期,格式为年月日 在powerbi 中打开高级编辑,将文件夹的名称中动态内容进行修改,按照如下的格式, 比如文件名为:fixed_name_20240930_abc.pdf…

生活小助手系统小程序的设计

管理员账户功能包括:系统首页,个人中心,客户管理,社区公告管理,反馈信息管理,生活缴费处管理,物品分类管理,二手物品管理,系统管理 微信端账号功能包括:系统…

股指期权交易详细基础介绍

股指期权是期权市场中的一种特定类型,其标的资产为股票指数。简而言之,它允许投资者在未来某个特定时间,以预先约定的价格,买入或卖出股票指数的权利。在中国,已上市的股指期权包括上证50、沪深300和中证1000股指期权&…

Yocto - 使用Yocto开发嵌入式Linux系统_02 认识 Yocto 项目

Meeting the Yocto Project 本章向你介绍 Yocto 项目。这里讨论的项目主要概念将贯穿全书。此外,我们还将简要讨论 Yocto 项目的历史、OpenEmbedded、Poky、BitBake、元数据和版本模式。系好安全带,欢迎加入我们的行列! This chapter introdu…

NC65客开常见问题以及解决方案

NC65客开常见问题以及解决方案 元数据实体对应的数据库表没有创建: 参照发布元数据第三步,生成数据库表 元数据名称和字段名称不一致导致报错: 更改为一致,删除原有的数据库表,重新生成数据库表并且重新发布元数据(如…

【Qt之·文件操作·类QTextStream、QDataStream】

系列文章目录 文章目录 前言一、概述1.1 QTextStream类1.2 QTextStream类的作用和用途 二、基本用法2.1 QTextStream成员函数2.2 QTextStream格式描述符、描述符方法2.3 QDataStream成员函数2.4 创建QTextStream对象并关联输入/输出设备(如文件、标准输入/输出流等&…

34. 模型材质父类Material

学习到现在大家对threejs的材质都有简单的了解,本节课主要结合文档,从JavaScript语法角度,给大家总结一下材质API的语法。 材质父类Material 查询threejs文档,你可以看到基础网格材质MeshBasicMaterial、漫反射网格材质MeshLamb…

C语言中的一些小知识(三)

一、你了解printf()吗? 你知道下面代码的输出结果吗? int a123; printf("%2d \n",a); printf() 函数是 C 语言中用于格式化输出的标准函数,它允许你将数据以特定的格式输出到标准输出设备(通常是屏幕)。p…

中电信翼康基于Apache Dolphinscheduler重构“星海·济世医疗数据中台”实践经验分享

文章作者:尚志忠 编辑整理:曾辉 行业背景 随着大数据、云计算、5G、人工智能等技术的快速发展,以及医疗信息化建设的不断深入,数据中台作为打通医疗数据融合壁垒、实现数据互通与共享、构建高效数据应用的关键信息平台&#xf…

松材线虫目标检测数据集,12522张图-纯手工标注

松材线虫目标检测数据集,12522张图像,专家纯手工标注。 松材线虫目标检测数据集 数据集描述 该数据集是一个专门用于松材线虫(Bursaphelenchus xylophilus)检测的数据集,旨在帮助研究人员和开发者训练和评估基于深度…