Obtendo o prompt de senha após editar o arquivo sudoers no sistema operacional OS 7?

1

Parte das minhas linhas de arquivos sudoers com mkesh são editadas:

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
mukesh  ALL=(ALL)       SOFTWARE,DRIVERS
mukesh  ALL=(root)      NOPASSWD: /home/mukesh/Desktop/connect.sh

permissões de connect.sh

pwd

/home/mukesh/Desktop

ls -lrt connect.sh

-rwsr-xr-x. 1 root root 47 Apr  4 20:07 connect.sh

cat connect.sh

#!/bin/bash
sudo pppoe-start

Eu só quero executar o connect.sh como root sem nenhum prompt

EDITAR:

[mukesh@centos Desktop]$ ./connect.sh
pppoe-start: You must be root to run this script
[mukesh@centos Desktop]$ sudo ./connect.sh
[sudo] password for mukesh: 
[mukesh@centos Desktop]$ su -
Password: 
Last login: Mon Apr  4 10:27:09 IST 2016 on pts/0
[root@centos ~]# pwd
/root
[root@centos ~]# cd /home/mukesh
[root@centos mukesh]# cd Desktop
[root@centos Desktop]# ./connect.sh
. Connected!
[root@centos Desktop]# 



[mukesh@centos Desktop]$ cat connect.sh
#!/bin/bash
pppoe-start
[mukesh@centos Desktop]$ sudo /home/mukesh/Desktop/connect.sh
[sudo] password for mukesh: 
. Connected!

Aqui está o meu arquivo completo de sudoers

Tentei remover as permissões usando o sudo chmod o-x connect.sh

-rwxr-xr--.  1 root    root          97 Apr  5 09:30 connect.sh
[mukesh@centos Desktop]$ 
[mukesh@centos Desktop]$ sudo /home/mukesh/Desktop/connect.sh
[sudo] password for mukesh: 
. Connected!

EDIT2:

[mukesh@centos Desktop]$ sestatus
SELinux status:                 disabled
    
por munish 05.04.2016 / 05:40

1 resposta

2

Você definiu NOPASSWD para o script /home/mukesh/Desktop/connect.sh , e não para qualquer item dentro dele que exija sudo password.

Você precisa executar o script usando sudo :

sudo /home/mukesh/Desktop/connect.sh

e, em seguida, remova sudo do script:

#!/bin/bash
pppoe-start

É apenas um único comando e você pode adicionar esse comando a sudoers (não é necessário um script separado):

mukesh  ALL=(root)      NOPASSWD: /path/to/pppoe-start

Observe também que a configuração do bit SETUID no script (executáveis interpretados) não funcionará.

Você também tem outro problema que é ter o bit executável definido para os outros, ou seja, qualquer usuário pode executar o arquivo, portanto você está sendo solicitado a sudo password, pois as permissões gerais serão precedidas por especiais como sudo . / p>

Para que você possa remover as permissões de execução para outras pessoas:

sudo chmod o-x /home/mukesh/Desktop/connect.sh

e agora sudo não deve perguntar a senha.

    
por 05.04.2016 / 05:44