ข้ามไปยังเนื้อหาหลัก
ลด 50% ทุกแพลน เวลาจำกัด เริ่มต้นที่ $2.48/mo
Windows / RDP

เปลี่ยนพอร์ต Remote Desktop

โดย Jim Schwarz 3 นาทีในการอ่าน

หากต้องการเปลี่ยนพอร์ต Remote Desktop ของ Windows VPS บน Cloudzy ให้อัปเดตพอร์ตและการตั้งค่าไฟร์วอลล์ภายใน VPS แล้วเชื่อมต่ออีกครั้งจากแล็ปท็อปโดยใช้พอร์ตใหม่

ขั้นตอนเดียวกันนี้ใช้ได้กับ VPS ที่ใช้ Windows 10/11 ซึ่งเปิดใช้งานการรับการเชื่อมต่อ Remote Desktop และ Windows Server 2016 หรือใหม่กว่า ชื่อโปรโตคอลยังคงเป็น RDP คู่มือนี้ใช้ Remote Desktop Connection (mstsc) ซึ่งยังรองรับบน Windows 10 และ 11

ก่อนเริ่มต้น

  • ตรวจสอบว่าคุณมีสิทธิ์ผู้ดูแลระบบบน VPS
  • ตรวจสอบว่าคุณเปิดคอนโซล VNC ของ VPS ผ่านแดชบอร์ด Cloudzyได้ ทำทุกขั้นตอนการตั้งค่าผ่าน VNC เท่านั้น ไม่ใช่ผ่านการเชื่อมต่อ RDP ภาพต่อไปนี้ใช้สำหรับอ้างอิง:

เปิดคอนโซล VNC จากแดชบอร์ด Cloudzy

  • บันทึกงานของคุณ การเริ่มบริการ Remote Desktop ใหม่จะตัดการเชื่อมต่อเซสชัน RDP ที่มีอยู่

1. เปิด PowerShell บน VPS

เชื่อมต่อกับ VPS ผ่านคอนโซล VNC บนเดสก์ท็อปของ VPS ให้เปิด Start ค้นหา Windows PowerShell แล้วเลือก Run as administrator

เรียกใช้คำสั่งนี้และจดพอร์ตปัจจุบันไว้สำหรับการกู้คืน:

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 ด้วยหมายเลขนั้นในคำแนะนำที่เหลือทั้งหมด รวมถึงคำสั่งไฟร์วอลล์ การตั้งค่า Remote Desktop และที่อยู่สำหรับเชื่อมต่อ

เพิ่มกฎขาเข้าของ Windows Firewall:

หากกฎ 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 ต่อไป เรียกใช้สคริปต์ต่อไปนี้เพื่อตั้งค่าพอร์ตที่ Remote Desktop รอรับการเชื่อมต่อในรีจิสทรีของ Windows และแสดงค่าที่บันทึกไว้

หากคุณเลือกพอร์ตอื่นในขั้นตอนที่ 2 ให้แทนที่ 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 และเริ่มบริการ Remote Desktop ใหม่

4. เริ่มบริการ Remote Desktop ใหม่

หลังจากบันทึกงานทั้งหมดแล้ว ให้เรียกใช้คำสั่งนี้ผ่าน VNC:

Restart-Service TermService -Force

เซสชัน RDP ที่มีอยู่จะถูกตัดการเชื่อมต่อระหว่างเริ่มบริการใหม่ เปิดคอนโซล VNC ค้างไว้ คุณไม่จำเป็นต้องรีสตาร์ต VPS ในขั้นตอนนี้

5. เชื่อมต่ออีกครั้งจากแล็ปท็อป

บนแล็ปท็อป Windows 10 หรือ 11 ให้กด Win + R ป้อนคำสั่งต่อไปนี้ แล้วกด Enter:

mstsc /v:YOUR_VPS_IP:54321

แทนที่ YOUR_VPS_IP ด้วยที่อยู่ IPv4 ของ VPS จากนั้นลงชื่อเข้าใช้ด้วยข้อมูลรับรอง VPS ที่คุณใช้อยู่

การลงชื่อเข้าใช้สำเร็จยืนยันว่าพอร์ตใหม่ทำงานได้ ใช้ IP:54321 สำหรับการเชื่อมต่อครั้งต่อไป และอัปเดตโปรไฟล์การเชื่อมต่อที่บันทึกไว้

หากเชื่อมต่ออีกครั้งไม่ได้

เปิด VPS ผ่าน VNC ในแผงควบคุม Cloudzy ใช้ PowerShell ที่มีสิทธิ์ผู้ดูแลระบบเพื่อคืนค่าพอร์ตก่อนหน้า

ก่อนเรียกใช้คำสั่งเหล่านี้ ให้แทนที่ 3389 หากคุณจดพอร์ตเดิมเป็นหมายเลขอื่นไว้

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

หากคำสั่งทำงานเสร็จโดยไม่มีข้อผิดพลาด ให้เริ่มบริการใหม่:

Restart-Service TermService -Force

หลังจากบริการเริ่มใหม่แล้ว ให้เชื่อมต่ออีกครั้งโดยใช้พอร์ตเดิม

Share

ต้องการความช่วยเหลือเรื่องอื่นไหม?

เวลาตอบกลับเฉลี่ยน้อยกว่า 1 ชั่วโมง มนุษย์จริง ไม่ใช่บอท