sshpass 不适用于 SSH ProxyCommand 选项
sshpass doesn't work with SSH ProxyCommand option
我正在尝试使用代理为 SSH 隧道自动进行 SSH 登录:
- 我不想使用
ssh-copy-id
解决方案
sshpass
当我设置 ssh 隧道 没有 ProxyCommand
选项时正常工作,但它不起作用 with 选项集(写入失败。管道损坏)。 ssh 隧道本身在 和 该选项下运行良好,要求我输入密码。还尝试在 ~/.ssh/ssh_config
中设置选项但没有解决方案。这是单行本:
sshpass -p $mypass ssh -fN -o StrictHostKeyChecking=no \
-o ProxyCommand="nc -x localhost:8888 %h %p" -R \
*:$rport:$localhostname:$nport $username@$hostname
我尝试了 Expect
描述的脚本 here 但没有成功。我是新手,无法找出正确的引号转义,因为我找不到复杂的 spawn
示例。这是我尝试过但没有成功的方法(以及其他一些引号变体):
spawn ssh -fN -o StrictHostKeyChecking=no \
"-o ProxyCommand=\"nc -x localhost:8888 %h %p\"" \
-R *:$rport:$localhostname:$nport $username@$hostname
有人可以帮助我吗?谢谢。
要使用期望:
spawn ssh -fN -o StrictHostKeyChecking=no \
-o "ProxyCommand=nc -x localhost:8888 %h %p" \
-R *:$rport:$localhostname:$nport \
$username@$hostname
我正在尝试使用代理为 SSH 隧道自动进行 SSH 登录:
- 我不想使用
ssh-copy-id
解决方案 sshpass
当我设置 ssh 隧道 没有ProxyCommand
选项时正常工作,但它不起作用 with 选项集(写入失败。管道损坏)。 ssh 隧道本身在 和 该选项下运行良好,要求我输入密码。还尝试在~/.ssh/ssh_config
中设置选项但没有解决方案。这是单行本:sshpass -p $mypass ssh -fN -o StrictHostKeyChecking=no \ -o ProxyCommand="nc -x localhost:8888 %h %p" -R \ *:$rport:$localhostname:$nport $username@$hostname
我尝试了
Expect
描述的脚本 here 但没有成功。我是新手,无法找出正确的引号转义,因为我找不到复杂的spawn
示例。这是我尝试过但没有成功的方法(以及其他一些引号变体):spawn ssh -fN -o StrictHostKeyChecking=no \ "-o ProxyCommand=\"nc -x localhost:8888 %h %p\"" \ -R *:$rport:$localhostname:$nport $username@$hostname
有人可以帮助我吗?谢谢。
要使用期望:
spawn ssh -fN -o StrictHostKeyChecking=no \
-o "ProxyCommand=nc -x localhost:8888 %h %p" \
-R *:$rport:$localhostname:$nport \
$username@$hostname