リモートデスクトップ · NAT の内側
NAT やファイアウォールの内側へ RDP——ポート 3389 は閉じたまま
ポート 3389 をインターネットに転送するのは、マシンを乗っ取られる典型的なパターンです。代わりに、接続したい Windows PC やサーバー、または同じネットワーク上の任意のマシンに Termalin Connector をインストールしてください。Connector は外向きに接続するので、待ち受けるものも転送するポートもありません。デスクトップは RDP や VNC でブラウザーやアプリに開きます。VPN なしで NAT の内側の PC にアクセスする方法です。
アウトバウンドのみ · ポート 3389 は閉じたまま · Pro または Team(14 日間のトライアル)
01 / 問題
なぜ 3389 を転送するだけではいけないのか
ポート 3389 を開けたり、ルーターで転送したりすると、RDP のログイン画面がインターネットに公開されます。数時間のうちにスキャナーに見つかり、それ以降はパスワードの推測攻撃が絶え間なく続きます。そもそも CGNAT や厳格なファイアウォールのせいで、転送自体ができないこともよくあります。Connector はこれをすべて回避します。あなたのマシンが受信接続を受け付けることは一切ありません。
03 / 2 つの構成
Connector を置く 2 つの方法
Windows マシン自体に。接続したい PC やサーバーに Connector をインストールします。キャビネットで「インストールコマンドを取得」→「Windows」をクリックし、表示された 1 行を PowerShell で実行します(管理者権限は自分から求めてきます)。
irm https://termal.in/i/<token>.ps1 | iex
接続先は 127.0.0.1 になります。デスクトップが Connector 自身のマシンにあるので、隣に「ファイル」ボタンも表示され、追加の設定なしに同じリンクでその PC のドライブを閲覧できます。
同じネットワーク上の別のマシンに。PC には手を加えたくない場合や、PC が Windows でない場合は、LAN 上の任意の Linux マシンや Mac(Raspberry Pi、NAS、同じプライベートネットワーク上の VPS など)に Connector を置きます。
curl -fsSL https://termal.in/i/<token> | sudo sh
あとは、デスクトップの接続先を PC のプライベートアドレス(10.x、192.168.x、172.16–31.x)に設定します。Connector がローカルネットワーク上でそこへ接続します。インストール用のリンクは 1 回だけ、1 時間有効です。
04 / Windows 側
確認すべき Windows の設定
- ▸リモート デスクトップを有効に。設定 → システム → リモート デスクトップ(サーバーでは サーバー マネージャー → ローカル サーバー)。
- ▸ユーザーに許可を。アカウントが管理者であるか、Remote Desktop Users に登録されている必要があります。
- ▸ネットワーク レベル認証はオンのままで大丈夫です(既定)。パスワードが平文で流れるのを防ぎます。ローカルアカウントか NTLM を使ってください。Kerberos にはリレー越しに到達できません。
- ▸空のパスワードは不可。パスワードが空のローカルアカウントは RDP でサインインできません。これは Windows のポリシーで、Termalin の制限ではありません。
05 / VNC も
VNC デスクトップも同じように
Linux のデスクトップや、5900〜5999 で待ち受ける任意の VNC サーバーも、同じ Connector で使えます。VNC のパスワード確認はあなたとサーバーの間で行われ、termal.in がパスワードを見ることはありません。また直接の VNC 接続とは違い、画面とキー入力は Connector のトンネル内にとどまり、平文でインターネットを流れることはありません。VNC パスワードを使うか認証なしの RFB 3.3〜3.8 サーバーであれば対応します(TigerVNC、TightVNC、UltraVNC、VNC パスワードを使う RealVNC)。
06 / 比較
VPN、SSH トンネル、RD ゲートウェイとの比較
| 方法 | ポートを開く? | 手元で必要なもの | 向いている場面 |
|---|---|---|---|
| 3389 を転送 | はい(インターネットに) | ルーターの設定変更 | 実際にはありません |
SSH トンネル(ssh -L 3389) | SSH のポート、NAT の内側なら不要 | SSH の入口 + クライアント | すでに SSH で入れる |
| メッシュ VPN | いいえ(アウトバウンド) | すべてのデバイスに VPN クライアント | プライベートネットワーク全体が欲しい |
| RD ゲートウェイ | 443、さらに AD | Windows Server のインフラ | 管理された大規模な Windows 環境 |
| Termalin Connector | いいえ(アウトバウンドのみ) | マシンで 1 行、あとはブラウザーかアプリ | 1 台から数台のデスクトップに、すぐに |
Connector の経路には Pro または Team プランが必要です。大規模な Active Directory 環境を運用しているなら、Kerberos と集中管理のポリシーを備えた RD ゲートウェイのほうがその用途に適した重量級のツールです。Termalin は、数台のマシンに鍵なしで手早く到達するための方法です。
よくある質問
Connector はポートを開きますか?
いいえ。termal.in へアウトバウンドの接続を行うだけで、ポートで待ち受けることは一切ありません。ルーターで転送するものも、スキャナーに見つかるものもありません。だから NAT や CGNAT、厳格なファイアウォールの内側でも動きます。
インストールすると Windows でポート 22 が開きますか?
いいえ。インストーラーが OpenSSH Server を追加する場合、sshd は 127.0.0.1 と ::1 でのみ待ち受け、受信方向のファイアウォール規則はオフのままなので、ポート 22 はネットワークに開きません。もともとあった OpenSSH Server はそのままにします。Connector は自分のアウトバウンドのトンネルを通じて sshd に到達します。
どのプランが必要ですか?
Connector 経由でデスクトップに接続するのは Pro または Team の機能です(14 日間のトライアルも含みます)。同時に開けるデスクトップは Pro で 4 つ、Team で 10 個までです。
ブラウザーの代わりにデスクトップアプリを使えますか?
はい。Termalin のデスクトップアプリ(0.1.48 以降、Windows・macOS・Linux)で、同じ Connector を通じて同じデスクトップを開けます。直接到達できるデスクトップならアプリでは無料で、Connector 経由の場合は同じく Pro/Team の機能です。
パブリック IP を持つデスクトップの場合は?
その場合 Connector は不要で、ブラウザーやアプリから直接接続できます。Connector は、パブリックアドレスもポート転送もない、NAT やファイアウォールの内側のマシンのためのものです。
デスクトップには届き、3389 は閉じたまま
1 行で Connector をインストール。外向きに接続し、待ち受けるものはなく、Windows や VNC のデスクトップがブラウザーやアプリで開きます。
Pro または Team · 14 日間のトライアル · Windows Server に SSH で · Connector