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.