sudo para qualquer usuário sem uma senha

0

Se o sudo puder ser configurado sem senha, como:

bob ALL=NOPASSWD: ALL

Então, como você pode configurar o sudo para poder sudo a qualquer usuário sem senha?

Para que

sudo -u domainnameuser.com mkdir www

Funciona para o usuário sudo sem solicitar uma senha [sudo]?

É possível permitir isso sem ativá-lo explicitamente para cada usuário em /etc/sudoers.d e apenas permitir a mudança para todos os usuários e o uso de todos os comandos?

    
por dezza 02.01.2016 / 00:37

1 resposta

2

Crie uma regra como tal:

ALL ALL=(ALL:ALL) NOPASSWD: /bin/mkdir www ""

Isto diz algo como: "Permitir que qualquer usuário em qualquer domínio aja como qualquer usuário: grupo sem pedir uma senha para executar o comando exato" mkdir www "(usando apenas /bin/mkdir , e não algum outro mkdir O conjunto final de citações informa sudo para não permitir mais argumentos.

(As regras são determinadas em ordem com a última regra de correspondência entrando em vigor. Se você tiver outra regra após essa que cobriria o mesmo comando (como ALL), ela entrará em vigor. Eu tive um problema em minha própria configuração onde eu estava especificando %sudo ALL=(ALL:ALL) ALL depois. Como essa regra corresponde à situação, mas requer uma senha, uma senha foi solicitada.)

Realmente, essa não é a maneira de fazer algo assim. Partes de sua descrição implicam que você tem coisas configuradas de uma forma bizarra. Não vou entrar nisso porque está fora do escopo, mas, para conseguir o que você quer e mais flexibilidade, pode haver uma maneira melhor. Parece que você deseja permitir que os usuários criem subdiretórios com um nome específico de propriedade do proprietário do diretório pai. Em vez disso, crie um script que faça o que você deseja (procura o diretório atual, determina seu proprietário e grupo, cria um diretório www here, chmod o novo diretório para o determinado usuário e grupo.) E permite que o script como executável pelo root sem senha no sudo config. Fazê-lo desta maneira significa que o usuário só precisa navegar para o diretório e, em seguida, sudo create-www ou o que for. Você também poderá configurar outras regras no script, como aquelas que só permitem que www seja criado em determinados diretórios.

    
por 02.01.2016 / 01:22