メインコンテンツへスキップ
50% off 全プラン対象、期間限定。月額 $2.48/mo
Windows / RDP

リモート デスクトップのポートを変更する

著者 Jim Schwarz 3 分で読めます

Cloudzy Windows VPS のリモート デスクトップのポートを変更するには、VPS 内でポートとファイアウォールの設定を更新してから、ノートパソコンから新しいポートで再接続します。

同じ手順は、リモート デスクトップの接続を受け付ける機能が有効な Windows 10/11 VPS、および Windows Server 2016 以降にも適用できます。プロトコルの名称は引き続き RDP です。このガイドでは、Windows 10 と 11 で引き続きサポートされているリモート デスクトップ接続(mstsc)を使用します。

始める前に

  • VPS への管理者アクセス権を用意してください。
  • Cloudzy ダッシュボードから VPS の VNC コンソールを開けることを確認してください。設定作業はすべて、RDP 接続ではなく VNC 経由で行ってください。参考画像は以下のとおりです。

Cloudzy ダッシュボードから VNC コンソールを開く

  • 作業内容を保存してください。リモート デスクトップ サービスを再起動すると、既存の RDP セッションは切断されます。

1. VPS で PowerShell を開く

VNC コンソールから VPS に接続します。VPS のデスクトップでスタートを開き、Windows PowerShell を検索して「管理者として実行」を選択します。

次のコマンドを実行し、復旧に備えて現在のポートを記録してください。

Get-ItemPropertyValue -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name PortNumber

既定値は 3389 です。

2. 新しいポートを許可する

この例では 54321 を使用します。すでに使用されていないか確認してください。

Get-NetTCPConnection -LocalPort 54321 -ErrorAction SilentlyContinue

Get-NetUDPEndpoint -LocalPort 54321 -ErrorAction SilentlyContinue

どちらのコマンドもエントリを返さない場合、そのポートの現在の使用は検出されていません。どちらかがエントリを返した場合は、54322 や 54323 など、別のポートを試してください。これらの例のポートが VPS で未使用である保証はありません。両方の確認コマンドのポート番号を置き換え、続行する前に再実行してください。

このガイドでは、49152 から 65535 の範囲で、ほかのアプリケーションが使用していないポートを選択してください。22(SSH)、53(DNS)、80(HTTP)、443(HTTPS)、445(Windows ファイル共有)など、ほかのサービスで一般的に使用されるポートは避けてください。

別のポートを選んだ場合は、以降のすべての手順で 54321 をその番号に置き換えてください。ファイアウォールのコマンド、リモート デスクトップの設定、接続先アドレスも対象です。

Windows ファイアウォールの受信規則を追加します。

既存の RDP 規則でアクセス元を特定の IP アドレスに制限している場合は、以下の両方のコマンドに -RemoteAddress と同じ許可済み IP アドレスを追加してから実行してください。それ以外の場合は、表示されているとおりに実行してください。

New-NetFirewallRule -DisplayName 'RDP-54321-TCP' -Direction Inbound -Action Allow -Protocol TCP -LocalPort 54321 -Profile Any

New-NetFirewallRule -DisplayName 'RDP-54321-UDP' -Direction Inbound -Action Allow -Protocol UDP -LocalPort 54321 -Profile Any

追加のファイアウォールを使用している場合は、そこでも新しいポートを許可してください。ファイアウォールのエラーをすべて解消してから続行してください。

3. レジストリで新しいポートを設定する

VNC 接続を維持してください。以下のスクリプトを実行して、Windows レジストリ内のリモート デスクトップのリッスン ポートを設定し、保存された値を表示します。

手順 2 で別のポートを選んだ場合は、スクリプトを実行する前に 1 行目の 54321 を置き換えてください。

$portValue = 54321

if ($portValue -ge 1 -and $portValue -le 65535) {
    Set-ItemProperty `
      -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' `
      -Name 'PortNumber' `
      -Value $portValue

    Get-ItemPropertyValue `
      -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' `
      -Name 'PortNumber'
} else {
    Write-Error "Invalid RDP port. Use a value between 1 and 65535."
}

出力が選択したポートと一致することを確認してください。この例では 54321 です。エラーや誤った出力があれば、解消してから続行してください。

復旧に備えて、既存の RDP ファイアウォール規則は残してください。これらの規則により、VNC 経由で元のポートに戻してリモート デスクトップ サービスを再起動する必要が生じた場合も、元のポートがファイアウォールで許可された状態を維持できます。

4. リモート デスクトップ サービスを再起動する

すべての作業内容を保存したら、VNC 経由で次のコマンドを実行します。

Restart-Service TermService -Force

サービスの再起動中は、既存の RDP セッションが切断されます。VNC コンソールは開いたままにしてください。この手順で VPS を再起動する必要はありません。

5. ノートパソコンから再接続する

Windows 10 または 11 のノートパソコンで Win + R を押し、次の内容を入力して Enter を押します。

mstsc /v:YOUR_VPS_IP:54321

YOUR_VPS_IP を VPS の IPv4 アドレスに置き換えてください。既存の VPS の認証情報でサインインします。

正常にサインインできれば、新しいポートが機能していることを確認できます。以降の接続では IP:54321 を使用し、保存済みの接続プロファイルも更新してください。

再接続できない場合

Cloudzy パネルで VNC 経由で VPS を開きます。管理者権限の PowerShell で、以前のポートに戻してください。

記録した元のポートが異なる場合は、これらのコマンドを実行する前に 3389 を置き換えてください。

Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name PortNumber -Value 3389

コマンドがエラーなく完了したら、サービスを再起動します。

Restart-Service TermService -Force

サービスの再起動後、元のポートで再接続してください。

Share

他のことでお困りですか?

応答時間の中央値は1時間以内。ボットではなく実際の担当者が対応。