【发布时间】:2017-02-20 09:11:46
【问题描述】:
我正在尝试从服务器远程更改客户端上的配置文件。这是一个实验测试平台。我已经设置好服务器的rsa_pub 密钥在客户端的授权密钥文件中。
当我运行脚本(这需要以 root 身份运行)时,当我尝试更改文件时,系统会提示我输入客户端计算机的密码。如果我以用户身份运行它,那么我不是。我还尝试使用 sudo -u 开关,但似乎效果不佳。
以用户身份运行(可行):
echo 'prio 0' | ssh user@192.168.10.10 "cat > /home/user/priofile.txt"
仍然以用户身份运行,但使用-u 开关(这有效):
$ sudo -u user echo 'prio 0' | ssh user@192.168.10.10 "cat > /home/user/priofile.txt"
以root身份运行:
# sudo -u user echo 'prio 0' | ssh user@192.168.10.10 "cat > /home/user/priofile.txt"
user@192.168.10.10's password:
为什么我尝试以用户身份运行它却提示我输入密码?
【问题讨论】:
-
客户端文件中的授权密钥是否可能匹配
user用户而不是root用户? -
是的!正是问题所在。谢谢!
-
@jamie 你误解了 stackoverflow 的概念。您的问题与编程无关。这也是以前在很多很多地方讨论过很多次的事情。请删除此问题并阅读:stackoverflow.com/help/how-to-ask,然后再在 stackoverflow 上发布您的下一个问题。