Re: como executar script em user normal com "poderes" de root

2017-11-04 Por tôpico Antonio Terceiro
On Sat, Nov 04, 2017 at 10:48:34AM -0200, Luís Cláudio A. Gama wrote:
> Bom dia,
> 
>   Verifiquei o grupo a que o device pertence:
> 
> crwxrwxrwx 1 root dialout 166, 0 Nov  4 08:48 /dev/ttyACM0
> 
>   O meu usuário já faz parte desse grupo e também ao grupo tty.
> 
>   Também fiz as alterações sugeridas na regra udev do dispositivo:
> SUBSYSTEM=="tty", ACTION=="add", KERNEL=="ttyACM[0-9]*",
> ATTRS{idVendor}=="0525", SYMLINK+="ttyTS0",MODE="0660",GROUP="dialout"
> 
>   Permissões do sript
> -rwsrwsrwx  1 root root   34 Nov  2 08:57 initsat.sh
> 
>  Fiz o login novamente e o resultado é o mesmo, ainda não é possível mudar
> as permissões sem a senha de root
> 
> De qualquer forma já consigo alterar essas permissões com as alterações
> sugeridas pelo Fred alterando sudoers

talvez não tenha ficado claro, mas o ponto de se ter uma regra do udev é
_não ter_ que alterar permissões na mão: quando você pluga o dispositivo,
o udev já coloca as permissões certas pra você


signature.asc
Description: PGP signature


Re: como executar script em user normal com "poderes" de root

2017-11-04 Por tôpico Luís Cláudio A . Gama
Bom dia,

  Verifiquei o grupo a que o device pertence:

crwxrwxrwx 1 root dialout 166, 0 Nov  4 08:48 /dev/ttyACM0

  O meu usuário já faz parte desse grupo e também ao grupo tty.

  Também fiz as alterações sugeridas na regra udev do dispositivo:
SUBSYSTEM=="tty", ACTION=="add", KERNEL=="ttyACM[0-9]*",
ATTRS{idVendor}=="0525", SYMLINK+="ttyTS0",MODE="0660",GROUP="dialout"

  Permissões do sript
-rwsrwsrwx  1 root root   34 Nov  2 08:57 initsat.sh

 Fiz o login novamente e o resultado é o mesmo, ainda não é possível mudar
as permissões sem a senha de root

De qualquer forma já consigo alterar essas permissões com as alterações
sugeridas pelo Fred alterando sudoers

  Agradeço a ajuda

‌
 Sent with Mailtrack


Luís Cláudio A. Gama
Fones: TIM:  11 9 7765-1735  Res: 11-4602-3400
Skype: luisclaudiogama   http://luisgama.googlepages.com

br.linkedin.com/in/luisclaudiogama



||\|_
|  Voto Distrital !|||"'|""\__
|__|||_||)
!(@)'(@)*!(@)(@)*!(@)

Em 2 de novembro de 2017 15:10, Paulino Kenji Sato 
escreveu:

> Ola,
> Continuo insistindo que o local correto de tratar os dispositivos e pelo
> udev.
> Pode ser que o /dev/ttyACMx não pertença ao grupo dialout, confira qual o
> grupo pertence esse dev (ls -l /dev/ttyACM0).
> O fabricante forneceu as regras do udev, então basta melhorar-lo, por
> exemplo acrescentando o modo.
>
> SUBSYSTEM=="tty", ACTION=="add", KERNEL=="ttyACM[0-9]*",
> ATTRS{idVendor}=="0525", SYMLINK+="ttyTS0",MODE="0660"
>
> Ou um modo mais permissivo, como 0666.
>
> Verifique qual e o grupo do device, inclua os usuários nesse grupo
> (precisa fazer o login para validar as mudanças, existe um comando que
> recerrega, mas não lembro)
>
> # adduser fulano grupo_do_dev
>
> Verifiquei que o dialout e um dos grupos em que um usuário novo e
> adicionado ao criar-lo.
> Caso necessite adicionar um novo grupo ao criar um usuário, modique o
> arquivo /etc/adduser.conf. (pode ser que isso tenha mudado)
> Talvez, o ttyACM* não esteja sendo associado a nenhum grupo, então podemos
> mudar a regrar para:
>
> SUBSYSTEM=="tty", ACTION=="add", KERNEL=="ttyACM[0-9]*",
> ATTRS{idVendor}=="0525", SYMLINK+="ttyTS0",MODE="0660",GROUP="dialout"
>
> Depois de modificar as regras do udev e necessario reinicar os serviços
> relacionados
> # udevadm control --reload-rules && service udev restart && udevadm trigger
>
> Dependendo o tipo de aplicação, o ideal seria impedir o usuário de ter
> acesso físico as conexão usb, e outros.
>
>
> 2017-11-02 9:56 GMT-02:00 Luís Cláudio A. Gama :
>
>> Bom dia,
>>
>>   Em primeiro lugar, gostaria de agradecer todas as sugestõesestou
>> tentando entender tudo e aprender mais com isso.
>>
>> Na inicialização da máquina, eu coloquei em /etc/rc.local
>>
>> chmod 777 /dev/tty/TS0
>>
>> e isso faz que na inicialização da máquina tudo esteja funcionando, já
>> que o Linux cria o /dev/ACM0 e também é criado o link para TS0.
>>
>> Porém minha preocupação é com algum funcionário ( usuário normal não root
>> )xereta, dê uma fuçada na máquina e desplugue o SAT e replugue
>> novamente...aí o sistema deixa de funcionar, pois o Linux cria um novo ACM1
>> apontando para TS0.
>>
>> Seguem minhas observações com suas sugestões:
>>
>>
>> *Junior Polegato:*
>>
>>   O conteúdo do script initsat contém somente a linha chmod
>>
>> script initsat.sh
>> ***
>> #!/bin/bash
>> chmod 777 /dev/ttyTS0
>> *
>>
>>   De acordo com sua sugestão, coloquei o grupo tty para o meu usuário e
>> diz:
>>
>> luis@hal9000:/mnt/midia4/prj/qt/scripts$ ./initsat.sh
>> chmod: alterando permissões de “/dev/ttyTS0”: Operação não permitida
>> luis@hal9000:/mnt/midia4/prj/qt/scripts$
>>
>>
>> *Paulo K. Sato:*
>>
>> Coloquei o grupo dialout pra esse usuário...o tty já estava ( seguindo a
>> sugestão anterior ) e ainda não permite essa operação.
>>
>> Sim, o dispositivo TS0 é criado por udev pois de acordo com o
>> fabricante do sat, eu coloquei o arquivo que eles forneceram
>> em /etc/udev/rules
>>
>> instruções recebidas do fabricante:
>> 
>> 2. Arquivo de configuração para o serviço udev do Linux:
>>
>> 99-SAT.rules
>>
>> Conteúdo:
>>
>> *SUBSYSTEM=="tty", ACTION=="add", KERNEL=="ttyACM[0-9]*",
>> ATTRS{idVendor}=="0525", SYMLINK+="ttyTS0" *
>> *SUBSYSTEM=="tty", ACTION=="remove", KERNEL=="ttyACM[0-9]*",
>> ATTRS{idVendor}=="0525", SYMLINK-="ttyTS0"*
>>
>> Deve ser copiado no diretório: /etc/udev/rules
>> A função desta configuração é alterar o nome do dispositivo reconhecido
>> pelo Linux pela
>> presença do SAT TANCA, que é /dev/ttyACMx, para /dev/ttyTSx.
>> Recomendamos esta alteração para previnir conflitos com outros
>> dispositivos.
>>
>> 
>>
>> Eu fiz algumas testes sem essa regra udev...o device criado na
>> inicialização