自宅のコンピューターAと仕事用のコンピューターCがあり、ユニゾンを使用して同期したいと考えています。真ん中には仕事用のコンピューターBがあります。AはBと通信でき、BはCと直接通信できますが、AとCは直接接続できません。実際、通信図はA-> B <-> Cのように見えます。つまり、AはBに接続できますが、BはAに接続できません。
この設定の使用方法の例を示すために、AからCにSSHで接続する場合は、現在次の手順を実行しています。
ssh -t -X -C me_B @ B ssh -X me_C @ C
おそらくsshポートフォワーディングを使用して、Aからユニゾンを実行してCと同期するにはどうすればよいですか?
少し明確にするために、Cはインターネットへのフィルタリングされていない発信接続を持っています。Bは、Cとインターネットの両方へのフィルタリングされていないインおよびアウトバウンド接続を持っています。Aは私の自宅のコンピューターです。
更新
次のコマンドラインは、少なくともファイルをAからCにコピーするために機能します
scp -oProxyCommand="ssh me_B@B nc -v %h %p" foo/* me_C@C:foo
このアイデアを使用してユニゾンを機能させる方法はありますか?
はい、sshポートフォワーディングを使用できます。Cのポート22のsshをローカルポート3000に転送する場合は、Aで次のコマンドを使用します(たとえば)。
# Create the tunnel
ssh -L 3000:C:22 userB@B -N
コマンドを発行した後、次を使用してAからCにログインできます。
# Connect using the tunnel
ssh -p 3000 userC@localhost
注:以下の説明の中で、OPのネットワークでは、トンネルを介した接続は次のコマンドを使用してのみ確立できることが判明しました。
ssh -p 3000 -l userC localhost
の-l userC
代わりにを使用していることに注意してくださいuserC@
。
これで、次のunison
ように使用できます。
unison directory ssh://userC@localhost:3000 directory
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加