ブリッジサーバー経由でサーバーにトンネルしようとしています。これまでのところ、次のコマンドを使用して、コマンドシェルから適切に機能させることができました。
ssh -A -t bridge_userid@bridgemachine.com ssh -A remote_userid@remoteserver.com
しかし、私はこれを自分の~/.ssh/config
ファイルにラップしようとしていますが、問題があります。私はもう試した:
Host axp
User remote_userid
HostName remoteserver.com
IdentityFile ~/.ssh/id_rsa.eric
ProxyCommand ssh -A -t bridge_userid@bridge_userid.com ssh -A remote_userid@%h
しかし、そうすると、次のエラーメッセージが表示されremoteserver.com
、何が原因なのかわかりません。
ksh:SSH-2.0-OpenSSH_6.8 ^ M:見つかりません
私がログインするときremoteserver.com
、私のシェルがあることを知っています/usr/bin/ksh
。
configファイルのsshコマンドにパス引数を追加しようとしましたが、違いはありませんでした。
どんなアイデアがありますか?
ssh -A remote_userid@remoteserver.com
ブリッジマシンで実行するコマンドとして提供しているコマンドラインの使用法では、configはデフォルトのコマンドを提供する方法を提供しません。works
sshはそれ自体で何をしようとしますが、sshがProxyCommand
トンネルとして使用しようとし、ssh プロトコルがSSHプロトコルをリッスンするのではなく、反対側で待機しているシェルでSSHプロトコルを起動します。
ProxyCommand
は、使用方法を意図したものではありません。通常、sshが出力をパイピングし、netcatがリモートサーバー SSHポートへのトンネルとして機能するnetcatで使用されます。このssh -W %h:%p bridge_userid@bridgemachine.com
機能を使用する場合は、ProxyCommandが必要です。