SSHポート転送はソースポートがAnyの場合のみ機能します。

SSHポート転送はソースポートがAnyの場合のみ機能します。

別のネットワークから Raspberry Pi に接続できるように、SSH のポート転送を設定しようとしています。

私のルーター (DRG-A125G) には次のページがあります: ここに画像の説明を入力してください ここに画像の説明を入力してください

これは、送信元ポートを「任意」(どういう意味ですか?)に指定し、宛先ポートを 22 に指定した場合にのみ機能します。両方を 22 に設定したり、一方を 12386 に、もう一方を 22 に設定したりすると、接続できません。

答え1

送信元ポートは、SSH クライアントがポート 22 にあるラズベリー上の SSH サーバーに接続するためにバインドするポートです。

応答パケット (SSH サーバーから SSH クライアントへ) にはネットワーク上の宛先 (SSH クライアントの IP アドレスと SSH クライアント プロセスがリッスンしているポート) が必要であるため、クライアント ポートが必要になります。

クライアントは通常、すべての接続でランダムフリーの非特権ポート (> 1024) を選択するため、特定の送信元ポートを選択した場合、ポート転送は機能しません (SSH クライアントがこの特定のポートを選択できるほど非常に幸運な場合を除きます)。

したがって、SSH サーバーにアクセスするには、ソースとして「任意のポート」オプションを選択する必要があります。

「任意のポート」を選択すること自体はセキュリティ上の脅威ではないことに注意してください。代わりに、不正アクセスから身を守るために、次のようなセキュリティ修正を検討する必要があります。

  • 適切なパスワードを選択するか、SSHキーによるログインのみを許可するのがベストです。
  • 送信元 IP アドレスを特定の信頼できる範囲に制限する (可能な場合)
  • 次のようにしてログイン失敗の最大回数を制限する失敗2バン
  • SSHを直接公開するのではなく、次のようなVPNサービスを介して公開します。オープンVPN

関連情報