外部ネットワークから自宅の Linux ボックスに SSH 接続する

外部ネットワークから自宅の Linux ボックスに SSH 接続する

私は自宅のネットワーク上のカスタム ビルド ボックスでシンプルな Ubuntu インストールを実行しています。自宅の Wi-Fi からローカルの 192.xxx アドレスからボックスに SSH 接続できます。

私は、職場などの他のネットワークからボックスに SSH 接続できるように接続しようとしており、これを行う方法についてはインターネット上のすべての記事を読んだと思います。

  1. サーバーは OpenSSH を実行しており、ネットワーク内から接続できます。チェック。
  2. ルーター (Eero) でポート転送が有効になっています。ポート転送予約を 1 つ設定し、転送先を 21>192.xxx:22 に設定しました。
  3. 外部 IP 67.xxx に ping を実行できます (実行する前に、ラップトップを携帯電話のセルラーに接続しました)。確認します。
  4. 今ではそれができるはずだと思っていますが、タイムアウトしてしまいました。ssh [email protected] -p 21

このIPで実行するとnmap、見つからないどれでもポートを開きます。

All 1000 scanned ports on ai.sytes.net (67.x.x.x) are filtered

実行すると、-nP約 999 個の「フィルターされた」ポートがあると表示されます。ポート 21 のみが開いていると表示されます。これが原因でしょうか?

Starting Nmap 7.60 ( https://nmap.org ) at 2018-03-06 21:33 PST                         
Nmap scan report for yy.yy.net (67.x.x.x)                                       
Host is up (0.018s latency).                
rDNS record for 67.x.x.x: c-67-x-x-x.hsd1.ca.comcast.net                      
Not shown: 999 filtered ports               
PORT   STATE SERVICE  
21/tcp open  ftp      

Nmap done: 1 IP address (1 host up) scanned in 10.68 seconds 

編集: これらのポートに対して実行したときに、22 と別の 4 桁のポートが開かれていたようですnmap -sT -p XX [host]。これらのポートに対してもポート転送の予約を設定しましたが、結果は同じです。

答え1

パブリック IP からターゲットのプライベート IP へのポート転送を提供しているだけでなく、ファイアウォールでこのポートとパブリック IP 経由の着信トラフィックを許可していることを確認してください。

ローカル SSH の問題は発生していないため、サーバー側の OS ファイアウォールが問題であるとは考えられません。ただし、パブリック IP を所有するファイアウォールでは、public-ip:22 の着信トラフィックを許可するようにルールを設定する必要があります。たとえそのポートに対して NAT 経由の転送が設定されています。

特別な理由がない限り、SSH には 22 を使用することをお勧めします。特別な理由としては、ファイアウォール自体など、別のより重要なマシンがこのポートで SSH 接続を受け入れている場合などが挙げられます。これにより、機能面でのことがより明確になります。

答え2

ポート転送がどのプロトコル (tcp、udp) に対して設定されているかが明示的に示されていません。ssh は tcp を使用するため、ポート転送が "tcp" に対して設定されていることを確認してください。

関連情報