Lynis是一款开源的系统安全审计功能工具,该工具由一系列的shell脚本构成系统进行全面安全检查的工具,可以发现系统、账户、进程等多个层面所存在的安全风险,并以直观的方式逐一列出,支持目前主流的Linux平台。
一、LYNIS检查项目大致如下
     系统程序是否被置换或篡改,避免管理者或使用者执行恶意程序
     开机程序及系统设置,并检测目前已开启的服务
     系统中的帐号信息(用户、组)及帐号验证方式
     是否存在有风险的三方软件
     防火墙设置是否开启
    Web Server、 MySQL、 PHP、 Postfix检查

1. 系统上安装的二进制文件(例如/bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin目录下的)
2.启动服务(例如GRUB是否有密码保护)
3.系统内核信息(例如默认运行级别,内核加载模块,内核配置文件)
4.内存与进程信息(例如是否有僵尸进程,是否有等待中的I/O操作)
5.账户,群组与身份验证(例如sudoers文件,PAM配置等密码策略,unmask设置等)
6.Shell(/etc/shells)
7.文件系统(例如tmp目录下是否有90天前的文件,root文件系统是否有ACL策略
8.是否禁止外设(usb,fireware)
9.NFS
10.DNS域名服务(/etc/resolv.conf,BIND,PowerDNS, ypbind,nscd)
11.软件包管理(dpkg,rpm)
12.网络信息(网卡,网关,ip,处于waiting状态的连接)
13.打印机(cups)
14.邮件系统(e.g.Postfix,Exim ,Qmail smtpd)
15.防火墙(iptable)
16、web服务器(apache,nignx)安全配置
17.SSH安全配置(例如不运行root远程登录)
18.SNMP安全配置
19.数据库安全配置(MySQL,PostgreSQL,Oracle)
20.LDAP安全配置
21.PHP安全配置
22.Squid安全配置
23.日志文件管理(syslog,logrotate)
24.危险服务 (inetd.conf)
25.系统指纹(/etc/motd /etc/issue /etc/issue.net)
26.定时任务(crontab/cronjob)
27.审计模块是否开启(auditd)
28. 时间同步服务(NTP)
29.加密(例如SSL证书有效期)
30.是否应用安全框架(SELinux,AppArmor ,grsecurity)
31.是否有文件系统完整性检测工具(AFICK,AIDE, Osiris,Samhain,Tripwire
32.是否有恶意程序检测工具(chkrootkit,Rootkit Hunter,ClamAV scanner)
33.特定文件的权限是否合理(例如/root/.ssh是否为rwx------)
34.home目录下是否有敏感文件(例如shell history文件内容是否可疑)
35.是否做过内核加固(扫描sysctl内容)

二、安装及运行

wget http://www.rootkit.nl/files/lynis-1.6.0.tar.gz
tar zxvf lynis-1.6.0.tar.gz
cd lynis-1.6.0/

查看帮助
sudo ./lynis --man
全部检查(最常用)
sudo ./lynis --check-all -Q
采用crontab自动检查
sudo ./lynis -c --auditor "automated" --cronjob > /var/log/lynis/report.txt

三、查看日志中的敏感信息
       grep Warning /var/log/lynis.log

       grep Suggestingon /var/log/lynis.log

参考资料:http://www.freebuf.com/tools/43185.html