Я настроил sudo для пользователя (myuser) следующим образом на "hostname" (содержимое sudoers):
myuser ALL=(suser) NOPASSWD: /path/script*
это работает нормально, поэтому я могу запустить следующее, вошедший локально как myuser на имя хоста, без необходимости пароля:
sudo -u suser /path/script
однако, когда я использую ssh (с установленными ключами, поэтому пароль не требуется) для входа и запуска, выполните следующие действия:
ssh hostname sudo -u suser /path/script
Я получаю запрос на ввод пароля, и после ввода пароля я получаю:
Sorry, user myuser is not allowed to execute '/path/script' as suser on hostname,
ОБНОВЛЕНИЕ Проблема решается удалением «*» в конце команды в sudoers. * Был добавлен, чтобы разрешить передачу параметров в скрипт, но на самом деле это не нужно. До сих пор не понимаю, почему * позволяет sudo работать локально, но не поверх ssh. Так что вопрос до сих пор стоит