Linux系统审计工具Lynis的使用总结

一、lynis简介

Lynis是Linux系统中的审计工具,能够对Linux系统的安全进行检测,在对Linux系统进行扫描检测后,会生成报告。Lynis 是一套适用于各种 UNIX based system 的系统安全检测工具,以 Shell Script建构而成。它能找出系统安全需要补强的地方,同时提供许多提升系统安全的作法与建议,对于系统管理者来说是一套既实用,又能从中学习(或复习)到许多系统安全观念的好工具。不足之处:该款工具比较全面的涵盖了系统安全的审计内容,但每个审计项都不深入,需要具体的扩展,例如PHP、Apache,MySQL的安全配置,就需要细化。

1.1 下载安装包安装lynis

在lynis官网上下载最新版本的安装包lynis-2.7.5.tar.gz
https://cisofy.com/download/lynis/
root权限使用以下命令,进行系统扫描:

# cp lynis-2.7.5.tar.gz /opt
# cd /opt
# tar zxvf lynis-2.7.5.tar.gz 
# cd lynis
# ./lynis –checkall
1.2 rpm包安装到CentOs/RHEL/Fedora

在lynis官网上下载最新版本的安装包lynis-2.7.5.tar.gz
https://packages.cisofy.com//

  1. 更新依赖

    #yum update ca-certificates curl nss openssl
    
  2. 创建yum源

    #vim /etc/yum.repos.d/cisofy-lynis.repo
    	[lynis]
    	name=CISOfy Software - Lynis package
    	baseurl=https://packages.cisofy.com/customers/LICENSE-KEY/lynis/rpm/
    	enabled=1
    	gpgkey=https://packages.cisofy.com/keys/cisofy-software-rpms-public.key
    	gpgcheck=1
    
  3. 安装lynis及lynis-plugins

    #yum makecache fast
    #yum install lynis lynis-plugins
    

二、如何借助lynis扫描Linux的安全漏洞

2.1 启动lynis

切换到root权限下,进入到lynis文件下下,使用./lynis --checkall进行系统扫描,如下图所示:

# ./lynis –checkall

Linux系统审计工具Lynis的使用总结_第1张图片

2.2 执行扫描

一旦lynis开始扫描你的系统,它就会执行许多类别的审查工作:

category 类别 作用
System Tools 系统工具 扫描可用工;检测系统二进制代码
Boot and Services 引导和服务 引导装入程序和启动服务
Kernel 内核 运行级别、已装入模块、内核配置和核心转储
Memory and Processes 内存和进程 僵尸进程和输入输出等待进程
Users,Groups and Authentication 用户、用户组和验证 用户组编号、sudoers文件、可插拔验证模块(PAM)配置、密码老化和默认掩码
Shells
File systems 文件系统 挂载点、临时文件和根文件系统
Storage存储 USB存储(usb-storage)和火线开放式主机控制器接口(firewire ohci)
NFS Check running NFS daemon
Name services 名称服务 DNS搜索
Ports and packages 端口和软件包 容易受到攻击/可以升级的程序包和安全存储库
Networking 网络 名称服务器、混杂接口和连接
Printers and Spools 打印机和假脱机 通用Unix打印系统(CUPS)配置
Software:email and messaging 软件:电子邮件和消息传送 Exim status、postfix status、dovecot status、qmail status、sendmail status
Software:firewalls 防火墙 Iptables、host based firewall
Software:webserver 网站服务器 Apache、nginx
SSH support SSH支持 Checking running SSH daemon
SNMP Support Checking running SNMP daemon
Databases MySQL根密码
LDAP Services Checking OpenLDA
PHP
Squid Support
Logging and files 日志和文件 syslog守护程序和日志目录
Insecure services 不安全服务 Checking inetd status
Banners and identificationBanner 信息和身份认证
Scheduled tasks 调度任务 Checking crontab/cronjob /vrontabs
Accounting 账号 Accounting information/sysstat accounting data/auditd
Time and Synchronization 时间和同步 ntp守护程序
Cryptography 密码学 Checking for expired SSL certificates
Virtualization虚拟化
Containers
Security frameworks 安全框架 AppArmor、SELinux、grsecurity、MAC framework
Software:file integrity 文件完整性
Software:system tooling Checking automation tooling/Checing for IDS/IPS tooling
Software:Malware 恶意软件扫描工具
File permissions
Home directories 主目录 Checking shell history files
Kernel hardening Hardening Installed compiler
Installed malware scanner Custom tests Running custom tests

工作界面如下所示:
Linux系统审计工具Lynis的使用总结_第2张图片
Linux系统审计工具Lynis的使用总结_第3张图片
lynis系统扫描完成,当前界面会给出扫描结果,如上图 ** -[ Lynis 2.7.5 Results ]- ** 同时可以通过 https://cisofy.com/lynis/controls/AUTH-9216/去查看针对此条告警的具体表现及解决方案等信息。
Linux系统审计工具Lynis的使用总结_第4张图片
2.2.1 自动保存审查报告
一旦扫描完毕,系统的审查报告就会自动生成,并保存在/var/log/lynis.log中。
审查报告含有该工具检测到的潜在安全漏洞方面的警告信息。比如说:
#grep Warning /var/log/lynis.log 用来检查报告内容

审查报告还含有许多建议措施,有助于加固你的Linux系统。比如说:
#grep Suggestion /var/log/lynis.log 用来检查建议内容

扫描你系统的安全漏洞,作为一项日常计划任务
2.2.2 设置日常计划任务
想最充分地利用lynis,建议经常来运行它,比如说将它安排成一项日常计划任务。在用“–cronjob”选项来运行时,lynis在自动的非交互式扫描模式下运行。
下面是日常计划任务脚本,在自动模式下运行lynis,以便审查你的系统,并且将每日扫描报告进行归档。

#sudo vim /etc/cron.daily/scan.sh

#chmod 755 /etc/cron.daily/scan.sh

三、使用lynis检查系统是否足够安全

Lynis是一个为系统管理员提供的 Linux和Unix的审计工具 。 Lynis扫描系统的配置,并创建概述系统信息与安全问题所使用的专业审计。当用户启动该软件后,Lynis会会逐次扫描系统的内核、用户目录、软件信息等,并最后生成一个全面的报告。需要说明的是,该工具只能生成一个扫描检测后的报告,对用户起到提醒作用,本身并不能提高系统的安全性。但是该工具却可以成为其他安全软件、系统测评软件的模块。

你可能感兴趣的:(linux系统,linux,扫描测试工具)