como escrever no script bash: su - usuário, comando, senha, sem me perguntar a senha? [duplicado]

1

vou criar o arquivo sh (script bash)

#!/bin/bash
su - username -c XXXXXXXX

xxxxxx = comando

onde eu coloco minha senha? (mas NÃO me pergunta senha no terminal ... como?)

    
por Manuel songokuh 22.06.2015 / 18:18

1 resposta

1

Você deve analisar adequadamente o arquivo sudoers . Você faria isso com um programa chamado visudo , que faz alguma mágica por trás dos bastidores.

sudoers pode ser configurado de tal forma que qualquer usuário possa ter acesso a um conjunto limitado ou a todos os comandos disponíveis no sistema. Você também pode configurá-lo para que um usuário possa executar qualquer comando como outro usuário. Eu acho que esse terceiro método é o jeito que você decide ir.

No entanto, se você decidiu que isso é algo que realmente deseja realizar, recomendo determinar quais comandos você deseja executar e usar a abordagem de lista branca, ao contrário de desbloquear todos os comandos.

Se você estiver executando o Chromium ou o Firefox, ou qualquer servidor / cliente exposto à Internet como um usuário no arquivo sudoers com acesso irrestrito e sem senha, você também deve executá-los na raiz.

  1. visudo
  2. Adicione a seguinte entrada
    • user1 ALL = (user2) NOPASSWD: / bin / bash
user1@host $ sudo -u user2 cat /home/user2/.ssh/authorized_keys

Recursos:

  1. permite o sudo a outro usuário sem senha
  2. página de manual do visudo
  3. Documentação dos Sudoers do Ubuntu
por 22.06.2015 / 18:47