Como o sudo lembra que você já digitou a senha do root?

24

Ao usar o sudo no Linux, ele pede uma senha de root, mas apenas na primeira vez que você a executa. Se você executar outro comando sudo, lembre-se de que você já digitou a senha anteriormente e não a solicita:

thomas@ubuntu:~$ sudo id
[sudo] password for thomas: ******
uid=0(root) gid=0(root) groups=0(root)
thomas@ubuntu:~$ sudo id
uid=0(root) gid=0(root) groups=0(root)

Como o sudo faz isso? Onde esta informação é armazenada? Minha idéia é que ele se lembra do id do terminal (como pts / 1), mas onde isso é armazenado? O primeiro processo do sudo é finalizado quando é feito com o comando, certo?

Eu sei que sudo é um programa setuid, então ele tem privilégios de root o tempo todo, mas eu ainda não consigo pensar em um bom lugar para armazenar uma informação que um usuário já tenha digitado uma senha. Existe algum processo daemon envolvido?

    
por kuba 24.04.2012 / 22:58

2 respostas

14

Where is this information stored?

É provavelmente abaixo de /var/db/sudo ou /var/run/sudo e você provavelmente encontrará diretórios de nomes de usuários com arquivos sob eles ordenados por tty number.

Os privilégios reais concedidos, incluindo quanto tempo as sessões duram antes de você ter que digitar sua senha novamente, dependem de como os sudoers são configurados. Há configurações para conceder / restringir muitas coisas diferentes, mas elas não são armazenadas nesses arquivos, que armazenam apenas timestamps. O tempo que uma sessão dura, ou quando o sudo precisa solicitar sua senha novamente, é determinado por um delta de tempo atual e o registro de data e hora da sessão nesse diretório, e por quanto tempo o sudo é configurado para permitir que uma sessão dure.

    
por 24.04.2012 / 23:13
11

Experimente man sudo e dê uma olhada na seção FILES:

/var/lib/sudo Directory containing time stamps

E no SECURITY NOTES

sudo will check the ownership of its time stamp directory (/var/lib/sudo by default) [...]

(man pages do Debian 6.0.4)

    
por 25.04.2012 / 00:07

Tags