web-dev-qa-db-ja.com

SSH:ネットワークに到達できません(ルーターが原因)

Googleで3日間ソリューションを検索しましたが、ここに書くことにしました。私はルーターを持っているので、家の中は[〜#〜] wlan [〜#〜]です。家にいるときはラップトップを使います。私のオフィスの別の都市には、2台目のコンピューター(PC)があります。 SSHプロトコルを使用してこのPCに接続できます。残念ながら、PCからラップトップに接続できません。これを実行しようとすると、次のステートメントが表示されます。

ssh: connect to Host XX.XX.XX.XX port 22: Network is unreachable

デーモンSSHDが私のラップトップで実行されています。興味深いことに、この接続は数か月前は正しく機能していましたが、私はSSHDを再インストールしましたが、これが問題です。

/ sbin/route表示:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.9.1     0.0.0.0         UG    0      0        0 wlan0
192.168.9.0     *               255.255.255.0   U     2      0        0 wlan0

/ sbin/ifconfig印刷:

eth0      Link encap:Ethernet  HWaddr XX:XX:XX:XX:XX:XX
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Interrupt:47 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:169 errors:0 dropped:0 overruns:0 frame:0
          TX packets:169 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:13189 (12.8 Kb)  TX bytes:13189 (12.8 Kb)

wlan0     Link encap:Ethernet  HWaddr XX:XX:XX:XX:XX:XX
          inet addr:192.168.9.107  Bcast:192.168.9.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:76455 errors:0 dropped:0 overruns:0 frame:0
          TX packets:82766 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:53583517 (51.1 Mb)  TX bytes:13182981 (12.5 Mb)

問題はゲートウェイの設定に関係していると思いますが、私はこの分野(コンピュータネットワーク)の素人です。この提案は、Googleの調査によるものです。

6
Benek

追加情報を提供していないため、ここで何が起こっていると思いますか 私のコメント について詳しく説明します。

これを前置きするために、あなたがこの間違いを犯したと仮定して私を許してください、私はあなたが言っていることを続けています:

私はこのテーマ(コンピューターネットワーク)の素人です。」

私はあなたがあなたの自宅のコンピュータの プライベートIPアドレス を仕事からそれにSSHしようとするときに使用しようとしていると信じています。これにより、自宅や職場のネットワーク構成に応じて、次の2つの動作のいずれかが発生します。

  1. ホームネットワークとオフィスネットワークは同じプライベートIPアドレススペースを使用します。この場合、自宅のコンピューターと同じプライベートIPを持っているオフィスのマシンに接続しようとすることになります。1 または(可能性が高い)、オフィスのネットワーク上にそのようなマシンが見つからず、「ホストに到達できません」または「ホストへのルートがありません」というメッセージが表示されます。
  2. ホームネットワークとオフィスネットワークが異なるプライベートIPアドレススペース(はるかにの可能性が高いシナリオ)を使用している場合、その場合、別のプライベートネットワークのマシンに到達しようとしています。 「ネットワークにアクセスできません」エラーが表示されます

それではなぜ以前に機能したのですか?

私の推測では、これはあなたがラップトップを動作させるときに起こったもので、その場合、両方のデバイスが同じプライベートネットワーク上にありました。 「正常に機能している」と報告すると、問題はネットワーク構成ではなくSSHデーモンに関係していると考えていました。

では、どうすればこれを回避できますか?

いくつかの解決策があります。ここに私が考えることができるいくつかがあります:

  1. レッドクリケットのコメント のとおり、朝に家を出る前に、ラップトップが会社のVPNに接続されていることを確認してください。これにより、両方のデバイスが同じプライベートネットワーク上にあるように見えます
  2. ISPから提供される 静的IPアドレス をシェルアウトします。これはコストがかかりすぎ、リスクが高すぎる可能性があります2 ただし、得られるメリットについては。決めるのはあなた次第です。
  3. 動的DNS サービスを見てください。これらのほとんどにもコストがかかります。しかし、無料でサービスを提供してくれるサイトがいくつかあるようです。この場合も、セキュリティとプライバシーに注意する必要があります。
  4. ラップトップで Dropboxを使用して簡単なコマンド/スクリプトを実行する ができます。 免責事項:私はこの方法を試したことがなく、その成功/セキュリティを必ずしも保証していません。

上記のソリューション2と3の両方で、ラップトップがリッスンするSSHポート(デフォルトではポート22)をゲートウェイルーター(接続先)からラップトップに転送するためのメカニズムが必要になることに注意してください。多くの場合、これはルーター自体から実行できます。ルーターのインターフェースでNAT(ネットワークアドレス変換)オプション)を確認してください。ルーターによっては、「ゲーム」カテゴリに分類されている場合があります。


1もちろん、そのオフィスマシンではSSHデーモンが実行されている場合とされていない場合があります。そのため、ログインしようとしているユーザーの資格情報を提供するように求められます(ラップトップの資格情報と同じである確率はわずかです)、またはそこから「接続拒否」エラーが発生します。そのデバイスの(標準のSSHポートで)実行されているSSHリスナーはありません。

2静的IPを備えたデバイスは、攻撃者にとって定常的なターゲットになるため、その場合はファイアウォールと厳格なアクセス制御について検討する必要があります。

3
Joseph R.