linux安全配置检查脚本_v0.5
看到网上有人分享了一些linux系统的基线检查脚本,但有些检查项未必适合自己或者说检查的不够完善,
计划按着自己的需求重新写一份出来,其中脚本的检查范围在不断更新中。
脚本内容:
[root@localhost ~]# cat check.sh
#! /bin/bash
cat <<EOF
*************************************************************************
linux安全配置检查脚本:
. 输出结果也可以在当前目录的out.txt中查看
. 检查范围:
-》账号策略检查
-》账号注销检查
-》GRUB密码检查
-》LILO密码检查 *************************************************************************
EOF rm -rf ./out.txt
echo -e "\n"
echo "[1] 账号策略检查中..." passmax=`cat /etc/login.defs | grep PASS_MAX_DAYS | grep -v ^# | awk '{print $2}'`
passmin=`cat /etc/login.defs | grep PASS_MIN_DAYS | grep -v ^# | awk '{print $2}'`
passlen=`cat /etc/login.defs | grep PASS_MIN_LEN | grep -v ^# | awk '{print $2}'`
passage=`cat /etc/login.defs | grep PASS_WARN_AGE | grep -v ^# | awk '{print $2}'` if [ $passmax -le -a $passmax -gt ];then
echo " [OK]口令生存周期为${passmax}天,符合要求" >> out.txt
else
echo " [ X ] 口令生存周期为${passmax}天,不符合要求,建议设置不大于90天" >> out.txt
fi if [ $passmin -ge ];then
echo " [OK]口令更改最小时间间隔为${passmin}天,符合要求" >> out.txt
else
echo " [ X ] 口令更改最小时间间隔为${passmin}天,不符合要求,建议设置大于等于6天" >> out.txt
fi if [ $passlen -ge ];then
echo " [OK]口令最小长度为${passlen},符合要求" >> out.txt
else
echo " [ X ] 口令最小长度为${passlen},不符合要求,建议设置最小长度大于等于8" >> out.txt
fi if [ $passage -ge -a $passage -lt $passmax ];then
echo " [OK]口令过期警告时间天数为${passage},符合要求" >> out.txt
else
echo " [ X ] 口令过期警告时间天数为${passage},不符合要求,建议设置大于等于30并小于口令生存周期" >> out.txt
fi
echo "..."
echo 'check over' echo -e "\n"
echo "[2] 账号注销检查中..." TMOUT=`cat /etc/profile | grep TMOUT | awk -F[=] '{print $2}'` if [ ! $TMOUT ];then
echo " [ X ] 账号超时不存在自动注销,不符合要求,建议设置小于600秒" >> out.txt
else
if [ $TMOUT -le -a $TMOUT -ge ] ; then
echo " [ √ ] 账号超时时间${TMOUT}秒,符合要求" >> out.txt
else
echo " [ X ] 账号超时时间$TMOUT秒,不符合要求,建议设置小于600秒" >> out.txt
fi
fi
echo "..."
echo 'check over'
echo -e "\n"
echo "[3] GRUB密码检查中..." grup_pwd=`cat /etc/grub.conf | grep -v ^# | grep password > /dev/null` if [ $? -eq ];then
echo " [ √ ] 已设置grub密码,符合要求" >> out.txt
else
echo " [ X ] 没有设置grub密码,不符合要求,建议设置grub密码" >> out.txt
fi echo "..."
echo "check over"
echo -e "\n"
echo "[4] LILO密码检查中..." if [ ! -f /etc/lilo.conf ] ; then
echo " [ √ ] lilo.conf配置文件不存在,系统可能不是通过LILO引导" >> out.txt
else
lilo_pwd=`cat /etc/lilo.conf | grep -v ^# | grep password &> /dev/null`
if [ $? -eq ];then
echo " [ √ ] 已设置lilo密码,符合要求" >> out.txt
else
echo " [ X ] 没有设置lilo密码,不符合要求,建议设置lilo密码" >> out.txt
fi
fi
echo "..."
echo "check over"
echo -e "" ## 详细过滤脚本 待更新中...## echo -e "\n"
echo "--------------------------------------------------------------------------"
echo ""
echo "检查结果:"
echo ""
cat ./out.txt
echo ""
echo "--------------------------------------------------------------------------"
echo ""
[root@localhost ~]#
执行效果:

linux安全配置检查脚本_v0.5的更多相关文章
- linux安全配置检查脚本_v0.8
脚本环境:RHEL6.* 脚本说明:该脚本作用为纯执行检测不涉及更改配置等操作,与直接上来就改安全配置等基线脚本相比相对安全一些.虽然如此,在你执行该脚本之前仍然建议你备份或快照一下目标系统. 代码部 ...
- Linux安全基线检查脚本
基线检查内容: 一:共享账号检查 配置名称:用户账号分配检查,避免共享账号存在配置要求:1.系统需按照实际用户分配账号; 2.避免不同用户间共享账号,避免用户账号和服务器间通信使用的账号共享.操作指南 ...
- 服务端测试环境hosts配置检查脚本
[本文出自天外归云的博客园] 问题 由于A测试环境和B测试环境相互耦合,B测试环境切换导致我方测试环境需要更改后台服务器的响应配置.若多台服务器中有一台服务器没有更改配置,则在测试过程中将会出现问题. ...
- linux系统健康检查脚本
#!/bin/bash echo "You are logged in as `whoami`"; if [ `whoami` != root ]; then echo " ...
- linux 安装配置kafka脚本
安装脚本 #!/bin/bash # auto install kafka echo "========= Start to install kafka ==============&quo ...
- Linux CPU 核数检查脚本
#!/bin/bash physicalNumber=0 coreNumber=0 logicalNumber=0 HTNumber=0 logicalNumber=$(grep "proc ...
- linux 安装配置zookeeper脚本
#!/bin/bash # automatic install zookeeper echo "========= Start to install zookeeper ========== ...
- linux安装配置JDK脚本
#!/bin/bash # install jdk and configuring environment variables function installjdk(){ tar -zxf jdk- ...
- linux各版本基线检查脚本(centos6、centos7、ubuntu系列)
以下是centos7基线检查脚本: #!/bin/bash #version v1. by pensar #操作系统linux 配置规范--centos7 cat <<EOF ****** ...
随机推荐
- ios中自定义checkbox
//自定义button#import <UIKit/UIKit.h> @interface CKButton : UIButton @end #import "CKButton. ...
- [转载]Ubuntu安装配置 git 服务器和客户端
原文地址:Ubuntu安装配置 git 服务器和客户端作者:ding404 1.配置前准备 服务器:安装ssh server另外还装了gitosis做git的权限管理 sudo apt-get ins ...
- MATLAB 向量
MATLAB 向量: 1.MATLAB 行向量: 创建行向量括在方括号中的元素的集合,用空格或逗号分隔的元素. 2.MATLAB 列向量: 创建列向量括在方括号中的元素的集合,使用分号来分隔的元素. ...
- linux下的工作模型以及Nginx工作原理
Web服务器主要任务就是处理来自客户端的请求,一般情况下Web服务器处理并发连接请求的工作模型有以下几种方式: 1.单线程web服务器(Single-threaded web servers) 此 ...
- Kickstart无人值守安装[转载]
导言 作为中小公司的运维,经常会遇到一些机械式的重复工作,例如:有时公司同时上线几十甚至上百台服务器,而且需要我们在短时间内完成系统安装. 常规的办法有什么? 光盘安装系统===>一个服务器DV ...
- POJ 2976 Dropping tests (0/1分数规划)
Dropping tests Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 4654 Accepted: 1587 De ...
- 【Smali】Smali文件的动态调试
1.简介 smalidea是一个IntelliJ IDEA/Android Studio smali语言插件,可实现动态调试smali代码.下载地址为:https://github.com/Jesus ...
- 【Algorithm】选择排序
一. 算法描述 选择排序:比如在一个长度为N的无序数组中,在第一趟遍历N个数据,找出其中最小的数值与第一个元素交换,第二趟遍历剩下的N-1个数据,找出其中最小的数值与第二个元素交换......第N-1 ...
- idea设置tomcat虚拟路径的两种方法
1.使用tomcat自己的虚拟路径 1.1.在tomcat\config\server.xml中配置 path="/upload" 虚拟路径 E:\photo\upload 图片存 ...
- 在ToolStrip中加入具有更好体验性的DateTimePicker
一. 需求的产生 很多时候,需要根据年月或日期来检索数据.在我的数据库中,如果只需要以月为单位,我一般按照200801这样的格式(yyyyMM)保存为int类型.在做数据检索时,是根据工具栏 ...