shell script

luna·2022년 12월 14일

linux_info.sh 생성

#!/bin/sh

LANG=C
export LANG
alias ls=ls

#################################################################################
# 변수 설정
#################################################################################
AP_STR="LUNA_linux"

HOST_NAME=`hostname`
DATE_STR=`date +%m%d`

echo " 해당 시스템의 IP 주소를 입력해주세요."
while true
do 
   echo -n "    (ex. 192.168.0.1) : " 
   read IPINFO
   #'.'이 3개이면 통과
   if [ $(echo $IPINFO | tr -d -c '.' | wc -m) -eq 3 ]
      then
		 break
      else
         echo "잘못 입력하셨습니다. 다시 입력해주세요."
         echo ""
   fi
done

RESULT_FILE=$AP_STR"_"$HOST_NAME"_"$IPINFO"_"$DATE_STR".txt"

# echo "[U-07] 파일 및 디렉터리 소유자 설정"
echo "[ID] : U-07" >> $RESULT_FILE 2>&1
echo "[Result] : Info" >> $RESULT_FILE 2>&1
echo "[Comment] : " >> $RESULT_FILE 2>&1
echo "$ sudo find / -nouser -o -nogroup | grep -Ev 'cce.tgz|/proc' | tail -n 10;" >> $RESULT_FILE 2>&1
sudo find / -nouser -o -nogroup >> $RESULT_FILE 2>&1
echo "" >> $RESULT_FILE 2>&1
echo "[Check]" >> $RESULT_FILE 2>&1
echo "*소유자 그룹이 존재하지 않는 파일 및 디렉터리가 없는 경우 양호" >> $RESULT_FILE 2>&1

echo "" >> $RESULT_FILE 2>&1
echo "======================================================================================"  >> $RESULT_FILE 2>&1
echo "" >> $RESULT_FILE 2>&1

# echo "[U-11] /etc/(x)inetd.conf 파일 소유자 및 권한 설정"
echo "[ID] : U-11" >> $RESULT_FILE 2>&1
echo "[Result] : Info" >> $RESULT_FILE 2>&1
echo "[Comment] : " >> $RESULT_FILE 2>&1
echo "$ sudo find / -name *inetd.conf;" >> $RESULT_FILE 2>&1
sudo find / -name *inetd.conf;  >> $RESULT_FILE 2>&1 
echo "" >> $RESULT_FILE 2>&1
echo "[Check]" >> $RESULT_FILE 2>&1
echo "*/etc/(x)inetd.conf 파일의 소유자가 root이고, 권한이 644인 경우 양호" >> $RESULT_FILE 2>&1

echo "" >> $RESULT_FILE 2>&1
echo "======================================================================================"  >> $RESULT_FILE 2>&1
echo "" >> $RESULT_FILE 2>&1

# echo "[U-16] world writable 파일 점검"
echo "[ID] : U-16" >> $RESULT_FILE 2>&1
echo "[Result] : Info" >> $RESULT_FILE 2>&1
echo "[Comment] : " >> $RESULT_FILE 2>&1
echo "$ sudo find / -type f -perm -2 -exec ls -l {} \; | grep -Ev 'cce.tgz|/proc' | tail -n 10;" >> $RESULT_FILE 2>&1
sudo find / -type f -perm -2 -exec ls -l {} \; >> $RESULT_FILE 2>&1
echo "" >> $RESULT_FILE 2>&1
echo "[Check]" >> $RESULT_FILE 2>&1
echo "*world writable 파일이 존재하지 않거나, 존재 시 설정 이유를 확인하고 있는 경우 양호" >> $RESULT_FILE 2>&1

echo "" >> $RESULT_FILE 2>&1
echo "======================================================================================"  >> $RESULT_FILE 2>&1
echo "" >> $RESULT_FILE 2>&1

-> pipeline command 실행 오류 확인 필요

0개의 댓글