15%

Hemat 15% di Semua Layanan Hosting

Uji kemampuanmu dan dapatkan Diskon pada paket hosting apa saja

Gunakan kode:

Skills
Memulai
09.10.2024

Menggunakan Remote Desktop Protocol (RDP) untuk Masuk ke Windows Server Anda

Remote Desktop Protocol (RDP) adalah protokol jaringan Microsoft yang bersifat proprietary yang memungkinkan akses grafis penuh yang terenkripsi ke mesin Windows jarak jauh melalui port TCP 3389. Protokol ini mengirimkan output tampilan dari server ke klien dan input keyboard/mouse dari klien kembali ke server, yang secara efektif memberikan Anda sesi interaktif langsung pada mesin yang tidak Anda hadiri secara fisik.

Bagi administrator server, RDP adalah metode utama untuk mengelola instans Windows Server — baik server tersebut adalah mesin bare-metal di pusat data, lingkungan VPS Hosting, atau Dedicated Server yang menjalankan Windows Server 2019, 2022, atau yang lebih baru. Panduan ini mencakup alur kerja lengkap: mengaktifkan RDP, mengamankannya dari vektor serangan dunia nyata, menghubungkan dari Windows, macOS, dan Linux, serta mendiagnosis kegagalan yang sering mengejutkan para administrator.

Cara Kerja RDP di Balik Layar

Sebelum menyentuh satu pun pengaturan konfigurasi, memahami arsitektur protokol akan memberikan manfaat besar saat pemecahan masalah.

RDP beroperasi melalui TCP (dan opsional UDP untuk pengalihan multimedia) dan menggunakan TLS 1.2/1.3 untuk enkripsi transport di semua rilis Windows Server modern. Tumpukan sesi terdiri dari beberapa saluran virtual yang membawa jenis data berbeda secara bersamaan:

  • Saluran grafis — pembaruan tampilan terkompresi menggunakan akselerasi RemoteFX atau GDI
  • Saluran input — peristiwa keyboard dan mouse
  • Saluran clipboard — berbagi clipboard dua arah
  • Saluran pengalihan drive/printer — pemetaan sumber daya lokal ke dalam sesi jarak jauh
  • Saluran audio — pengalihan pemutaran audio jarak jauh dan perekaman

Setiap saluran dimultipleks melalui satu koneksi TCP ke port 3389 secara default. Komponen sisi server adalah TermService (Remote Desktop Services), dan listener dikelola oleh RDPWinST.sys di tingkat kernel. Ketika Anda mengubah port listening, Anda memodifikasi nilai registry yang dibaca driver ini saat layanan dimulai.

Network Level Authentication (NLA) menambahkan lapisan autentikasi pra-sesi menggunakan CredSSP (Credential Security Support Provider). Dengan NLA diaktifkan, klien harus mengautentikasi dengan kredensial yang valid sebelum server mengalokasikan sesi desktop penuh, yang secara dramatis mengurangi permukaan serangan untuk serangan denial-of-service dan brute-force terhadap layar login.

Daftar Periksa Prasyarat

Konfirmasi setiap item di bawah ini sebelum mencoba koneksi:

  • Instans Windows Server (2016, 2019, atau 2022) dengan RDP diaktifkan
  • Alamat IPv4 publik atau hostname yang dapat di-resolve untuk server
  • Akun tingkat administrator yang valid di server
  • Klien RDP yang terinstal di mesin lokal Anda
  • Port 3389 (atau port kustom Anda) terbuka di firewall OS dan firewall jaringan upstream atau security group mana pun
  • Dukungan NLA di sisi klien (diaktifkan secara default di semua Windows, macOS, dan klien RDP Linux modern)

Langkah 1: Aktifkan RDP di Windows Server

RDP dinonaktifkan secara default pada instalasi Windows Server baru. Ada dua metode yang dapat diandalkan untuk mengaktifkannya.

Metode A: GUI (System Properties)

  1. Buka Server Manager atau tekan Win + R, ketik sysdm.cpl, dan tekan Enter.
  2. Navigasi ke tab Remote.
  3. Di bawah Remote Desktop, pilih Allow remote connections to this computer.
  4. Pastikan Allow connections only from computers running Remote Desktop with Network Level Authentication dicentang.
  5. Klik OK.

Metode B: PowerShell (Direkomendasikan untuk Otomasi)

Untuk deployment headless atau berbasis skrip, PowerShell lebih cepat dan dapat di-skrip:

# Enable RDP
Set-ItemProperty -Path 'HKLM:SystemCurrentControlSetControlTerminal Server' `
    -Name "fDenyTSConnections" -Value 0

# Enable NLA
Set-ItemProperty -Path 'HKLM:SystemCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp' `
    -Name "UserAuthentication" -Value 1

# Allow RDP through Windows Firewall
Enable-NetFirewallRule -DisplayGroup "Remote Desktop"

# Confirm the service is running
Set-Service -Name TermService -StartupType Automatic
Start-Service TermService

Memverifikasi Aturan Firewall

Grup aturan firewall bawaan "Remote Desktop" mencakup aturan inbound yang diperlukan. Verifikasi dengan:

Get-NetFirewallRule -DisplayGroup "Remote Desktop" | Select-Object DisplayName, Enabled, Direction

Jika Anda berada di belakang security group penyedia cloud (umum pada VPS dengan cPanel atau lingkungan VPS terkelola), Anda juga harus membuka port 3389 di panel firewall eksternal penyedia — firewall OS saja tidak cukup.

Langkah 2: Temukan Alamat IP Publik Server

Dari Konsol Server

Buka Command Prompt yang ditinggikan dan jalankan:

ipconfig /all

Cari Alamat IPv4 di bawah adaptor jaringan yang aktif. Pada server dengan beberapa NIC (umum pada perangkat keras dedicated), identifikasi adaptor yang terhubung ke jaringan publik dengan mereferensikan silang default gateway.

Untuk output yang lebih bersih, gunakan PowerShell:

Get-NetIPAddress -AddressFamily IPv4 | Where-Object { $_.IPAddress -notlike "127.*" } |
    Select-Object InterfaceAlias, IPAddress

Dari Panel Kontrol Hosting Anda

Jika Anda menyediakan server melalui penyedia hosting, IP publik tercantum di dasbor panel kontrol. Untuk Dedicated Server AlexHost, IP ditampilkan segera setelah penyediaan di area klien.

Kasus tepi penting: Jika server Anda berada di belakang NAT (misalnya, cloud privat atau hypervisor dengan jaringan internal), IP yang ditampilkan oleh ipconfig akan menjadi alamat privat RFC 1918. Anda perlu terhubung ke IP publik gateway NAT dan mengonfigurasi port forwarding ke IP privat server pada port 3389.

Langkah 3: Hubungkan ke Server melalui RDP

Dari Windows

Klien bawaan adalah mstsc.exe (Microsoft Terminal Services Client). Luncurkan dari Run (Win + R) atau menu Start:

mstsc /v:YOUR_SERVER_IP:3389

Untuk sesi layar penuh dengan pengalihan drive dinonaktifkan (default yang memperhatikan keamanan):

mstsc /v:YOUR_SERVER_IP /f /nodrives

Di GUI:

  1. Masukkan IP server di kolom Computer.
  2. Klik Show Options untuk mengisi username terlebih dahulu, yang menghindari prompt kredensial tambahan.
  3. Di bawah tab Experience, pilih kecepatan koneksi yang sesuai untuk mengoptimalkan rendering.
  4. Klik Connect, terima peringatan sertifikat pada koneksi pertama (verifikasi thumbprint sertifikat jika keamanan sangat penting), dan masukkan kata sandi Anda.

Dari macOS

Aplikasi resmi Microsoft Microsoft Remote Desktop (tersedia gratis di Mac App Store) adalah klien yang direkomendasikan.

  1. Buka aplikasi dan klik tombol +, lalu Add PC.
  2. Masukkan IP server di PC Name.
  3. Di bawah User Account, klik Add User Account dan masukkan kredensial Anda.
  4. Opsional, konfigurasikan pengaturan Display dan pengalihan Devices & Audio.
  5. Klik dua kali koneksi yang tersimpan untuk memulai sesi.

Dari Linux

Dua opsi matang tersedia di Linux:

Remmina (berbasis GTK, direkomendasikan untuk lingkungan desktop):

sudo apt install remmina remmina-plugin-rdp   # Debian/Ubuntu
sudo dnf install remmina remmina-plugin-rdp   # RHEL/Fedora

Luncurkan Remmina, buat koneksi baru, pilih RDP sebagai protokol, masukkan IP server, kredensial, dan hubungkan.

FreeRDP (baris perintah, ideal untuk skrip atau klien headless):

sudo apt install freerdp2-x11
xfreerdp /v:YOUR_SERVER_IP /u:Administrator /p:'YourPassword' /cert:ignore /dynamic-resolution

Flag /cert:ignore menekan peringatan sertifikat — dapat diterima di lingkungan yang terkontrol tetapi harus diganti dengan certificate pinning yang tepat di produksi.

Perbandingan Klien RDP

FiturWindows (mstsc)macOS (MS RD App)Linux (FreeRDP)Linux (Remmina)
Dukungan NLAYaYaYaYa
Pengalihan DriveYaYaYaYa
Berbagi ClipboardYaYaYaYa
Pengalihan AudioYaYaYa (plugin)Ya (plugin)
Multi-MonitorYaYaYa (`/multimon`)Terbatas
RemoteFX / GPUYaSebagianYaSebagian
Autentikasi Smart CardYaTidakYaTidak
Flag Baris PerintahYaTidakYa (penuh)Tidak
BiayaGratis (bawaan)GratisGratis (open source)Gratis (open source)

Langkah 4: Mengamankan RDP dari Ancaman Dunia Nyata

RDP adalah salah satu layanan yang paling aktif menjadi target di internet. Shodan secara konsisten mengindeks jutaan endpoint RDP yang terekspos, dan kampanye brute-force otomatis berjalan 24/7. Langkah-langkah berikut tidak bersifat opsional untuk server produksi mana pun.

Ubah Port Listening Default

Mengubah dari 3389 ke port non-standar menghilangkan sebagian besar pemindai otomatis. Edit registry:

$newPort = 54321  # Replace with your chosen port
Set-ItemProperty -Path 'HKLM:SystemCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp' `
    -Name "PortNumber" -Value $newPort -Type DWord

# Update firewall rule
New-NetFirewallRule -DisplayName "RDP Custom Port" -Direction Inbound `
    -Protocol TCP -LocalPort $newPort -Action Allow

# Disable the default rule
Disable-NetFirewallRule -DisplayName "Remote Desktop - User Mode (TCP-In)"

Restart-Service TermService

Ingat untuk memperbarui security group cloud Anda agar mengizinkan port baru dan memblokir 3389.

Batasi Akses berdasarkan Alamat IP

Jika workstation administratif Anda memiliki IP statis, batasi RDP hanya ke IP tersebut:

Set-NetFirewallRule -DisplayName "RDP Custom Port" `
    -RemoteAddress "YOUR_ADMIN_IP"

Terapkan Kebijakan Penguncian Akun

Cegah serangan brute-force dengan mengonfigurasi ambang batas penguncian akun. Di Group Policy (gpedit.msc):

  • Ambang batas penguncian akun: 5 percobaan tidak valid
  • Durasi penguncian akun: 30 menit
  • Reset penghitung penguncian akun setelah: 15 menit

Atau melalui PowerShell:

net accounts /lockoutthreshold:5 /lockoutduration:30 /lockoutwindow:15

Terapkan VPN atau SSH Tunnel sebagai Gateway

Pendekatan paling kuat adalah tidak mengekspos RDP ke internet publik sama sekali. Tempatkan RDP di belakang VPN (WireGuard atau OpenVPN) atau SSH tunnel. Administrator terhubung ke VPN terlebih dahulu, kemudian RDP ke IP privat server. Ini menghilangkan permukaan serangan sepenuhnya.

Aktifkan Windows Defender Credential Guard

Pada Windows Server 2016 dan yang lebih baru, Credential Guard mengisolasi hash kredensial dalam enklave keamanan berbasis virtualisasi, mencegah serangan pass-the-hash yang dapat berpindah dari sesi RDP yang disusupi.

Audit dan Catat Sesi RDP

Aktifkan auditing melalui Group Policy di bawah Computer Configuration > Windows Settings > Security Settings > Advanced Audit Policy Configuration > Logon/Logoff. Catat peristiwa keberhasilan dan kegagalan. Teruskan log ke SIEM atau setidaknya tinjau Event ID 4624 (logon berhasil) dan Event ID 4625 (logon gagal) di Event Viewer secara berkala.

Langkah 5: Memecahkan Masalah Kegagalan Koneksi RDP yang Umum

Koneksi Ditolak (Kode Error 0x204 / "Remote computer cannot be reached")

Ini hampir selalu merupakan masalah firewall atau routing.

# Test from the client machine (replace with your server IP and port)
Test-NetConnection -ComputerName YOUR_SERVER_IP -Port 3389

Jika TcpTestSucceeded mengembalikan False, port diblokir. Periksa:

  1. Firewall OS di server (Get-NetFirewallRule -DisplayGroup "Remote Desktop")
  2. Security group atau ACL penyedia cloud
  3. Firewall perangkat keras perantara antara klien dan server

Error Autentikasi ("An authentication error has occurred. The function requested is not supported.")

Ini biasanya berarti klien tidak mendukung versi Credential Security Support Provider (CredSSP) yang diperlukan oleh server, sering muncul setelah pembaruan keamanan Windows (patch CVE-2018-0886). Perbaiki di server:

# Temporary workaround — update the client instead when possible
Set-ItemProperty -Path 'HKLM:SOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters' `
    -Name "AllowEncryptionOracle" -Value 2 -Type DWord

Perbaikan permanen adalah memperbarui klien RDP ke versi yang telah dipatch yang mendukung protokol CredSSP yang diperbarui.

"The remote session was disconnected because there are no Remote Desktop License Servers available"

Ini terjadi ketika peran Remote Desktop Session Host (RDSH) server terinstal tetapi tidak ada server RD Licensing yang dikonfigurasi. Untuk akses administratif sederhana (bukan deployment RDSH multi-pengguna), hapus peran RDSH atau konfigurasikan periode grace 120 hari:

# Check licensing mode
(Get-WmiObject -Namespace root/CIMV2/TerminalServices -Class Win32_TerminalServiceSetting).LicensingType

Nilai 2 berarti Per Device, 4 berarti Per User. Untuk akses hanya admin, nilainya harus 5 (tidak dikonfigurasi / periode grace).

Layar Hitam Setelah Login

Layar hitam pada koneksi RDP biasanya menunjukkan salah satu dari tiga penyebab:

  • Crash Explorer.exe: Tekan Ctrl + Alt + End untuk membuka Task Manager, lalu jalankan explorer.exe dari File > Run New Task.
  • Konflik driver tampilan: Nonaktifkan akselerasi perangkat keras di sesi RDP melalui Group Policy.
  • Masalah GPU remoting: Pada server dengan GPU dedicated (relevan untuk beban kerja GPU Hosting), pastikan adaptor RemoteFX vGPU dikonfigurasi dengan benar.

Sesi RDP Lambat atau Tersendat

Optimalkan performa dengan menyesuaikan pengaturan pengalaman koneksi di mstsc:

mstsc /v:YOUR_SERVER_IP /f

Di tab Experience, pilih LAN (10 Mbps or higher) dan nonaktifkan Desktop background, Font smoothing, dan Desktop composition untuk responsivitas maksimum melalui tautan latensi tinggi.

RDP vs. Protokol Akses Jarak Jauh Alternatif

KriteriaRDPSSH (dengan X11/XRDP)VNCTeamViewer
ProtokolProprietary (Microsoft)Standar terbukaStandar terbukaProprietary
EnkripsiTLS 1.2/1.3AES-256 (ChaCha20)Opsional (TLS tunnel)AES-256
AutentikasiNLA / Kerberos / Smart CardPasangan kunci / Kata sandiKata sandiBerbasis akun
PerformaTinggi (GDI terkompresi)Tinggi (CLI), Rendah (GUI)Rendah-SedangSedang
Multi-SesiYa (RDSH)YaYaYa
Dukungan Windows NativeBawaanMemerlukan OpenSSHMemerlukan klienMemerlukan instalasi
Traversal FirewallPort tunggal (3389)Port tunggal (22)Port tunggal (5900)Berbasis relay
Kasus Penggunaan IdealAdmin server WindowsAdmin Linux/UnixGUI lintas platformDukungan/helpdesk

Untuk administrasi Windows Server, RDP tetap menjadi pilihan terbaik dalam hal performa, integrasi native, dan kedalaman fitur. SSH adalah protokol yang disukai untuk lingkungan VPS Hosting berbasis Linux.

Mengelola Beberapa Sesi RDP dan Kredensial Tersimpan

Menyimpan File Koneksi RDP

mstsc mendukung file konfigurasi .rdp, yang merupakan file teks biasa yang dapat Anda kontrol versinya:

full address:s:YOUR_SERVER_IP:3389
username:s:Administrator
prompt for credentials:i:1
audiomode:i:0
redirectdrives:i:0
redirectclipboard:i:1

Simpan sebagai server.rdp dan klik dua kali untuk meluncurkan, atau panggil melalui:

mstsc server.rdp

Credential Manager

Di Windows, kredensial RDP yang tersimpan disimpan di Credential Manager (control keymgr.dll). Untuk skrip otomatis atau pipeline CI/CD yang memerlukan akses RDP, gunakan utilitas cmdkey:

cmdkey /generic:YOUR_SERVER_IP /user:Administrator /pass:YourPassword
mstsc /v:YOUR_SERVER_IP
cmdkey /delete:YOUR_SERVER_IP

Hapus kredensial segera setelah digunakan untuk menghindari paparan kredensial yang persisten.

Daftar Periksa Poin-Poin Kunci Praktis

Gunakan ini sebagai matriks verifikasi pra-deployment dan pasca-insiden:

Pengaturan Awal

  • RDP diaktifkan melalui fDenyTSConnections = 0 di registry
  • NLA diterapkan (UserAuthentication = 1)
  • TermService diatur ke Automatic dan berjalan
  • Aturan firewall aktif untuk port yang benar

Jaringan & Kontrol Akses

  • Port default 3389 diubah ke port non-standar
  • Security group cloud diperbarui untuk mencerminkan port baru
  • Daftar izin IP dikonfigurasi dalam aturan firewall
  • RDP tidak langsung terekspos ke internet (gateway VPN lebih disukai)

Autentikasi & Penguatan

  • Kebijakan penguncian akun dikonfigurasi (5 percobaan / penguncian 30 menit)
  • Kata sandi yang kuat dan unik untuk semua akun dengan akses RDP
  • Credential Guard diaktifkan di Windows Server 2016+
  • Akses RDP dibatasi ke grup Administrators bawaan atau grup RDP khusus

Pemantauan

  • Kebijakan audit diaktifkan untuk peristiwa Logon/Logoff
  • Peringatan Event ID 4625 dikonfigurasi untuk kegagalan berulang
  • Log sesi ditinjau secara berkala atau diteruskan ke SIEM

Sisi Klien

  • Klien RDP diperbarui ke versi terbaru
  • File .rdp disimpan dengan aman dan tidak di-commit ke repositori publik
  • Kredensial tersimpan di Credential Manager ditinjau dan dipangkas secara berkala

Pertanyaan yang Sering Diajukan

Port apa yang digunakan RDP, dan bisakah diubah?

RDP mendengarkan pada port TCP 3389 secara default. Anda dapat mengubahnya dengan memodifikasi nilai DWORD PortNumber di bawah HKLM:SystemCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp dan memulai ulang layanan TermService. Perbarui aturan firewall Anda agar sesuai.

Apa itu Network Level Authentication (NLA) dan haruskah selalu diaktifkan?

NLA mengharuskan klien untuk mengautentikasi melalui CredSSP sebelum server membuat sesi desktop penuh. Ini mencegah pengguna yang tidak terautentikasi mencapai layar login Windows, secara signifikan mengurangi paparan terhadap serangan credential-stuffing dan denial-of-service. Ini harus selalu diaktifkan di server produksi kecuali Anda memiliki persyaratan kompatibilitas klien legacy yang spesifik.

Mengapa koneksi RDP saya terputus setelah periode tidak aktif?

Batas waktu sesi dikendalikan oleh Group Policy di bawah Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Session Time Limits. Kebijakan yang relevan adalah Set time limit for disconnected sessions dan Set time limit for active but idle Remote Desktop Services sessions. Atur ini sesuai kebutuhan operasional Anda daripada membiarkannya pada nilai default.

Bisakah beberapa pengguna terhubung ke Windows Server melalui RDP secara bersamaan?

Instalasi Windows Server standar mendukung dua sesi RDP administratif bersamaan. Untuk lebih banyak pengguna simultan, Anda memerlukan peran Remote Desktop Session Host (RDSH) dan Remote Desktop Services Client Access Licenses (RDS CALs) yang valid. Tanpa lisensi yang tepat, server memasuki periode grace 120 hari sebelum menolak koneksi.

Apakah aman mengekspos RDP langsung di internet publik?

Tidak. Mengekspos RDP secara langsung pada port 3389 ke internet mengundang serangan brute-force otomatis, kampanye pengiriman ransomware (RDP adalah vektor akses awal terkemuka untuk ransomware), dan eksploitasi kerentanan yang belum dipatch. Selalu tempatkan RDP di belakang VPN, batasi akses berdasarkan IP, ubah port default, dan terapkan NLA serta kebijakan penguncian akun sebagai baseline minimum.

15%

Hemat 15% di Semua Layanan Hosting

Uji kemampuanmu dan dapatkan Diskon pada paket hosting apa saja

Gunakan kode:

Skills
Memulai