SSH - 他のホストからローカル転送にアクセスできません。

SSH - 他のホストからローカル転送にアクセスできません。

2つのパブリックIP(192.168.0.1と192.168.0.2)を持つVPSがあります。

2番目のIPにバインドされたVPSのルーターのローカルトンネルを設定し、別のコンピュータを介してアクセスしようとしています。私は次のことを行います -

# ssh -g -L 192.168.0.2:22:remote_machine:22 remote_machine

その後、コーヒーショップでノートパソコンで192.168.0.2にアクセスしようとしましたが、タイムアウトしました。何が起こりますか?これが私が解決した問題です -->

  • 私のVPSのSSHサーバーは192.168.0.1でのみリッスンします。 aを実行すると正しい結果がnetstat - plant |grep LISTEN表示されますtcp 0 0 192.168.0.1:22 0.0.0.0:* LISTEN 603/sshd。 603は実際にSSHDのプロセスIDである。

  • 上記のポート転送を実行するnetstat -plant | grep LISTENと、

    tcp 0 0 192.168.0.2:22 0.0.0.0:* LISTEN 1416/ssh 
    tcp 0 0 192.168.0.1:22 0.0.0.0:* LISTEN 603/sshd
    

そして1416は私が呼び出したプロセスIDですssh

  • selinuxが無効

  • iptables -L何もリストされていません。どのようなファイアウォールもありません。

  • ssh 192.168.0.2VPSでこれを行うことができ、正常にインポートされましたremote_machine。ただし、VPS外部(私のコーヒーショップ)では同じ動作が得られません。

  • /etc/ssh/ssh_config、、/etc/ssh/sshd_configすべての項目$HOME/.ssh/configに行が含まれているため、このオプションGatewayPorts yesも使用します。-g実際にすべての組み合わせを試しましたが、まだリモートシステムからローカルフォワーディングポートにアクセスすることはできません。

  • ssh私と一緒に走ったときに-vvv見た - >

    debug1: Local connections to 192.168.0.2:22 forwarded to remote address remote_machine:22
    debug3: channel_setup_fwd_listener: type 2 wildcard 0 addr 192.168.0.2
    debug1: Local forwarding listening on 192.168.0.2 port 22.
    

ただし、ポートに接続しようとすると、何も通知されません。

  • 私は特権ポートを持つルートと高い番号のポートを持つ非ルートユーザーとしてこれを試しました。同じ行動。 VPS外部では接続できず、VPS自体でのみ接続可能です。

  • 192.168.0.2でもリッスンするようにVPS SSHサーバーを設定すると、そのアドレスからVPSにアクセスできます。ただし、192.168.0.2のエンドポイントの1つとリモートシステムの他のエンドポイントを使用してトンネルを作成すると、トンネルはVPS内でのみアクセスでき、外部からはアクセスできません。

私が何を見逃しているのか知っていますか?

ベストアンサー1

おすすめ記事