ограничение работы пользователя по времени

Ответить
banzay242
Сообщения: 753
Зарегистрирован: 18 авг 2017, 10:50
Operating system: MATE в релизе R10
Откуда: Уфа Омск

ограничение работы пользователя по времени

Сообщение banzay242 » 26 окт 2017, 09:32

Код: Выделить всё

Отредактировано под РОСУ 
Ограничить вход в систему пользователю myuser (учетная запись, которой пользуется ребенок) по времени. Рассмотрим простой вариант: в будние дни разрешить с 18:00 до 21:00, в выходные (сб,вс) – 12:00-21:00. В остальное время логин на компьютер – запрет!
Ограничение будет организовано средствами системы (PAM, Pluggable Authentication Modules. По-русски Подгружаемые Модули Аутентификации (ПМА))
Для этого нужно внести измененеия в файл /etc/security/time.conf
Там небольшой ман внутри!
/etc/security/time.conf 
*;*;myuser;MoTuWeThFr1800-2100|SaSu1200-2100
Далее редактируем файлы, расположенные в папке /etc/pam.d/. Для графической оболочки достаточно внести измененеия в файл /etc/pam.d/sddm
Вписываем ниже последней строки, начинающейся с auth
/etc/pam.d/sddm
account required pam_time.so
Замечательно, ограничения вступают в силу немедля. Но есть один ньюанс. Наступает время, когда сеанс залогиненного пользователя должен закончиться (в 21:00). Но он продолжает и далее работать. Непорядок! Надо принудительно завершить его сеанс. Выполняем это средствами штатного планировщика cron. Редактируем планировщик от имени пользователя myuser:
$ crontab -e
где вписываем такие строки:
01 21 * * killall -u myuser
#m - минуты, h - часы, dom - день месяца, mom - месяц, dow - день недели, command - выполняемая команда
Строка “killall -u myuser” выполняют принудительное завершение сеанса пользователя, если он сам не захотел отключаться.

Ответить