2016-06-23 1 views
-1

Требование состоит в том, чтобы сделать ssh на удаленном компьютере и выполнить sudo su - "wasadmin/user" -c "whoami" , чтобы узнать, имеет ли пользователь1 доступ к sudo конкретному пользователю приложения на удаленной машине.sshpass удаленная команда и переключение учетной записи пользователя на удаленном компьютере

Я попробовал следующее. Но чего-то не хватает в моей команде. Пожалуйста, помогите мне в вышеуказанном сценарии.

sshpass -p 'Password' ssh -o StrictHostKeyChecking=no [email protected]$iP \ 
    'echo "your password"|sudo -S su wasadmin -c "hostname"' 
+1

Вы просто не можете «проложить» пароль в команду sudo. Это будет проблемой безопасности в широкой мили. – arkascha

+0

Что вы делаете в таком случае: используйте файл '/ etc/sudoers' для одиночных команд« белого списка »для использования без указания пароля. Будьте очень строги в выборе, хотя, опять же из-за проблем с безопасностью, очевидно. – arkascha

+0

У меня есть требование проверить доступ sudo к appuser на 1500 серверах. Так что, если я сделаю вручную, это займет много времени. –

ответ

0

Со всеми обычной оговорки, то есть - что хранение обычных текстового пароля является ужасным решением, вы можете сделать следующее: sshpass -p password sudo ...

Механизмом ssh использует, чтобы получить клавиатуры интерактивных паролей точно как и тот, который используется sudo, и sshpass одинаково эффективен.

 Смежные вопросы

  • Нет связанных вопросов^_^