Bloquear algumas contas durante alguns períodos

8

É possível bloquear algumas contas para estar acessível apenas durante períodos específicos?

Por exemplo, a conta Joe só deve estar acessível durante o horário comercial.

Dimitris Leventeas
fonte
não fora da caixa no unix, eu acho ... mas talvez seja possível se você estiver fazendo alguma autenticação avançada com ldap, kerberos ou algo assim ... ou talvez até com o SELinux. Eu realmente não tenho certeza, então isso não é uma resposta real.
Xenoterracide

Respostas:

5

Se você está falando sobre Linux, depende se a distribuição for pam_time.so ou não. Esse módulo PAM pode suportar a limitação do acesso a determinados horários do dia, com exceções do usuário, totalmente em loop na pilha do PAM.

Para outros * NIX, se eles suportarem PAM (como Solaris), você provavelmente poderá obter e compilar pam_time.so de algum lugar.

nzwulfin
fonte
2

No FreeBSD você pode usar o pwutilitário:

pw lock <user>

e

pw unlock <user>

Então agora tudo o que você precisa fazer é criar um script para adicionar logoute killcomandar conforme necessário, percorrer os usuários, executar via cronjob e pronto!

gvkv
fonte
na verdade, esse método pode ser adaptado ao linux. Uma maneira de bloquear uma conta é definindo o ... penúltimo campo no / etc / shadow para uma data anterior. A especificação dos campos é "Dias desde a época em que a conta expira" para que você possa alterá-la através do cron.
Xenoterracide