web-dev-qa-db-ja.com

別のリモートサーバーを使用せずにリモートサーバーにSSH / SFTPできない

サーバーにアクセスできます[〜#〜] a [〜#〜] SSHで、そこからサーバーにアクセスできます[〜#〜] b [〜#〜] =、しかし、私は直接アクセスできません[〜#〜] b [〜#〜].

サーバーでNautilusフォルダーを開くことは可能ですか?[〜#〜] b [〜#〜]PlacesConnect to Server

4

はい、可能です。動作する次のセットアップがありますが、もっと簡単なセットアップがあるかもしれません。

ファイル内~/.ssh/config、次の行を追加します。

ControlMaster auto
ControlPath   /home/yourusername/.ssh/tmp/%h_%p_%r
Host A
  HostName hostname.of.server.a

Host B
  ProxyCommand ssh -e none A netcat -w 5 hostname.of.server.b 22

Yourusername、hostname.of.sever.a、hostname.of.server.bを置き換える必要があります。その後、(Nautilusで)Places-> Connect to Server(実際にはFile-> Connect to Server on my machineに移動できます) )。そして、Bと入力します。サーバーBを見るにはこれですべてです。

5
xubuntix

試すべきことの1つは、これを.ssh/configに追加することです。

Host B
  ProxyCommand ssh A nc -q0 %h %p
  ForwardAgent yes

これが準備できたら、ssh B直接、SSHは最初にAを介して接続を「バウンス」することを認識します。

これが機能しているときは、説明どおりにNautilusを試して、プロキシ設定が機能するかどうかを確認してください。

3
roadmr

以前の回答の更新:netcatを使用して中間ホストで接続を転送すると、sshを直接実行する場合とは異なる方法で動作します。ジャンプホストトンネルを介したローカル接続のみを受け入れるように設定されているVNCサーバーに接続します。接続が直接接続とまったく同じように機能するには、クライアントの新しいバージョンに存在する-Wオプションを使用します。

Host jumphost
Hostname hostname.of.jumphost

Host target
Hostname hostname.of.target
Port 30022
ProxyCommand ssh -W %h:%p jumphost
0