私のMacOSノートブックには固定パブリックIPがありません。私はWi-Fi接続を使用してMacOSノートブックからインターネットに接続します。
私のラップトップに接続し、いくつかのタスクを実行するために使用する必要がある固定IPが異なる国にあるサーバーがありますssh
。
コマンドラインからMacOSノートブックIPを取得し、サーバーチームに提供してノートブックに接続するにはどうすればよいですか?
Googleの「私のIPとは何ですか?」検索を使用して「103.248.203.94」のMacOSパブリックIPを提供し、次のように試しました。
host myip.opendns.com resolver1.opendns.com
Using domain server:
Name: resolver1.opendns.com
Address: 208.67.222.222#53
Aliases:
myip.opendns.com has address 103.248.203.94
また、次のようにMacOSのlocalhost 22に接続して、サービスが実行されていることを確認することもできます。
$telnet localhost 22
Trying ::1...
Connected to localhost.
Escape character is '^]'.
SSH-2.0-OpenSSH_7.9
しかし、sshが正しく設定されているにもかかわらず、サーバーチームは私の正規IPにアクセスできません。
何か提案してもらえますか?
答え1
逆トンネルが必要です。次の例では、MacOSノートブックのローカルポート22をリモートサーバーのポート2222に転送します。リモートサーバーにXXXXの固定IPアドレスがあると仮定すると、ラップトップで次のコマンドを使用してリバーストンネルを作成できます。
ssh -fnN -R 2222:localhost:22 [email protected]
もう一方の端(サーバー側)では、ユーザーは通常LinuxサーバーでSSHを実行し、次のコマンドを使用してラップトップの新しいSSHセッションを開始します(Linuxサーバー内)。
ssh -p 2222 laptop-user@localhost
答え2
IPアドレスが不足しているため、インターネットルーターにNATがある可能性があります(最後のIPアドレスセットは数年前に公開されました)。
私のIPとは何ですか?から取得したアドレスがルーターのIPアドレスになります。
何をすべきか。
ポート転送を設定する必要があります。これにより、誰かがルーターの22番目の部分に接続しようとすると、要求がデバイスに転送されます。
次の手順を実行します(ルーターによって異なり、一部は他のものよりも簡単です)。
- ルーターの設定を入力します。
- DHCP設定を見つけます(おそらくこの設定ではありません)。
- デバイスに固定 IP アドレスを提供します。
- ポート転送ビットを探します。
- ポート転送ルールを設定します。