web-dev-qa-db-ja.com

制限されたNAT管理していないゲートウェイの背後にあるマシンにアクセスする方法は?

SSH、FTP、HTTPなどのリモートアクセスが可能なLinuxマシンがあります。私はNo-IP.comでダイナミックDNSにサインアップしましたが、NATの背後にある大学のキャンパスネットワークにいて、ルーターにアクセスしてポート転送を設定する権限がないため、これは適切ではありません。キャンパスルーターがUPnPまたはNAT-PMPをサポートしているかどうかはわかりませんが、疑問です。

とにかく、VPNを使用してこれを回避する方法があるかどうか疑問に思っていました。たとえば、VPNソフトウェアを両方のマシンにインストールしている場合、VPNを使用すると、ラップトップからLinuxボックスにアクセスできるようになります。しかし、ソフトウェアをインストールせずに、どのコンピュータからでも自分のLinuxボックスにアクセスできるようにしたいと思っています。または、少なくともHTTP部分にその方法でアクセスできます。そして、私は多くのVPNサービスがファイル転送などのためのWebインターフェースを提供していることを知っていますが、通常のFTPおよびSSHクライアントソフトウェアを使用してLinuxボックスにアクセスできます。

とにかく、これはVPNでできることですか?または、どういうわけか動的DNSを使用してVPNをチェーンする方法はありますか? Hamachi VPNのWebサイトを見てみましたが、すべての機能が専門用語ではないので、これらの質問を理解できず、アカウントを作成する前に知っておきたいと思います。

6
user69668

そのサウンドから、キャンパスファイアウォールでは、キャンパス外からマシンへの接続を開始できません。したがって、マシンに接続するには、内部から接続を開始する必要があります。

したがって、寮のマシンDとキャンパスの外にある外部のマシンEの間に何らかの接続を確立する必要があります。次に、クライアントCから寮のマシンに接続する場合は、代わりにEに接続し、接続を中継するようにEをセットアップします。

D→E接続の場合、VPNを使用できます。これには、DとEの両方でルートレベルのアクセスが必要です。VPNは、DとEの間のIP接続を提供するため、Cから、EがCとDの間でルーティングすることを希望するDのネットワークサービスにアクセスできます。

より軽量なソリューションは、DとEからSSH接続を確立することです。これには、両側にシェルアカウントのみが必要です(もちろん、EはSSHを許可する必要があります)。 Dから実行

ssh -R 2242:localhost:22 E sleep 999999999

これにより、EからDへのポート転送が作成されます。ポート2242のEで行われたすべての接続は、ポート22のDにリレーされます。ポート22はsshポートなので、ssh -p 2242 Eを実行すると、Dに接続されます。ログインできます。これを自動化するには、~/.ssh/configで次のようにエイリアスを定義できます(PuTTYにも同様の設定があります。マニュアルを参照してください)。

Host dorm
UserName bob
HostName E
Port 2242

その方法で複数のポートをルーティングできます。たとえば、Eのポート8042をDのポート80にもリレーするには、次のように入力します。

ssh -R 2242:localhost:22 -R 8042:localhost:80 E sleep 999999999

Dでネットワーク接続が開始するたびに、そのコマンドを再実行する必要があります。

NAT(つまり、インターネットから自由にアクセス可能)の背後にないマシンがある場合、sshにアクセスできますfromキャンパスのマシンそして、そのsshセッションを介して任意のリモートポートを適切なローカル(キャンパスマシン上の)ポートに転送します-OpenSSHのオプションは-R。次に、NATされていないマシンの転送ポートに接続し、キャンパスコンピュータからのsshがキャンパスNATを介してデータをトンネルします。少し不器用ですが、機能します。

2
peterph

VPNはこれを解決できます。

具体的には、ポート転送を可能にするVPNが必要です。私は Mullvad の経験しかありませんが、彼らはこれを行いますが、他の多くのVPNでもこれを提供していると確信しています。

ほとんどのサービスでは、おそらく任意のポート(たとえば、sshの場合は22)を転送することは期待できないため、「ランダムな」数値の高いポートを使用する必要があります。しかし、このためのssh/ftpの設定は非常に簡単です。

0
Quantumboredom