パブリック LAN 経由の SSH?

パブリック LAN 経由の SSH?

私はスターバックスで 2 台のラップトップ (OS X と Windows 10) を使用しており、USB フラッシュ ドライブを使用せずに 1 台からもう 1 台にファイルを転送したいと考えています。ファイルは大きいため、インターネット経由で送信するのではなく、ローカル ネットワークを使用したいと考えています。LAN 経由で SSH を設定するにはどうすればよいでしょうか。スターバックスなどのパブリック ネットワークでこれは可能ですか。それとも、ルーター レベルなどでポート転送を制御する必要がありますか。

Cygwin でターゲット ホストに ssh サーバーを設定し、 経由でそこに正常に接続できますssh -v localhost。 を使用してもそこに接続できます(Cygwin で ipconfig を使用して見つけたローカル IP を使用し、「IPv4 アドレス」という行を読み取って)。ただし、MacBook クライアントからこの同じ SSH コマンドを実行して Windows ホストに接続しようとすると、タイムアウトで失敗します。ssh -v [email protected]

答え1

SSH のようなテクノロジーを使用してファイルを転送する簡単な方法は、おそらく OpenSSH に付属する scp コマンドを使用することです。

scp [email protected]:/file .

GUI を試してみたい場合は、Windows では WinSCP.net が適しています。127.0.0.1 に接続して、どのようなファイル名が表示されるか確認できます。

1 つのシステムが TCP ポート 22 でトラフィックを受け入れていない可能性があります。これは SSH サーバーが不足しているためか、ファイアウォールのようなテクノロジがトラフィックをブロックしているためである可能性があります。TCP ポート 22 でリッスンしているかどうか (およびどのアドレスか) を確認するには、「netstat -na」(Mac OS X は Unix 系のシステムであると思われますが、Microsoft Windows でも動作するはずです) をお勧めします。それ以外の場合は、sshd を実行して SSH サーバーを起動できますか?

システム同士が通信できるかどうかは、設定​​方法によって異なります。理論上は、スターバックスは Wi-Fi 上のデバイス間のトラフィックを制限し、スターバックスのネットワーク上でそのような通信が行われないようにすることができます。実際には、多くの組織はそのような保護を気にしていません。スターバックスが最近何をしているのかはわかりませんが、そのような詳細は時間の経過とともに変更される可能性があります。

もう 1 つの可能性は、「アドホック」Wi-Fi ネットワークを使用することです。両方のコンピューターでこれを実行できる場合は、スターバックスの Wi-Fi 機器をまったく使用する必要がない可能性があります (つまり、スターバックスの Wi-Fi が問題を引き起こすことはありません)。

他の回答で提案されているように、Windows ファイアウォールをオフにすると、Mac が Windows ファイアウォールと通信しやすくなる可能性があります。実際には、うまくいく可能性はありますが、この方法は推奨されません。この方法は簡単かもしれませんが、セキュリティ リスクに不必要にさらされる原因にもなります。Windows ファイアウォール ソフトウェアで 1 つのルール/例外を作成して、外部トラフィックから TCP ポート 22 にアクセスできるようにするなど、より優れた方法があります。このような接続は、いくつかの問題のトラブルシューティングが容易な環境 (自宅、同様のマシン、有線ネットワークなど) からテストすることをお勧めします。

これでご質問への回答が得られたと思います。提供されたデータの一部は少し曖昧です (「ssh」を正常に実行できたシステムはどれですか? その IP アドレスを持っていたシステムはどれですか?)

答え2

まず、Windows 10 のファイアウォールをオフにすることをお勧めします。次に、2 台目のマシン (OS X) から Windows 10 マシンに ping を実行して、到達可能かどうかを確認します。

pingが正常に機能する場合は、OS Xマシンで次のコマンドを発行します: telnet 172.31.98.84 22

接続済みと表示された場合、Windows 10 マシンは SSH ポートをリッスンしています。次に、Windows 10 マシンで SSH を試してください。動作する場合は、Windows 10 ファイアウォールを再度オンにした後、着信接続用にポート 22 を許可する必要があります。

答え3

パブリックLAN上にセットアップすることも可能ですSSHが、パブリックサーバーの問題に注意を払わない場合、最も安全な方法ではないとSSH思います。参考までに、留意すべき点をいくつか挙げておきます。このリンクで

SSHあなたの説明から判断すると、 Windows マシンにはすでに設定されていると思われます。

Macintosh では、SSHが実行されていることを確認する必要があります。次の方法で確認できます。

ps aux | grep sshd

ターミナルで実行します。SSHデーモンがすでに実行されている場合は、プロセス番号、開始時刻などの情報が表示されます。

上記のコマンドで何も表示されない場合は、SSHが有効になっていないか、実行されていない可能性があります。Macintosh で有効にするには、次の手順を実行しますSSH

システム環境設定 -> 共有 -> リモートログイン

チェックする必要があります。Macintosh の IP を確認するには、接続しているインターフェイスからアドレス (en0/en1/..)ifconfigを見つけます。inet

上記の方法が失敗した場合は、両方のマシンに静的 IP を追加してから試す必要がある可能性がありますSSH

このリンクを確認してください。これは Ubuntu に関するものですが、あなたのシナリオにも同じことが当てはまるはずです。

https://askubuntu.com/questions/305229/whats-the-best-way-to-ssh-to-machines-on-the-local-network

検討すべきもう 1 つのオプションはSCP、 経由でファイルを安全に転送するために使用される (Secure Copy)ですSSH

関連情報