No Debian 6, como iniciar um daemon como um usuário diferente?

4

Estou tentando iniciar o daemon Tor como outro usuário. Quando é instalado, o Tor cria automaticamente um novo usuário "debian-tor", no entanto, ele não é executado como este usuário, mas sim como root.

No Debain 5 eu removi o Tor do arranque com o Update-rc.d e adicionei um novo script de inicialização que basicamente faz su debian-tor -c '/etc/init/tor $1' . Isso funcionou muito bem, mas no Dabian 6 (usando insserv ao invés de update-rc.d) ele pediu a senha do debiant-tor (apesar de rodar como root).

Eu estou perdido aqui, meu iptables só funcionará se o Tor for executado como um usuário diferente, e é muito mais seguro não executá-lo como root. O que posso fazer?

    
por user 23.05.2011 / 08:05

1 resposta

1

Os serviços geralmente são executados como root. No entanto, você tem duas opções:

  1. Você tem algum tipo de script que inicia o serviço como esse usuário. Existem algumas maneiras de conseguir isso. Você poderia fazer o seguinte:

    sudo -u debian-tor /etc/init.d/service
    

    e, em seguida, adicione o debian-tor ao arquivo do sudoer para este comando

  2. Você pode usar o daemon stop-start com a opção --chuid.

por 24.05.2011 / 01:19