linux信息收集篇之sosreport
sosreport是一个类型于supportconfig 的工具,sosreport是python编写的一个工具,适用于centos(和redhat一样,包名为sos)、ubuntu(其下包名为sosreport)等大多数版本的linux 。sosreport在github上的托管页面为:https://github.com/sosreport/sos,而且默认在很多系统的源里都已经集成有。如果使用的是正版redhat,在出现系统问题,寻求官方支持时,官方一般也会通过sosreport将收集的信息进行分析查看。需要注意的是在一些老的redhat发行版中叫sysreport ------ 如redhat4.5之前的版本中。
一、sosreport的安装
在默认使用linux发行版的源进行安装时,由于在不同的系统上包名称也会有差异,所以使用的命令也不同,如redhat和ubuntu平台的安装如下:
- // redhat/centos下的安装
- # yum -y insatll sos
- // ubuntu下的安装
- # sudo apt-get install sosreport
二、sosreport用法
可以使用sosreport --help或man sosreport 获取使用帮助手册,如下:
- [root@361way ~]# sosreport --help
- Usage: sosreport [options]
- Options:
- -h, --help show this help message and exit
- -l, --list-plugins list plugins and available plugin options
- -n NOPLUGINS, --skip-plugins=NOPLUGINS
- disable these plugins
- -e ENABLEPLUGINS, --enable-plugins=ENABLEPLUGINS
- enable these plugins
- -o ONLYPLUGINS, --only-plugins=ONLYPLUGINS
- enable these plugins only
- -k PLUGOPTS, --plugin-option=PLUGOPTS
- plugin options in plugname.option=value format (see
- -l)
- -a, --alloptions enable all options for loaded plugins
- --batch batch mode - do not prompt interactively
- --build keep sos tree available and dont package results
- -v, --verbose increase verbosity
- --quiet only print fatal errors
- --debug enable interactive debugging using the python debugger
- --ticket-number=TICKET_NUMBER
- specify ticket number
- --name=CUSTOMER_NAME specify report name
- --config-file=CONFIG_FILE
- specify alternate configuration file
- --tmp-dir=TMP_DIR specify alternate temporary directory
- --report Enable HTML/XML reporting
- --profile turn on profiling
- -z COMPRESSION_TYPE, --compression-type=COMPRESSION_TYPE
- compression technology to use [auto, zip, gzip, bzip2,
- xz] (default=auto)
- Some examples:
- enable cluster plugin only and collect dlm lockdumps:
- # sosreport -o cluster -k cluster.lockdump
- disable memory and samba plugins, turn off rpm -Va collection:
- # sosreport -n memory,samba -k rpm.rpmva=off
上面也列出了具体操作的示例。其中-l 参数会列出当前enable和disable的所有服务插件及当前available的所有插件。
- [root@361way log]# sosreport -a --report
- sosreport (version 3.0)
- This command will collect diagnostic and configuration information from
- this CentOS Linux system and installed applications.
- An archive containing the collected information will be generated in
- /var/tmp and may be provided to a CentOS support representative.
- Any information provided to CentOS will be treated in accordance with
- the published support policies at:
- https://www.centos.org/
- The generated archive may contain data considered sensitive and its
- content should be reviewed by the originating organization before being
- passed to any third party.
- No changes will be made to system configuration.
- Press ENTER to continue, or CTRL-C to quit.
- Please enter your first initial and last name [361way.com]:
- Please enter the case number that you are generating this report for:
- Running plugins. Please wait ...
- Running 68/68: yum...
- Creating compressed archive...
- Your sosreport has been generated and saved in:
- /var/tmp/sosreport-361way.com-20140912204339.tar.xz
- The checksum is: eaf5b2cbb1e9be68d41be5e5a60a61b6
- Please send this file to your support representative.
如上所示,我使用-A 启用所有的模块,--report是开启所有的结果以html /xml 的格式一个总的报告。生成的包需要通过下面的命令进行解包。
- # xz -d ***.tar.xz
- # tar -xvf ***.tar
- 或直接使用下面的命令一步完成解压
- tar xvJf ***.tar.xz
在解包后的sos_reports 目录会有report的结果sos.html文件生成,同时会有sos.txt文件生成,该文件内列出了具体执行的命令及copy 文件的一些信息。html 打开的内容如下:
由于页面较大,这里只截出了最上面的部分,列出了所有的收集模块,下面alerts 给出了报警模块的信息。再往下就是具体到每一个模块的信息。
三、sosreport配置文件
sosreport的配置文件是/etc/sos.conf ,默认内容如下:
- [root@361way ~]# cat /etc/sos.conf
- [general]
- #ftp_upload_url = ftp://example.com/incoming
- #gpg_keyring = /usr/share/sos/rhsupport.pub
- #gpg_recipient = support@redhat.com
- smtp_server = None
- [plugins] //此处可以设置默认enable和disable的模块
- #disable = rpm, selinux, dovecot
- [tunables] //可调参数
- #rpm.rpmva = off
- #general.syslogsize = 15
从配置文件上可以看出,sosreport同样将收集的结果上传到server 上,可以通过man sos.conf 查看配置文件的帮助信息,不过man给出的并没有太多信息,想在了解更多的信息可以查看 sosreport在github上的wiki页 。
四、sosreport总结
相于supportconfig,由于sosreport是由python语言进行编写的,所以其在功能扩展上更有优势,但由于在不同的发行版本上的python版本不同,在进行功能扩展时,对不同版本间的异常处理相对麻烦。而supportconfig由于是shell 语言编写的一个工具,对版本的依赖相对少些 ,但对一些工具的依赖相对多些 ,如在获取进程相关的信息时,shell 需要将ps 工具或处理proc的结果,而sosreport则可以直接import psutil 模块,两者之间的区别,归根到底就是shell 和python的区别。
linux信息收集篇之sosreport的更多相关文章
- Kali Linux信息收集工具
http://www.freebuf.com/column/150118.html 可能大部分渗透测试者都想成为网络空间的007,而我个人的目标却是成为Q先生! 看过007系列电影的朋友,应该都还记得 ...
- Kali Linux信息收集工具全集
001:0trace.tcptraceroute.traceroute 描述:进行路径枚举时,传统基于ICMP协议的探测工具经常会受到屏蔽,造成探测结果不够全面的问题.与此相对基于TCP协议的探测,则 ...
- Kali Linux信息收集工具全
可能大部分渗透测试者都想成为网络空间的007,而我个人的目标却是成为Q先生! 看过007系列电影的朋友,应该都还记得那个戏份不多但一直都在的Q先生(由于年级太长目前已经退休).他为007发明了众多神奇 ...
- 内网渗透----Linux信息收集整理
一.基础信息收集 1.查看系统类型 cat /etc/issue cat /etc/*-release cat /etc/lsb-release cat /etc/redhat-release 2.内 ...
- web安全之信息收集篇
信息收集 1.网络信息 网络信息就包括网站的厂商.运营商,网站的外网出口.后台.OA. 2.域名信息 通过域名可以查洵网站的所有人.注册商.邮箱等信息 --->Whois 第三方查询,查询子域网 ...
- linux信息收集
1.系统区分debian系列:debian.ubunturedhat系列:redhat.centos 是否为docker.或者为虚拟机 分为通用模块.单独模块的信息获取 2.系统信息收集 内核(是否为 ...
- kali linux 信息收集(Kismet)
1.kismet工具,是一个无线扫描工具,该工具通过测量周围的无线信号,可以扫描到周围附近所用可用的Ap,以及信道等信息.同时还可以捕获网络中的数据包到一个文件中.这样可以方便分析数据包.下面我将详细 ...
- 网络安全-主动信息收集篇第二章-三层网络发现之ping
第三层网络扫描基于TCP/IP.ICMP协议. 优点:可路由.速度比较快 缺点:相对于二层网络扫描较慢,容易被边界防火墙过滤 所有扫描发现技术,都会有相应的对抗办法,所以无论是来自二层的网络扫描还是来 ...
- 网络安全-主动信息收集篇第二章SNMP扫描
SNMP扫描: snmp在中大型企业中可以用来做网络管理和网络监控的使用,当开启了snmp简单网络管理后,那么客户机就可以通过这个协议向该设备发送snmp协议内容可以轻松查询到目标主机的相关信息. 以 ...
随机推荐
- Java你不知道的那些事儿—Java隐藏特性(上)
每种语言都很强大,不管你是像我一样的初学者还是有过N年项目经验的大神,总会有你不知道的东西.就其语言本身而言,比如Java,也许你用Java开发了好几年,对其可以说是烂熟于心,但你能保证Java所有的 ...
- 和我一起打造个简单搜索之ElasticSearch集群搭建
我们所常见的电商搜索如京东,搜索页面都会提供各种各样的筛选条件,比如品牌.尺寸.适用季节.价格区间等,同时提供排序,比如价格排序,信誉排序,销量排序等,方便了用户去找到自己心里理想的商品. 站内搜索对 ...
- CentOS 7下搭配简单的C语言开发环境
在CentOS 7下安装gcc,gcc是编译和运行C语言的工具, 安装命令: yum install gcc 中途如果有询问则输入y 安装成功后,通过以下命令 gcc --version 来查看安装的 ...
- Java并发编程-synchronized指南
在多线程程序中,同步修饰符用来控制对临界区代码的访问.其中一种方式是用synchronized关键字来保证代码的线程安全性.在Java中,synchronized修饰的代码块或方法不会被多个线程并发访 ...
- 记一次pm2的踩坑
1.问题: 公司采用了自动发布平台,最近突然发现一个问题,上线完成后服务是能正常访问的,但是有一个节点访问的时候每两次中总是有一次404,通过nginx的access日志分析发现第一次正常访问有一次g ...
- SQL server Profiler 监视数据库活动
做网站后台开始时需要考虑后台对数据库的一些操作,比如尽量减少查询次数,尽快释放连接,只选取必须的字段等等.如果是用三层开发,复杂的项目中直接拼装SQL语句多一点,拼装的SQL语句可以直接在SQL se ...
- Java基础——GUI编程(四)
继前面的,这篇主要记录菜单和文件对话框的两个小练习,来熟悉一下方法的应用,一些简单的逻辑和Swing的相关简介,以及关于GUI基础的记录. 一.创建一个菜单 import java.awt.FlowL ...
- oracle逐步学习总结之约束(基础五)
原创作品,转自请在文章明显位置注明出处:https://www.cnblogs.com/sunshine5683/p/10167717.html oracle中的约束主要有非空约束(not null) ...
- UI-12组结对编程作业总结
UI-12组结对编程作业总结 源码Github地址 https://github.com/tilmto/TILMTO/tree/master/Arithmetic 作业摘要 本次结对编程作业分为以下两 ...
- SpringBoot启动加载类ApplicationRunner
SpringBoot启动加载类ApplicationRunner 有时希望项目在启动的时候加载一些系统参数,就要用到ApplicationRunner ApplicationRunner是一个接口,我 ...