Putty を使用してファイアウォールを介した SSH

Putty を使用してファイアウォールを介した SSH

私はラズベリーパイにSSH接続しようとしています(注:接続が機能することはわかっています。ファイアウォールのないネットワークでテストしました)。

私は学校のファイアウォールの内側にいますが、ポート 22 は開いています。

私の pi はポート 2000 を使用します (隠蔽目的のため)。

これをどうやって実行すればいいでしょうか? VPN (openvpn?) を作成する方が簡単な解決策でしょうか?

トンネルに putty を設定するのが最善の決定でしょうか? また、これを行うにはどうすればよいですか?

私も初心者なので、何か間違ったことをしていたら教えてください

答え1

ご質問の意味をよく理解しているのであれば、学校のファイアウォールで閉じられており、ポート ssh (TCP 22) のみが許可されているポート 2000 を介して、学校から Raspberry Pi に ssh しようとしているということです。2 つのオプションがあります。

  1. Raspberry Pi のリスニング ポートを 22 に変更します。
  2. 通常の SSH サービス (ポート TCP 22) を使用して、ホーム ネットワーク (ポート 2000 で Raspberry Pi にアクセスできる) にラップトップ/デスクトップ/VM をセットアップし、次の手順を実行します。
    • このマシンにSSHで接続し、次にRaspberry PiにSSHで接続して「プロキシ」として使用します。
    • 次のコマンドを使用して、新しく作成されたマシンを介して直接 SSH 接続します。

ssh -L 9999:Raspberry_Pi_LOCAL_IP:2000 VM_PUBLIC_IP_ADDRESS

たとえば、VM_PUBLIC_IP_ADDRESS が 151.101.129.69 (例として superuser.com の IP アドレスを使用) で、Raspberry_Pi_LOCAL_IP が 192.168.1.10 の場合、コマンドは次のようになります。

SSH -L 9999:192.168.1.10:2000 151.101.129.69

  • その後、ポート9999でローカルホストにsshするだけです。

    ssh ユーザー@localhost -p 9999

または、Puttyを直接使用することもできますが、ポートを9999に、ホスト名/IPをlocalhostまたは127.0.0.1に変更してください。

答え2

自宅のインターネット ルーターで、ポート 22 (パブリック IP アドレス) からポート 2000 (Raspberry Pi IP アドレス) にポート転送を行うことができます。

この方法では、学校から SSH 接続する場合 (ポート 22 を使用)、サービス プロバイダーによって割り当てられたルーターのパブリック IP アドレスを使用します。ルーターは、ポート 22 で受信したパケットをポート 2000 の Raspberry Pi IP アドレスに転送します。

関連情報