私はラズベリーパイにSSH接続しようとしています(注:接続が機能することはわかっています。ファイアウォールのないネットワークでテストしました)。
私は学校のファイアウォールの内側にいますが、ポート 22 は開いています。
私の pi はポート 2000 を使用します (隠蔽目的のため)。
これをどうやって実行すればいいでしょうか? VPN (openvpn?) を作成する方が簡単な解決策でしょうか?
トンネルに putty を設定するのが最善の決定でしょうか? また、これを行うにはどうすればよいですか?
私も初心者なので、何か間違ったことをしていたら教えてください
答え1
ご質問の意味をよく理解しているのであれば、学校のファイアウォールで閉じられており、ポート ssh (TCP 22) のみが許可されているポート 2000 を介して、学校から Raspberry Pi に ssh しようとしているということです。2 つのオプションがあります。
- Raspberry Pi のリスニング ポートを 22 に変更します。
- 通常の 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 アドレスに転送します。