web-dev-qa-db-ja.com

インターネットから自宅のコンピューターにSSHで接続するにはどうすればよいですか

私は次のような設定をしています

  1. ISPが動的IPを提供するインターネットに接続するルーターがあります
  2. 2つのシステムがloclip192.168.1.2および192.168.1.3でルーターに接続されています
  3. ルーターのローカルIPは192.168.1.1です

私の質問は、ISPによって割り当てられたIPを知っているときに、インターネットからIP192.168.1.2を使用してコンピューターにアクセスするにはどうすればよいですか。

私のDlinkルーターにはNATのフィールドがあります。これは次のとおりです。 enter image description here

192.168.1.2システムとルーターでSSHを有効にしました。 NATテーブルにエントリを入力し、192.168.1.2システムに接続しようとすると、ルーターにのみ接続されます

サーバー名に関して指定した値:192.168.1.2、プロトコルtcp、およびその他すべてのポート値をsshポート22として指定しました。そのように指定すると、ルーターポートが2222に移動したというメッセージが表示されましたが、nmapを使用して確認したところそのポートは開いていません。

2
user61954

ほとんどの場合、ネットワークアドレス変換(NAT)はホームルーターによって内部的に実行されます。 D-linkルーターは変換を自動的に処理できるはずですが、sshサーバーが実行されているポート番号を開く/転送する必要があります。 netID 192.168.1.2:PortNumberのPCでssh-serverを実行している場合は、IP192.168.1.2の外部から入ってくるPortNumberを開きます。ポート転送を実行する方法については、Dlinkルーターの仕様を確認してください。動的IPアドレスの問題を修正することに関しては、 no-ipafraid などによって提供される無料のサービスを使用することをお勧めします...動的/変化するIPを解決できますそこに無料のDNS名を使用してアドレスを指定します。

2
WeloSefer

これを行う最も簡単な方法はngrokかもしれません: https://ngrok.com/

Ngrokは任意のファイアウォールをトンネリングし、パブリックにアクセス可能な(動的または静的)サブドメインをHTTP、または直接TCP接続)に設定します。呪文:

ngrok tcp 22

->アプリケーションが実行されるまで開いたままになる0.tcp.ngrok.io:19778を割り当てます。有料版ではTCPアドレスを予約することもできるので、ngrokをたとえばinit.dに入れて自動起動し、ISPが何を割り当てているかに関係なく、1つのアドレスだけを記憶することができます。 。

割り当てられると、ssh経由で接続できます。

ssh -p 19778 0.tcp.ngrok.io

1
Silver Dragon

あなたができることは、別のポートでリッスンするように192.168.1.2でSSHを設定することです。通常、これを行うには、sshd.confまたはsshd_config、たとえばポート1022を編集します。

そして、sshを実行するときは、そのようにしてください。

ssh -p 1022 DynamicIP

ここで、DynamicIPはISPによって割り当てられたIPです。

ポート1022を192.168.1.2に転送するようにルーターを設定する必要があります。

Windowsを使用している場合は、SSHクライアントとして PuTTY を使用することを検討してください。

1
chuacw