SSHポート転送をデバッグする方法

SSHポート転送をデバッグする方法

これは拡張ですどこでも自宅のコンピュータにアクセスできるSSHポート転送

そこに記載されていることを試しましたが、sshコンピュータが機能しません。

Netgearルーターポート転送設定:

Start Port: 22
End Port: 22
Server IP Address: IP address of by FreeBSD box

/etc/ssh/sshd_conf私のFreeBSDボックス:

PasswordAuthentication yes
AllowUsers root
X11Forwarding yes
AllowTcpForwarding yes

接続を試みる方法:

登録dyndns.comし、外部IPアドレスにマップされたURLを受け取りました。

私のホームネットワークの他のコンピュータで、次の操作を行います。 ssh -l root my_dyndns_ip タイムアウトします。

一方、私はmy_dyndns_urlうまくpingすることができます。

デバッグ:

sshどこからでもアクセスできるようにこの問題を解決するにはどうすればよいですかmy_dnydns_url

Netgearルータのログを見てみましたが、SSH試行に失敗した後にルータにログイン情報が生成されませんでした。

私も見ましたが、/var/log/messages何も見つかりません。

編集:0 @jasonwryanが提案したように、verboseモードでsshを実行します。

奇妙なことを見つけました。 sshを介してdyndns.comから提供されたURLにアクセスしたとき、Whatismyip.comから取得したIPアドレスとは異なるIPアドレスに接続しようとしました。これは間違っていませんか?

編集:1 これでdyndnsの問題が修正されました。

sshを試してみると、エラーが発生してタイムアウトします。接続がタイムアウトしました

編集:2 iptablesやNATはこれに関連していますか?

編集:3 私はデバッグメッセージをキャプチャするsshことから始めました。-d option

WLAN の他のコンピュータで freebsd ボックスに SSH 経由で接続すると、正常に動作し、ログを表示できます。

ただし、外部IP(私のfreebsdボックスに渡されると予想される)でsshを試しても、ログも表示されません。つまり、リクエストが freebsd ボックスに到達しないことを意味します。そしてタイムアウトしました。

ベストアンサー1

あなたの問題はポート転送にあるのではなく、ルータのNAT設定の他のオプションにあるようです。

まず、LAN IPを使用している場合は、ネットワーク上の他のコンピュータでSSHを正常に実行できることを確認してください。これにより、SSHが正しく機能していることを確認できます。

2. 別のコンピュータでテスト外部ネットワークパブリックIPを使用してください。これにより、ポート転送が正しく機能していることを確認できます。

第三に、同じマシンでテスト外部ネットワークそしてDynDNS URLを使用してください。これにより、DynDNSが正しく機能します。

これらすべてが成功した場合、設定に問題はありません(正しいと仮定)。問題は、単に(直接またはDynDNSを介して)パブリックIPにアクセスすることです。ネットワーク内部。これは、ルータに次のものがあることを意味します。NAT反射可能であれば、内部要求をパブリックIPの外部要求にルーティングするように設定します。

おすすめ記事