chattr.sh

chattr.sh

#!/bin/bash
#printf "%-15s %+30s\n" $0 jihongrui@outlook.com
#LANG="en_US.UTF-8"
PATH="/sbin:/usr/sbin:/usr/local/sbin:/bin:/usr/bin:/usr/local/bin:"
export PATH
#锁定关键文件和日志

FILE=(
/etc/passwd
/etc/group
/etc/shadow
/etc/gshadow
/etc/inittab
/etc/sudoers
)

LOG=(
 /var/log/messages
 /var/log/secure
 /var/log/lastlog
)

function file(){
if [[ $1 == "+" ]];then
    AA='+i'
else
    AA='-i'
fi
for x in ${FILE[@]}
do
    chattr ${AA} ${x}
done
}

function log(){
if [[ $1 == "+" ]];then
    AA='+a'
else
    AA='-a'
fi
for x in ${LOG[@]}
do
    chattr ${AA} ${x}
done
}


if [[ $UID != "0" ]]
then
    echo "Plsase Use root or sudo $0 "
fi
case $1 in 
    file+)
        file +
        ;;
    file-)
        file -
        ;;
    log+)
        log +
        ;;
    log-)
        log -
        ;;
    *)
        echo $"Usage: $0 {file+ |file-|log+|log-}"
        exit 2
esac
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容