linux安全配置檢查腳本_v0.5


看到網上有人分享了一些linux系統的基線檢查腳本,但有些檢查項未必適合自己或者說檢查的不夠完善,

計划按着自己的需求重新寫一份出來,其中腳本的檢查范圍在不斷更新中。

腳本內容:

[root@localhost ~]# cat check.sh 
#! /bin/bash
cat <<EOF
*************************************************************************
 linux安全配置檢查腳本:
    1. 輸出結果也可以在當前目錄的out.txt中查看
    2. 檢查范圍:
       -》賬號策略檢查
       -》賬號注銷檢查
       -》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 90 -a $passmax -gt 0 ];then
   echo "  [OK]口令生存周期為${passmax}天,符合要求" >> out.txt
 else
   echo "  [ X ] 口令生存周期為${passmax}天,不符合要求,建議設置不大於90天" >> out.txt
 fi


 if [ $passmin -ge 6 ];then
   echo "  [OK]口令更改最小時間間隔為${passmin}天,符合要求" >> out.txt
 else
   echo "  [ X ] 口令更改最小時間間隔為${passmin}天,不符合要求,建議設置大於等於6天" >> out.txt
 fi


 if [ $passlen -ge 8 ];then
   echo "  [OK]口令最小長度為${passlen},符合要求" >> out.txt
 else
   echo "  [ X ] 口令最小長度為${passlen},不符合要求,建議設置最小長度大於等於8" >> out.txt
 fi


 if [ $passage -ge 30 -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 600 -a $TMOUT -ge 10 ] ; 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 2> /dev/null`

if [ $? -eq 0 ];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 0 ];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 ~]# 

 

執行效果:

 from


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM