O timestamp_type
em /etc/sudoers
ou /etc/sudoers.d/*
está definido como tty
ou ppid
? tty
é o padrão de acordo com a página de manual do sudo
:
timestamp_type -
sudoers
uses per-user time stamp files for credential caching. Thetimestamp_type
option can be used to specify the type of time stamp record used. It has the following possible values:
global
A single time stamp record is used for all of a user's login sessions, regardless of the terminal or parent process ID. An additional record is used to serialize password prompts whensudo
is used multiple times in a pipeline, but this does not affect authentication.
ppid
A single time stamp record is used for all processes with the same parent process ID (usually the shell). Commands run from the same shell (or other common parent process) will not require a password fortimestamp_timeout
minutes (15 by default). Commands run via sudo with a different parent process ID, for example from a shell script, will be authenticated separately.
tty
One time stamp record is used for each terminal, which means that a user's login sessions are authenticated separately. If no terminal is present, the behavior is the same as ppid. Commands run from the same terminal will not require a password fortimestamp_timeout
minutes (15 by default).The default value is
tty
.This setting is only supported by version 1.8.21 or higher.
Se estiver definido como tty
ou ppid
, isso explica por que você está sendo solicitado a fornecer uma senha todas as vezes. Cada comando sudo
que você está executando está sendo executado em um gnome-terminal
separado e, portanto, um tty AND diferente de um PID pai diferente.
Parece que global
é a única configuração que permitirá o que você deseja.
Se isso não ajudar, qual é a sua configuração de timestamp_timeout
? Está definido para 0
? O padrão deve ser de 15 minutos.
Verifique também as outras configurações de timestamp*
( timestampdir
, timestampowner
). Eles poderiam causar este problema se timestampdir
(o padrão em meu sistema sid debian for / run / sudo / ts ) não existir ou não for rwX por timestampowner
(raiz padrão ).
sudo
registrará uma mensagem de erro descritiva via syslog e enviará um e-mail ao administrador (root) se essas configurações resultarem em erro.
Uma outra opção é editar /etc/sudoers
para que seu usuário possa executar iftop
sem precisar digitar sua senha. por exemplo,
yourusernamehere ALL= NOPASSWD: /usr/sbin/iftop
Veja Como executar um programa específico como root sem um prompt de senha? para obter mais detalhes sobre isso.