Faillog - contagem de login sem sucesso no Motd

0

Desejo incluir uma contagem de tentativas de login com falha sempre que um usuário faz login.

Eu criei:

/usr/local/bin/dynmotd

que contém

#!/bin/bash

FAILLOG='faillog -u'

echo -e "
$FAILLOG
"

e adicionado /usr/local/bin/dynmotd a /etc/profile

O problema é que eu recebo /var/log/faillog: Permission denied

sempre que faço login como usuário comum. Existe uma maneira de escalar temporariamente privilégios para executar esse comando na motd, ou temporariamente dar a esse usuário acesso ao faillog para obter essa resposta? Eu não quero dar a todos os usuários acesso ao faillog permanentemente.

UPDATE

Tentei isto:

#!/bin/bash

CURRENTUSER='whoami'

sudo -u bob setfacl -m u:$CURRENTUSER:rx /var/log/faillog

FAILLOG='sudo -u bob faillog -u $CURRENTUSER'

echo -e "
$FAILLOG
"

Adicione 'bob' aos sudoers com NOPASSWD: , isso funciona bem quando estou logando como 'bob', mas se eu tentar fazer o login como 'bob2' eu recebo a senha do sudoers.

    
por Kiksy 22.07.2014 / 13:57

1 resposta

1

Sugiro criar um script que seja executado como root. Execute de hora em hora, escrevendo a saída de 'faillog -a' em um arquivo de texto ao qual todos tenham acesso. Então tenha seu MOTD grep que arquiva para o usuário atual. Isso evitaria ter que fazer alterações desnecessárias nas permissões ou conceder acesso ao sudo a alguém que não precise dele.

    
por 22.07.2014 / 19:33