【发布时间】:2016-06-23 07:53:56
【问题描述】:
要求是对远程机器做ssh并执行sudo su - "wasadmin/user" -c "whoami"
了解 user1 是否对远程计算机上的特定应用程序用户具有 sudo 访问权限。
我尝试了以下方法。但是,我的命令中缺少一些东西。请帮我解决上述情况。
sshpass -p 'Password' ssh -o StrictHostKeyChecking=no UserName1@$iP \
'echo "your password"|sudo -S su wasadmin -c "hostname"'
【问题讨论】:
-
您根本无法将密码“管道”到 sudo 命令中。那将是一英里范围内的安全问题。
-
在这种情况下您可以做什么:使用
/etc/sudoers文件将单个命令“列入白名单”以供使用,而无需指定密码。不过在选择时要非常严格,显然也是出于安全问题。 -
我需要在 1500 台服务器上验证对 appuser 的 sudo 访问权限。所以,如果我手动进行,将花费大量时间。
-
我无法为单一用户权限加入白名单,并且想象一下在 1500 台服务器中的白名单一次性使用也是一个手动过程。
-
您可能想查看类似
expect的内容。虽然对我来说整个任务听起来非常很奇怪,实际上。为什么要向应用用户提供“sudo访问”?然后你也可以在你的网页上公布根密码。