web-dev-qa-db-ja.com

Windows 10からSSH経由で接続できない

ローカルネットワーク上の別のデバイスに接続しようとしています:192.168.0.55とPuTTY。 1台のコンピューターで問題なく実行できますが、別のコンピューターでは機能しません。機能しないのはWindows 10を実行していて、ビルトインファイアウォールとWindows Defenderがインストールされているだけです。これは私が受け取るエラーメッセージです

error message

Windowsファイアウォールにポート22での着信接続と発信接続を許可するルールを追加しようとしましたが、違いはありませんでした。以前は問題なく動作していました。

2
northerner

まず、アウトバウンドSSHトラフィックはポート22を使用せず、ポート22にリダイレクトされます。デフォルトでは、ダイナミック範囲からポートを選択します。また、ファイアウォールで明示的にブロックされていない限り、発信SSH接続のルールは必要ありません。ネットワーク接続は、ステートフルな接続追跡を介して確立されます(ほとんどすべての最新のファイアウォールでサポートされています。詳しくは こちら をご覧ください)。
送信接続ポートについてまったく心配する必要はありません。

あなたがその行動を経験するかもしれない理由:

  1. PuTTYは、ファイアウォールで許可されているアプリケーションのリストに含まれていません-接続の確立は許可されていません。
  2. 追加した方法によっては、ルールが機能しない場合もあります。 Windows(最も一般的にはWindows 7)の一部のバージョンにバグが見られ、許可されたパスに変数(%username%など)が含まれているとファイアウォールルールが機能しません。ファイアウォールでPuTTYが許可されているにもかかわらず接続できない場合は、変数を含むパスがないことを確認し、PuTTYは、それらのない絶対パス上にあります。このバグの例は here にあります。
  3. PuTTYがソケットを作成するには、管理者権限が必要になる場合があります TCP/IP Raw Sockets

    Rawソケットは、基盤となるトランスポートを操作する機能を提供するため、セキュリティの脅威となる悪意のある目的に使用される可能性があります。したがって、Windows 2000以降では、管理者グループのメンバーだけがタイプSOCK_RAWのソケットを作成できます。

アプリケーションがファイアウォールを通過できるようにするためのクイックガイド:
Windows 10:Windowsファイアウォールでアプリを許可/ブロック

1
Fanatique

私は、発信SSH接続がポート22にないことをかなり確信しています-それ以外の場合、SSHサーバーを実行しているコンピューターで発信SSH接続をどのように行うことができますか?

ポートを開くのではなく、許可されたアプリケーションのリストにPuTTY.exeを追加してみてください。また、リモートデバイスがファイアウォールとの接続をブロックしていないかどうか、またはそのデバイスのSSHサーバーがまだ実行されているかどうかを確認してください。

0
Konrad Botor