linux 基线检查
1 检查用户缺省UMASK
#cat /etc/profile|sed '/^#/d'|sed '/^$/d'|grep -i "umask"
修改umask
vi /etc/profile
umask 033
source /etc/profile
2 检查口令重复次数限制
##!/bin/bash
#function Calculate
{
CREDIT=`cat $FILE|egrep -v "^#|^$"|grep -w "credit"|sed 's/^.*credit=//g'|sed 's/\s.*$//g'`
DCREDIT=`cat $FILE|egrep -v "^#|^$"|grep -w "dcredit"|sed 's/^.*dcredit=//g'|sed 's/\s.*$//g'`
LCREDIT=`cat $FILE|egrep -v "^#|^$"|grep -w "lcredit"|sed 's/^.*lcredit=//g'|sed 's/\s.*$//g'`
UCREDIT=`cat $FILE|egrep -v "^#|^$"|grep -w "ucredit"|sed 's/^.*ucredit=//g'|sed 's/\s.*$//g'`
OCREDIT=`cat $FILE|egrep -v "^#|^$"|grep -w "ocredit"|sed 's/^.*ocredit=//g'|sed 's/\s.*$//g'`
MINCLASS=`cat $FILE|egrep -v "^#|^$"|grep -w "minclass"|sed 's/^.*minclass=//g'|sed 's/\s.*$//g'`
MINLEN=`cat $FILE|egrep -v "^#|^$"|grep "minlen"|sed 's/^.*minlen=//g'|sed 's/\s.*$//g'`
COUNT1=`cat $FILE|grep -i "min=disabled,12,8,6,5"|grep -i "max=40"| grep -i "passphrase=3"|grep -i "match=4"|grep -i "similar=deny"|grep -i "retry=3"|wc -l`
COUNT2=0
for NO in $CREDIT $DCREDIT $LCREDIT $UCREDIT $OCREDIT
do
if ([ $NO -lt 0 ]);
then COUNT2=`expr $COUNT2 + 1`
fi
done
if ([ ${MINCLASS:=0} -ge 2 ] && [ ${MINLEN:=0} -ge 8 ]);
then echo "check result:true"
elif ([ $COUNT2 -ge 2 ] && [ ${MINLEN:=0} -ge 8 ]);
then echo "check result:true"
elif ([ "$COUNT1" == "1" ]);
then echo "check result:true"
else echo "check result:false"
fi
unset CREDIT DCREDIT LCREDIT UCREDIT OCREDIT MINCLASS MINLEN COUNT1 COUNT2
}
#if ([ -f /etc/redhat-release ] && [ -f /etc/pam.d/system-auth ]);
then FILE=/etc/pam.d/system-auth
echo "====/etc/pam.d/system-auth is:===="
cat $FILE |sed '/^#/d'|sed '/^$/d'
Calculate
elif ([ -f /etc/SuSE-release ] && [ -f /etc/pam.d/common-password ] && [ `cat /etc/pam.d/common-password |egrep -i "credit|min|max|passphrase|remember"|wc -l` -gt 0 ]);
then FILE=/etc/pam.d/common-password
echo "====/etc/pam.d/common-password is:===="
cat $FILE|grep -v '^#'|grep -v '^$'
Calculate
elif ([ -f /etc/SuSE-release ] && [ -f /etc/pam.d/passwd ] && [ `cat /etc/pam.d/passwd |egrep -i "credit|min|max|passphrase|remember"|wc -l` -gt 0 ]);
then FILE=/etc/pam.d/passwd
echo "====/etc/pam.d/passwd is:===="
cat $FILE|grep -v '^#'|grep -v '^$'
Calculate
fi;
#if [ -f /etc/pam.d/login ];
then cat /etc/pam.d/login |sed '/^#/d'|sed '/^$/d';
fi;
#if [ -f /etc/pam.d/sshd ];
then cat /etc/pam.d/sshd |sed '/^#/d'|sed '/^$/d';
fi;
linux 基线检查的更多相关文章
- Linux安全基线检查脚本
基线检查内容: 一:共享账号检查 配置名称:用户账号分配检查,避免共享账号存在配置要求:1.系统需按照实际用户分配账号; 2.避免不同用户间共享账号,避免用户账号和服务器间通信使用的账号共享.操作指南 ...
- linux各版本基线检查脚本(centos6、centos7、ubuntu系列)
以下是centos7基线检查脚本: #!/bin/bash #version v1. by pensar #操作系统linux 配置规范--centos7 cat <<EOF ****** ...
- 安全运维中基线检查的自动化之ansible工具巧用
i春秋作家:yanzm 原文来自:安全运维中基线检查的自动化之ansible工具巧用 前几周斗哥分享了基线检查获取数据的脚本,但是在面对上百台的服务器,每台服务器上都跑一遍脚本那工作量可想而知,而且都 ...
- Linux显示检查设置文件中的语法是否正确
Linux显示检查设置文件中的语法是否正确 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ apachectl [conflgtest] 程序"apa ...
- linux 下检查java jar包 程序是否正常 shell
linux 下检查java jar包 程序是否正常 shell http://injavawetrust.iteye.com BATCH_SERVER="batch.jar" NR ...
- Linux性能检查命令总结[转]
一些常用的网络.IO.内存监控指令,Linux性能检查命令总结
- 【基线检查】(高)基线检查--禁用local-infile选项(访问控制)
(高)基线检查--禁用local-infile选项(访问控制) 描述 禁用local_infile选项会降低攻击者通过SQL注入漏洞器读取敏感文件的能力 检查提示 -- 加固建议 编辑Mysql配置文 ...
- shell脚本 阿里云基线检查一键配置
一.简介 源码地址 日期:2017/9/1 介绍:安全加固脚本,会符合阿里云基线检查.有幂等性,可重复执行 效果图: 二.使用 适用:centos6/7 语言:中文 注意:脚本是符合阿里云基线检查的配 ...
- Linux基线合规检查中各文件的作用及配置脚本
1./etc/motd 操作:echo " Authorized users only. All activity may be monitored and reported " ...
- 阿里云Linux系统基线检查优化
1.用户权限配置文件的权限优化 描述:设置用户权限配置文件的权限 操作时建议做好记录或备份 chown root:root /etc/passwd /etc/shadow /etc/group /et ...
随机推荐
- 【AD21】软件基础
1.AD21最后生成什么文件打板子? 生成gerber文件 2.一个工程包括什么? 原理图库,原理图,PCB库,PCB 3.距离单位? 默认是mil,1mm约为40mil 4.软件中PCB层? 表层焊 ...
- elasticsearch 排错总结
控制台乱码 修改elasticsearch-7.6.2\config下的jvm.options文件,在任意行上加上 -Dfile.encoding=GBKIK报错但成功启动,按照网上的说法是jdk权限 ...
- Docker CLI docker run 常用命令
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化.Docker是内核 ...
- Java07 异常
一.Error 和 Exception 1.什么是异常 实际工作中,遇到的情况不可能是非常完美的.比如:你写的某个模块,用户输入不一定符合你的要求.你的程序要打开某个文件,这个文件可能不存在或者文件格 ...
- Windows10+VS2019从源码编译 Qt5
参考 Windows10+MSVC(VS2022)从源码编译QT5.12.11 - 知乎 (zhihu.com) qt-labs/vstools ~ qt-labs/vstools (github.c ...
- 使用IntelliJ创建第一个简单的Springboot项目
使用Intellij创建Springboot项目 使用IntelliJ创建Springboot项目是非常方便的,创建过程中,我们可以自由的选择要启用的springboot生态里的各种框架.插件.本文只 ...
- svn 中如何checkout出单个文件
A 通过命令行操作 1.检出目录images svn co --depth=empty http://www.iusesvn.com/project1/images images_work_dir 这 ...
- QT管理网络状态和网络连接
参考:http://www.cleartechfei.com/2020/07/qt%E4%BD%BF%E7%94%A8http%E5%8D%8F%E8%AE%AE/ 1. 用Qt框架进行应用开发的过程 ...
- 小程序嵌套h5webview.特定时间跳转小程序页面.调起e证通的人脸核身.成功了返回webview.
e证通链接. https://cloud.tencent.com/document/product/1007/56643#3.2-.E5.AE.89.E8.A3.85-sdk
- 【RUNOOB】C语言学习之指针
资料来源: (1) runoob; (2) C语言程序设计; 注1:Runoob中对于指针的讲述比较清晰简单,摘录出来(后续补充指针与结构体,指针与函数参数); 1.指针与变量的内存位置 (1) 每个 ...