NAT ファイアウォールの背後からの SSH トンネリング

NAT ファイアウォールの背後からの SSH トンネリング

Openssh サーバーがあります。ファイアウォールの背後にある Ubuntu 14.04x (管理者権限はありません) で、管理者権限のないファイアウォールの背後にあるモバイル デバイスからのテザリングを使用している Kali Linux ローリングから SSH トンネルを作成したいと考えています。これは可能ですか? オープン VPN アクセスを持つ Ubuntu マシンへのコマンド ライン アクセスを許可する Chrome リモート デスクトップがあります。サーバーとオープン SSH サーバー。

答え1

  Ubuntu----Firewall1----Internet----Firewall2----Kali

そして、どちらのファイアウォールにもアクセスせずに、Kali ボックスから Ubuntu ボックスに SSH 接続したいと考えています。

必要なものは 2 つあります。

1) 着信接続がファイアウォール 1 を通過して Ubuntu ホストに到達するための何らかの方法。NAT が実行される限り、どのポートかは関係ありません。TCP ポートである必要があります。

2) ファイアウォール 2 は、#1 と同じポートで内部からインターネットへの接続を許可する必要があります。

これら両方がなければ、目標を達成することはできません。

考えられる代替案

  • IPv6 を確認します。両端で IPv6 が機能している場合、NAT は問題になりません。ただし、ファイアウォール ルールの調整が必要になる場合があります。

  • サードパーティのシェルサーバー(インターネット上のどこか)を使用すると、UbuntuとKaliの両方がリバーストンネルが設定されたSSHセッションを維持します。そのため、Kaliからはオプションを使用してシェルボックスにSSH接続します-R。詳細については、リバース SSH トンネリングはどのように機能しますか?

  • 独自の接続を構築して管理することで、ファイアウォールをバイパスします。これは、どちらかの端に DSL またはファイバー接続をインストールすることを意味する場合があります。ここでの欠点は、コストと許可です。携帯電話接続を使用すれば済むかもしれませんが、すぐにコストが高くなります。

  • 単純にやめてください。仕事や学校に飽きていて、これが単なる気晴らしになっているのであれば、もっとやりがいのある、やりがいのある仕事が必要かもしれません。

答え2

いずれかのファイアウォール デバイスが UPnP をサポートしている場合は、それを使用してポート転送を設定できます。UPnP 呼び出しを送信するために使用できるコマンド ライン ユーティリティがいくつかあります。

そのようなユーティリティ スイートの 1 つがここにあります。http://people.ds.cam.ac.uk/ssb22/setup/upnp.html
必要な Python モジュールが必要になる可能性がありますが、これは でインストールできますpip install --user miniupnpc

使い方はとても簡単です:

./upnp-add-port 22222 22

22222これにより、ファイアウォール デバイスのポートが22マシンのポートに転送されます。

コマンドupnp-portsを実行すると、次のような内容が表示されます。

./upnp-ports
TCP:22222 -> 192.168.0.139:22   upnp-add-port 22222

関連情報