2017-02-06 9 views
0

マルチホップSSHトンネルを使ってSublime Text 3でファイルを編集することが可能かどうか疑問に思っていました。私の特定のケースでは、私は私のMacを持っている(のはAそれを呼びましょう)と2台のLinuxマシン:BとCのファイルはCに位置しており、私はこのような私のマシンでそれらにアクセスされていますマルチホップSSHを使ってファイルを編集する3

A -> B -> C

私は助けるが、彼らは唯一のこれらの記事によると、私はBのインストールでファイルを編集することができB.

How to open remote files in sublime text 3

Editing files remotely via SSH on SublimeText 3

で編集するファイルについて話すことができますこれらの記事を見つけましたrsubは、リモートマシンとA.で崇高でプラグインに私はCで(はい、私はそれはとても有用ではないですけど、誰が知っている)ことを実行しようとしましたが、私はエラーを得た:

[email protected]:~$ rsub 
/usr/local/bin/rsub: connect: Connection refused 
/usr/local/bin/rsub: line 327: /dev/tcp/localhost/52698: Connection refused 
Unable to connect to TextMate on localhost:52698 

Iだろうこれを達成する方法があるかどうかを知って喜んでください。前もって感謝します。

答えて

0

私は自分自身に答えます。解決策はAからCへのBの間のSSHトンネリングを、のssh設定ファイルのProxyCommandを使用して実行することです。

私はこれらの行を追加しました:

Host myMachineC 
    HostName NAME_OF_MACHINE_C 
    ProxyCommand ssh [email protected]_OF_MACHINE_B nc %h %p 
    User USER_IN_C 
    RemoteForward 52698 localhost:52698 # this is required by rsub 

HostHostNameディレクティブの後に書かれている実際のホスト名のエイリアスを定義します。 ProxyCommandは、myMachineCにログインしようとすると実行されるコマンドです。

$ ssh myMachineC 

あなたがすでにパスワードなしログインを許可することをお勧めです:nc

...by default creates a TCP socket either in listening mode (server socket) or a socket that is used in order to connect to a server (client mode) [ 1 ]

は今のマシンCのみ入力してAからアクセス可能です...コマンドです。これを実現するには、家のコンピュータから公開鍵を各ホストの〜/ .ssh/authorized_keysにインストールする必要があります。 【2]

結論

:すべてのこの手順により、そこ中間機械Bに通常のSSH接続され、その後ncCへの接続を拡張するために使用されるであろう。このトンネリングを使用すると、クライアントはsshを使用して直接接続されているかのように動作することができます。これはrsubと一緒に使うと便利です。

次に、rsubを通常どおりインストールして使用すると、魅力的に機能します。

OSX Yosemiteではこれを試しましたが、ほぼすべての* nixシステムで実行する必要があります。それがあなたに役立つことを願っています。

Netcat Explanation and Examples

Transparent Multihop in SSH

関連する問題