Vejo que você está usando sudo para se tornar root e, em seguida, su para se tornar s_user . Para fazer isso, você usará sua senha (por sudo ). Você não precisa da senha para s_user .
Você pode fazer isso adicionando sua chave ssh à conta s_user , mas acho que essa solução, neste caso, está abaixo do ideal.
Primeiramente, mostrarei que você não precisa de su , e é melhor não usá-lo. Então, em vez de sudo su - s_user -c command , faça sudo -u s_user command . Você ainda será solicitado para a sua senha. No entanto, agora você pode configurar /etc/sudoers
Adicione um arquivo /etc/sudoers.d/s_commands , contendo algo como (mas marcado, com /usr/bin/visudo ):
Cmnd_Alias S_COMMAND=/usr/bin/command, /usr/bin/anotherCommand
%s_group ALL = (s_user) NOPASSWD : S_COMMAND
Isto irá permitir a senha menos uso desses comandos, como s_user, mas apenas para usuários no grupo s_group (você terá que adicionar o grupo).
Em seguida, configure um alias de shell, algo como: alias s_command="sudo -u s_user command" .
Notas:
-
su usa a senha do usuário para o qual você está alternando.
-
sudo , por padrão, pega a senha do usuário que você é (você está mudando).
-
sudo não lê a senha do stdin, lê de tty.