Загрузить файлы в «/»

This commit is contained in:
Антон Шевцов 2024-08-29 11:10:11 +03:00
parent 2f0aa77af3
commit 4eff0fd3dd

31
block_local_users Normal file
View File

@ -0,0 +1,31 @@
#!/bin/bash
# Скрипт будет работать если определена переменная окружения I_AM_SURE=1
if [ "$EUID" -ne 0 ]
then echo "root only"
exit 255
fi
# диапазон локальных уидов берем из /etc/login.defs
uid_max=$(grep UID_MAX /etc/login.defs | awk '{print $2}')
uid_min=$(grep UID_MIN /etc/login.defs | awk '{print $2}')
# диапазон исключений
reserved_min=1000
reserved_max=1100
local_users=$(awk -v RMIN=$reserved_min -v RMAX=$reserved_max -v UID_MAX=$uid_max -v UID_MIN=$uid_min -F ':' \
'{if ( (($3>=UID_MIN) && ($3<RMIN)) || (($3>RMAX) && ($3<=UID_MAX)) ) {print $1} }' \
/etc/passwd | sort -n )
DRYRUN='/usr/bin/echo'
if [ "xxx${I_AM_SURE}" == "xxx1" ]; then
DRYRUN=''
fi
# блокируем всех пользователей, кто остается за пределами списков
for i in $local_users; do
${DRYRUN} /usr/sbin/passwd --lock $i
done