Executar comandos root em shell script [RESOLVIDO]

1. Executar comandos root em shell script [RESOLVIDO]

perdugames
perdugames

(usa Debian)

Enviado em 15/10/2017 - 20:52h

Percebo em programas como wicd-curses que eles executam comando root sem pedir a senha do usuario, exemplo iwconfig para se conectar a uma rede wifi, e também fazem isso sem modificar o aquivo /etc/sudoers, então como eles fazem isso? estou precisando criar scripts que irão executar comandos root, porém não quero pedir a senha do usuario, e também não quero ter que alterar o arquivo /etc/sudoers.


  


2. MELHOR RESPOSTA

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 15/10/2017 - 21:35h

perdugames escreveu:

Percebo em programas como wicd-curses que eles executam comando root sem pedir a senha do usuario, exemplo iwconfig para se conectar a uma rede wifi, e também fazem isso sem modificar o aquivo /etc/sudoers, então como eles fazem isso? estou precisando criar scripts que irão executar comandos root, porém não quero pedir a senha do usuario, e também não quero ter que alterar o arquivo /etc/sudoers.


Uma idéia >>> https://www.vivaolinux.com.br/dica/Executar-comando-que-exija-root-como-usuario-comum/

------------------------------------------| Linux User #621728 |-----------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------| Linux User #621728 |-----------------------------------------


3. Re: Executar comandos root em shell script [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 15/10/2017 - 21:46h

 $ su root -c "<comando> <argumentos> <arquivos> <etc>"  


Muitos que vivem merecem a morte. E alguns que morrem merecem viver. 
Você pode dar-lhes a vida?
Então não seja tão ávido para julgar e condenar alguém a morte.
Pois mesmo os muitos sábios não conseguem ver os dois lados.



4. Re: Executar comandos root em shell script [RESOLVIDO]

perdugames
perdugames

(usa Debian)

Enviado em 15/10/2017 - 22:00h

Mauriciodez escreveu:

perdugames escreveu:

Percebo em programas como wicd-curses que eles executam comando root sem pedir a senha do usuario, exemplo iwconfig para se conectar a uma rede wifi, e também fazem isso sem modificar o aquivo /etc/sudoers, então como eles fazem isso? estou precisando criar scripts que irão executar comandos root, porém não quero pedir a senha do usuario, e também não quero ter que alterar o arquivo /etc/sudoers.


Uma idéia >>> https://www.vivaolinux.com.br/dica/Executar-comando-que-exija-root-como-usuario-comum/

------------------------------------------| Linux User #621728 |-----------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------| Linux User #621728 |-----------------------------------------


É exatamente isso que estava procurando, aqui como fiz:

1 - Criei um link simbólico assim:
sudo ln -s /sbin/iwgetid /home/eu/.iwgetid.lnk 

2 - Mudei a permissão dele:
sudo chmod 4777 .iwgetid.lnk 

3 - E executar o comando sem precisar utilizar privilégios root:
/home/eu/.iwgetid.lnk 



5. Re: Executar comandos root em shell script [RESOLVIDO]

perdugames
perdugames

(usa Debian)

Enviado em 15/10/2017 - 22:02h

[quote]mithrandir escreveu:

 $ su root -c "<comando> <argumentos> <arquivos> <etc>"  


desta maneira irá pedir senha, não serviria.




6. Re: Executar comandos root em shell script [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 15/10/2017 - 22:03h

perdugames escreveu:
É exatamente isso que estava procurando, aqui como fiz:

1 - Criei um link simbólico assim:
sudo ln -s /sbin/iwgetid /home/eu/.iwgetid.lnk 

2 - Mudei a permissão dele:
sudo chmod 4777 .iwgetid.lnk 

3 - E executar o comando sem precisar utilizar privilégios root:
/home/eu/.iwgetid.lnk 

Você percebeu que está fodere com a sua segurança? Porra, se o binário não era para ser executado como root, o que adianta colocá-lo na /home? Na prática, só deixou um {su}do mais rápido e inseguro.
Muito bom.

Muitos que vivem merecem a morte. E alguns que morrem merecem viver. 
Você pode dar-lhes a vida?
Então não seja tão ávido para julgar e condenar alguém a morte.
Pois mesmo os muitos sábios não conseguem ver os dois lados.



7. Re: Executar comandos root em shell script [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 15/10/2017 - 22:04h

Meu amigo, para que serve escalonamento de previlégios assim? Dá chmod 777 /bin/* /sbin/* logo. Aproveite e deixe a conta root sem senha.


Muitos que vivem merecem a morte. E alguns que morrem merecem viver. 
Você pode dar-lhes a vida?
Então não seja tão ávido para julgar e condenar alguém a morte.
Pois mesmo os muitos sábios não conseguem ver os dois lados.



8. Re: Executar comandos root em shell script [RESOLVIDO]

perdugames
perdugames

(usa Debian)

Enviado em 15/10/2017 - 22:13h

mithrandir escreveu:

[quote]perdugames escreveu:
É exatamente isso que estava procurando, aqui como fiz:

1 - Criei um link simbólico assim:
sudo ln -s /sbin/iwgetid /home/eu/.iwgetid.lnk 

2 - Mudei a permissão dele:
sudo chmod 4777 .iwgetid.lnk 

3 - E executar o comando sem precisar utilizar privilégios root:
/home/eu/.iwgetid.lnk 

Você percebeu que está fodere com a sua segurança? Porra, se o binário não era para ser executado como root, o que adianta colocá-lo na /home? Na prática, só deixou um {su}do mais rápido e inseguro.
Muito bom.

não entendi o que você quis dizer aqui " Porra, se o binário não era para ser executado como root, o que adianta colocá-lo na /home?". Não entendo como isso poderia comprometer a segurança, e qual seria diferença entre colocar na pasta /sbin ou na /home/eu?




9. Re: Executar comandos root em shell script [RESOLVIDO]

perdugames
perdugames

(usa Debian)

Enviado em 15/10/2017 - 22:16h

[quote]mithrandir escreveu:

Meu amigo, para que serve escalonamento de previlégios assim? Dá chmod 777 /bin/* /sbin/* logo. Aproveite e deixe a conta root sem senha.

então como é que os programas fazem? quando executo o wicd-curses, ele obviamente está executando um iwgetid e não me pede senha alguma. o que quero saber é como os programas fazem.


10. Re: Executar comandos root em shell script [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 15/10/2017 - 22:20h

perdugames escreveu:
não entendi o que você quis dizer aqui " Porra, se o binário não era para ser executado como root, o que adianta colocá-lo na /home?". Não entendo como isso poderia comprometer a segurança, e qual seria diferença entre colocar na pasta /sbin ou na /home/eu?

Muita diferença.
Primeiro que as permissões na /sbin e /bin devem ser restritas, sua execução só pode ser bem sucedida com o usuário root. Copiar/linkar binários desses diretórios para o $HOME e dar permissão de execução a um usuário comum é matar a permissão e função original do binário. Ora, se o [*****] do binário está na /s[system]bin[naries] , ele deve ser executado para tarefas administrativas - que não competem ao usuário 'comum'.

Muitos que vivem merecem a morte. E alguns que morrem merecem viver. 
Você pode dar-lhes a vida?
Então não seja tão ávido para julgar e condenar alguém a morte.
Pois mesmo os muitos sábios não conseguem ver os dois lados.



11. Re: Executar comandos root em shell script [RESOLVIDO]

perdugames
perdugames

(usa Debian)

Enviado em 15/10/2017 - 22:22h

mithrandir escreveu:

perdugames escreveu:
não entendi o que você quis dizer aqui " Porra, se o binário não era para ser executado como root, o que adianta colocá-lo na /home?". Não entendo como isso poderia comprometer a segurança, e qual seria diferença entre colocar na pasta /sbin ou na /home/eu?

Muita diferença.
Primeiro que as permissões na /sbin e /bin devem ser restritas, sua execução só pode ser bem sucedida com o usuário root. Copiar/linkar binários desses diretórios para o $HOME e dar permissão de execução a um usuário comum é matar a permissão e função original do binário. Ora, se o [*****] do binário está na /s[system]bin[naries] , ele deve ser executado para tarefas administrativas - que não competem ao usuário 'comum'.

Muitos que vivem merecem a morte. E alguns que morrem merecem viver. 
Você pode dar-lhes a vida?
Então não seja tão ávido para julgar e condenar alguém a morte.
Pois mesmo os muitos sábios não conseguem ver os dois lados.


sim, mas como os programas fazem então? eu preciso de uma solução, de alguma maneira fazem sem me pedir senha alguma.




12. Re: Executar comandos root em shell script [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 15/10/2017 - 22:25h

perdugames escreveu:

[quote]mithrandir escreveu:
então como é que os programas fazem? quando executo o wicd-curses, ele obviamente está executando um iwgetid e não me pede senha alguma. o que quero saber é como os programas fazem.

Não sei se você percebeu, mas o iwgetid NÃO faz escrita/leitura de arquivos administrativos. Só serve para mostrar informações sobre a rede wlan, vem no wpa_supplicant, salvo engano. A permissão padrão dele é 751 e normalmente está no /usr/sbin .


Muitos que vivem merecem a morte. E alguns que morrem merecem viver. 
Você pode dar-lhes a vida?
Então não seja tão ávido para julgar e condenar alguém a morte.
Pois mesmo os muitos sábios não conseguem ver os dois lados.




01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts