Pada masa awal komputasi, satu komputer besar dilayani oleh puluhan terminal — perangkat berisi papan ketik dan layar, tanpa kemampuan mengolah data sendiri. Semua perhitungan terjadi di komputer pusat; terminal hanya mengirim tombol yang ditekan dan menampilkan balasan. Susunan ini bekerja dengan baik selama kabelnya cukup panjang, artinya selama pengguna berada di gedung yang sama.
Pertanyaan berikutnya muncul secara alami: bagaimana kalau terminalnya berada di kota lain? Jawaban pertama atas pertanyaan itu bernama Telnet, dan jawaban itu diberikan pada tahun 1969. Telnet adalah protokol yang memungkinkan sebuah komputer mengakses dan mengendalikan komputer lain dari jarak jauh melalui jaringan, seolah-olah Anda sedang duduk di depan mesin tersebut.
Menariknya, protokol berusia 57 tahun ini masih terpasang di komputer Anda hari ini — meskipun hampir tidak ada lagi yang memakainya untuk tujuan aslinya.
Telnet Adalah Protokol Akses Jarak Jauh Berbasis Teks
Telnet adalah protokol jaringan yang memungkinkan satu perangkat masuk dan menjalankan perintah di perangkat lain melalui jaringan TCP/IP. Nama "Telnet" dipakai Stephen Crocker dalam sebuah makalah tahun 1972 sebagai kependekan dari telecommunications network. Tafsir lain yang beredar menyebutnya Teletype Over Network Protocol, meskipun spesifikasi resminya sendiri tidak pernah memperlakukan kata itu sebagai akronim. Jadi kalau Anda menemui dua versi kepanjangan yang berbeda, keduanya sama-sama beredar dan tidak ada yang benar-benar resmi.
Telnet bekerja dengan model client-server (klien–server). Perangkat yang ingin mengakses menjalankan telnet client, sedangkan perangkat yang diakses menjalankan telnet server — sebuah layanan yang menunggu koneksi masuk. Secara baku, layanan itu menunggu di port 23, salah satu port jaringan yang sudah dipesan sejak awal internet. Pada perangkat rumahan dan IoT, varian port 2323 juga sering dipakai.
Diagram arsitektur klien-server Telnet: kotak Klien Telnet dan Server Telnet terhubung lewat Port 23.
Satu hal perlu Anda pisahkan sejak awal, karena inilah sumber kebingungan terbesar soal telnet:
- Protokol Telnet: aturan komunikasi yang dibakukan lewat RFC 854 dan berjalan di port 23, lengkap dengan mekanisme terminal virtual dan negosiasi kemampuan.
- Perintah
telnet: program klien di baris perintah. Ia memang lahir untuk berbicara dengan protokol di atas, tetapi bisa diarahkan ke port berapa pun — dan justru di situlah pemakaian terbesarnya hari ini.
Ketika seorang administrator menjalankan telnet mail.contoh.com 25, ia sama sekali tidak sedang memakai protokol Telnet. Ia memakai program telnet sebagai jendela mentah menuju port 25, yang isinya protokol SMTP.
Umur Telnet: Dari ARPANET 1969 sampai RFC 854
Telnet lahir bersama ARPANET pada 1969, jauh sebelum ada yang menyebutnya internet. Pada awalnya ia bahkan tidak punya spesifikasi tertulis yang utuh — ia tumbuh sebagai kesepakatan praktis antar segelintir laboratorium yang tersambung. Baru setelah lebih dari satu dekade perbaikan, protokol ini dibakukan lewat RFC 854 dan RFC 855 pada Mei 1983, dan diangkat menjadi Internet Standard 8.
Angka tahun itu menjelaskan hampir semua kelemahan telnet yang akan kita bahas nanti. Pada 1983, jaringan komputer masih berupa lingkungan tertutup berisi universitas dan lembaga riset yang para pengelolanya saling mengenal, dan menyadap lalu lintasnya membutuhkan akses fisik ke kabel yang dijaga ketat. Dalam konteks itu, mengirim kata sandi sebagai teks biasa bukan keputusan ceroboh — ancamannya memang belum ada. Telnet dirancang dengan asumsi jaringan yang bisa dipercaya, dan asumsi itulah yang kemudian runtuh.
Cara Kerja Telnet: Terminal Virtual dan Negosiasi Opsi
RFC 854 membangun protokol ini di atas tiga gagasan. Memahami ketiganya membuat cara kerja telnet jauh lebih masuk akal daripada sekadar menghafal "klien mengirim perintah, server membalas".
Pertama, Network Virtual Terminal (NVT). Pada 1983, terminal buatan tiap pabrikan punya aturannya sendiri: kode tombol berbeda, cara berpindah baris berbeda, cara menghapus karakter berbeda. Telnet memecahkan ini dengan menciptakan terminal imajiner bernama NVT — sebuah bi-directional character device (perangkat karakter dua arah) yang punya bagian "papan ketik" untuk mengirim data dan bagian "pencetak" untuk menampilkan data masuk. Klien menerjemahkan terminal aslinya ke NVT, server menerjemahkan NVT ke lingkungannya sendiri. Keduanya tidak pernah perlu tahu perangkat sebenarnya di seberang sana.
Kedua, negosiasi opsi. NVT sengaja dibuat sangat sederhana. Kemampuan di luar itu — misalnya siapa yang menampilkan ulang karakter yang diketik, atau berapa ukuran jendela terminal — harus disepakati dulu oleh kedua pihak. Kesepakatan ini dikirim di dalam aliran data yang sama, ditandai dengan byte khusus:
- IAC (Interpret As Command, "baca ini sebagai perintah") bernilai 255. Byte inilah yang memberi tahu pihak lawan bahwa yang menyusul bukan teks, melainkan perintah.
- WILL (251): "saya bersedia menjalankan opsi ini."
- WON'T (252): "saya tidak akan menjalankannya."
- DO (253): "silakan Anda jalankan opsi ini."
- DON'T (254): "jangan jalankan opsi itu."
Polanya berpasangan: WILL dan WON'T adalah penawaran, DO dan DON'T adalah permintaan. Masing-masing bisa diterima atau ditolak, sehingga dua mesin dengan kemampuan berbeda tetap bisa menemukan titik temu.
Ketiga, simetri. Protokol memperlakukan kedua ujung koneksi secara setara. Tidak ada pihak yang secara struktural lebih berkuasa; keduanya bisa menawarkan dan meminta opsi.
Kalau digambarkan, satu sesi telnet kira-kira berjalan seperti ini:
Alur sesi Telnet: koneksi TCP ke port 23, negosiasi opsi IAC, lalu kredensial dikirim sebagai teks polos.
Perhatikan langkah kelima. Kredensial dikirim tanpa penyamaran apa pun, dan begitu pula seluruh perintah setelahnya.
Fungsi Telnet dan Kegunaannya Hari Ini
Fungsi asli telnet adalah login jarak jauh: seorang administrator di satu kota mengelola server di kota lain melalui baris perintah. Fungsi ini praktis sudah mati, digantikan sepenuhnya oleh SSH. Namun program telnet sendiri tidak ikut mati, karena ia menemukan pekerjaan baru.
1. Memastikan sebuah port TCP terbuka. Inilah pemakaian telnet yang paling sering Anda temui hari ini. Ketika sebuah aplikasi gagal terhubung ke basis data atau server email, pertanyaan pertama yang harus dijawab adalah: apakah port tujuannya benar-benar bisa dicapai? Perintah telnet menjawabnya dalam satu baris. Kalau layar berubah menjadi kosong atau muncul teks sambutan dari layanan, port itu terbuka. Kalau muncul Connection refused atau koneksi menggantung lalu gagal, ada yang menghalangi — bisa layanannya mati, bisa firewall.
2. Mengakses perangkat jaringan lama. Sejumlah switch, router, modem, dan perangkat industri keluaran lama hanya menyediakan telnet sebagai antarmuka pengelolaan, karena tidak punya sumber daya untuk menjalankan enkripsi atau firmware-nya tidak pernah diperbarui sejak dirilis.
3. Menguji protokol berbasis teks secara manual. Sejumlah protokol internet lama — SMTP, POP3, HTTP versi awal — berkomunikasi memakai perintah yang bisa diketik manusia. Dengan telnet Anda bisa mengetik perintah protokol itu satu per satu dan membaca balasan mentah dari server. Untuk mendiagnosa masalah pengiriman email, cara ini sering lebih cepat daripada membaca log berlapis.
Ketiga kegunaan di atas punya satu kesamaan: tidak ada yang melibatkan pengiriman kata sandi. Itu bukan kebetulan.
Perbedaan Telnet dan SSH
SSH (Secure Shell) adalah protokol yang mengambil alih peran telnet sebagai alat login jarak jauh. Keduanya sama-sama memberi Anda baris perintah di mesin yang jauh, tetapi cara kerjanya di balik layar berbeda jauh.
| Aspek | Telnet | SSH |
|---|---|---|
| Port baku | 23 | 22 |
| Enkripsi | Tidak ada; seluruh sesi berupa teks polos | Seluruh sesi terenkripsi |
| Tahun dibakukan | 1983 (RFC 854) | 2006 (RFC 4251–4254) |
| Autentikasi | Nama pengguna dan kata sandi | Kata sandi atau pasangan kunci publik–privat |
| Verifikasi identitas server | Tidak ada | Ada, lewat sidik jari kunci host |
| Transfer berkas | Tidak tersedia | Tersedia lewat SCP dan SFTP |
| Status dukungan | Ditinggalkan | Standar industri |
Selisih yang paling sering disebut memang enkripsi. Namun ada perbedaan kedua yang sama pentingnya: verifikasi identitas server. Saat Anda menyambung lewat telnet, tidak ada mekanisme apa pun untuk memastikan bahwa mesin di ujung sana benar-benar mesin yang Anda maksud. Penyerang yang bisa mengarahkan lalu lintas Anda ke mesin miliknya akan menerima kata sandi Anda dengan sukarela. SSH menutup celah ini dengan menyimpan sidik jari kunci setiap server yang pernah Anda kunjungi, lalu memperingatkan Anda dengan keras kalau sidik jari itu berubah.
Karena itu, seluruh penyedia layanan server modern — termasuk saat Anda mengelola sebuah VPS Indonesia — menyediakan akses SSH sebagai pintu masuk baku, bukan telnet. Penjelasan lebih dalam soal cara kerjanya bisa Anda baca di artikel SSH adalah.
Perbandingan Telnet dan SSH: amplop terbuka bergembok terbuka versus amplop tersegel bergembok terkunci.
Sisi Rawan Telnet yang Tidak Bisa Ditambal
Pernyataan "telnet tidak aman karena tidak terenkripsi" benar, tetapi berhenti terlalu cepat. Pertanyaan yang lebih berguna: kenapa masalah ini tidak diselesaikan saja dengan menambahkan enkripsi ke dalam telnet?
Jawabannya ada pada gagasan kedua RFC 854 yang kita bahas tadi. Setiap kemampuan tambahan di telnet berbentuk opsi yang dinegosiasikan — termasuk enkripsi. Masalahnya, negosiasi itu sendiri berlangsung di jalur yang belum terlindungi. Penyerang yang berada di tengah jalur bisa mengubah tawaran WILL menjadi WON'T, sehingga kedua ujung koneksi mengira lawannya memang tidak mendukung enkripsi, lalu dengan patuh melanjutkan sesi dalam bentuk teks polos. Keduanya tidak akan pernah tahu bahwa mereka baru saja diturunkan paksa.
Tiga tahap negosiasi Telnet: permintaan enkripsi, penyerang memutus jalur, lalu sesi berlanjut sebagai teks polos.
Inilah alasan mendasar telnet ditinggalkan, bukan sekadar diperbaiki: keamanan tidak bisa ditempelkan sebagai fitur opsional di atas protokol yang percaya begitu saja pada lawan bicaranya. SSH tidak menambal telnet; ia dirancang ulang dari nol dengan enkripsi sebagai lapisan pertama, bukan lapisan tambahan.
Dampaknya di dunia nyata terukur. Pada 2016, malware Mirai memindai internet mencari perangkat dengan port 23 atau 2323 yang terbuka. Setiap perangkat yang ditemukan dicoba dimasuki memakai daftar berisi 60 kombinasi nama pengguna dan kata sandi bawaan pabrik, seperti admin/admin dan root/root. Ini bukan pembobolan celah keamanan; ini sekadar mengetuk pintu dengan kunci yang dibagikan gratis oleh produsennya. Pada puncaknya, Mirai menguasai sekitar 600.000 perangkat — mayoritas DVR CCTV dan kamera IP — lalu memakainya sebagai botnet penyerang.
Regulator pun sudah bersikap. PCI DSS versi 4.0 requirement 2.2.7 mewajibkan seluruh akses administratif non-konsol dienkripsi dengan kriptografi kuat, dan menyebut telnet secara eksplisit sebagai metode terlarang. Bagi organisasi yang memproses data kartu pembayaran, memakai telnet bukan lagi soal selera teknis, melainkan pelanggaran kepatuhan.
Cara Mengaktifkan Telnet di Windows dan Linux
Telnet Client sebenarnya sudah tersedia di setiap salinan Windows, hanya saja dimatikan secara baku sejak lama. Pesan 'telnet' is not recognized as an internal or external command yang sering muncul bukan berarti berkasnya hilang — fiturnya hanya belum dinyalakan.
Sebelum melangkah, satu catatan penting: Windows Server 2016 dan versi setelahnya tidak lagi menyertakan Telnet Server. Yang bisa Anda aktifkan hanyalah sisi klien. Kalau kebutuhan Anda adalah menerima koneksi masuk, Microsoft mengarahkan ke WinRM atau OpenSSH Server.
Langkah #1: Aktifkan lewat Windows Features
Cara paling ramah untuk pemula. Buka Control Panel, masuk ke Programs, lalu klik Turn Windows features on or off. Pada daftar yang muncul, cari dan centang Telnet Client, kemudian tekan OK. Windows akan memasang komponennya dalam beberapa detik.
Langkah #2: Aktifkan lewat PowerShell
Kalau Anda lebih nyaman dengan baris perintah, buka PowerShell sebagai Administrator dan jalankan:
Enable-WindowsOptionalFeature -Online -FeatureName TelnetClientSelama keluarannya menunjukkan RestartNeeded : False, telnet langsung bisa dipakai tanpa memulai ulang komputer.
Langkah #3: Aktifkan lewat CMD
Alternatif lain memakai DISM dari Command Prompt yang dijalankan sebagai Administrator:
dism /online /Enable-Feature /FeatureName:TelnetClientUntuk panduan bergambar pada Windows versi lama, ikuti cara mengaktifkan fitur Telnet di Windows.
Langkah #4: Pasang di Linux dan macOS
Pada distribusi berbasis Debian dan Ubuntu, paketnya dipasang dengan:
sudo apt update && sudo apt install telnetUntuk keluarga Red Hat seperti Fedora dan AlmaLinux, gunakan sudo dnf install telnet. Pada macOS, telnet sudah dihapus sejak High Sierra dan perlu dipasang lewat Homebrew: brew install telnet.
Perintah Telnet yang Perlu Anda Tahu
Sintaksnya sederhana dan hanya membutuhkan dua informasi:
telnet [alamat_host] [nomor_port]Kalau nomor port tidak Anda tulis, telnet menganggapnya 23. Untuk menguji apakah sebuah server web menerima koneksi HTTPS, misalnya:
telnet www.contoh.com 443Balasan Connected to www.contoh.com menandakan port itu terbuka. Sebaliknya, Could not open connection to the host, on port 443: Connect failed berarti koneksi tidak sampai.
Di sinilah banyak orang terjebak: layar berubah menjadi hitam kosong dan tombol apa pun tidak menghasilkan apa-apa. Itu normal — Anda sudah masuk ke dalam sesi. Untuk keluar, tekan Ctrl + ] sampai muncul prompt telnet>, lalu ketik quit dan tekan Enter.
Beberapa perintah yang tersedia di prompt telnet>:
open [host] [port]: membuka koneksi baru tanpa keluar dari program.close: menutup koneksi berjalan, tetapi tetap berada di prompt.quit: menutup koneksi sekaligus keluar dari program.status: menampilkan ke mana Anda sedang terhubung.set: mengubah pengaturan sesi, misalnyaset localechountuk menampilkan karakter yang Anda ketik.?atauhelp: menampilkan seluruh perintah yang tersedia.
Kalau Anda lebih suka antarmuka berjendela daripada baris perintah, PuTTY mendukung telnet sekaligus SSH dalam satu aplikasi. Aplikasi ini juga menyimpan daftar koneksi, sehingga Anda tidak perlu mengetik ulang alamat perangkat yang sering diakses.
Kapan Telnet Masih Layak Dipakai dan Kapan Harus Diganti
Rekomendasinya bisa dibuat cukup tegas, tanpa perlu bergantung pada perasaan.
Masih layak dipakai dalam tiga keadaan: menguji apakah sebuah port TCP terbuka; mengelola perangkat lama di jaringan lokal terisolasi yang tidak menyediakan pilihan lain; serta menguji protokol berbasis teks secara manual. Ketiganya punya batas yang sama — tidak ada kata sandi yang diketik.
Tidak boleh dipakai dalam dua keadaan, tanpa pengecualian: setiap sesi yang melintasi internet publik, dan setiap sesi yang meminta kredensial. Termasuk perangkat IoT di jaringan rumah Anda, karena satu perangkat terinfeksi sudah cukup untuk membuka jalan ke seluruh jaringan.
Untuk pengujian port, sistem operasi modern sudah menyediakan alat yang lebih baik. Pada Windows 8.1 dan Windows Server 2012 R2 ke atas, PowerShell punya:
Test-NetConnection -ComputerName www.contoh.com -Port 443Perintah ini mengembalikan baris TcpTestSucceeded : True atau False — jawaban yang jelas, tanpa perlu menebak arti layar kosong dan tanpa perlu menghafal cara keluar. Pada Linux dan macOS, padanannya adalah:
nc -zv www.contoh.com 443Perintah telnet sendiri punya tiga batasan saat dipakai sebagai alat diagnosa. Ia hanya bisa menguji TCP, sehingga layanan berbasis UDP seperti DNS dan NTP luput dari pemeriksaan. Ia tidak menyediakan pengaturan batas waktu, sehingga port yang paketnya dibuang diam-diam oleh firewall akan membuat perintah menggantung lama. Dan ia tidak terpasang secara baku di mana pun, sehingga pada mesin yang baru justru butuh langkah tambahan lebih dulu.
Pertanyaan yang Sering Muncul
Telnet menggunakan port berapa?
Port 23 pada protokol TCP. Sebagian perangkat IoT dan perangkat jaringan rumahan memakai port 2323 sebagai varian. Namun perintah telnet sendiri bisa diarahkan ke port berapa pun, dan itulah yang biasanya dilakukan saat menguji konektivitas.
Kenapa muncul pesan 'telnet' is not recognized?
Karena Telnet Client belum diaktifkan. Fitur ini disertakan Windows tetapi dimatikan secara baku demi keamanan. Ikuti salah satu dari empat langkah aktivasi di atas.
Apakah telnet masih dipakai di MikroTik dan router lain? Perangkat MikroTik dan Cisco keluaran terbaru umumnya masih menyediakan telnet, tetapi mematikannya secara baku dan mengarahkan pengelolaan ke SSH. Pada perangkat lawas, telnet kadang menjadi satu-satunya pilihan. Kalau Anda terpaksa memakainya, batasi aksesnya hanya dari alamat IP tertentu di dalam jaringan lokal.
Adakah aplikasi telnet untuk Android? Ada beberapa di Play Store, dan terminal emulator seperti Termux juga menyediakannya lewat paket tambahan. Pertimbangan keamanannya sama persis dengan di komputer: aman untuk menguji port, tidak aman untuk memasukkan kata sandi.
Apa bedanya telnet dengan PuTTY? Telnet adalah protokolnya, PuTTY adalah aplikasinya. PuTTY bisa berbicara dengan telnet, tetapi juga mendukung SSH, koneksi serial, dan raw TCP. Karena itu banyak pencarian "download telnet" berakhir di halaman unduhan PuTTY — yang dicari orang biasanya memang aplikasi kliennya, bukan protokolnya.
Apakah FTP punya masalah yang sama dengan telnet? Ya, dan alasannya serupa. FTP juga lahir di era jaringan tepercaya dan mengirim kredensial sebagai teks polos, sehingga kini digantikan SFTP dan FTPS.
Kesimpulan
Telnet adalah protokol akses jarak jauh berbasis teks yang berjalan di port 23 dan dibakukan lewat RFC 854 pada 1983. Ia ditinggalkan bukan karena ada yang lebih cepat. Penyebabnya lebih mendasar: keamanan tidak bisa ditempelkan sebagai opsi tambahan pada protokol yang mempercayai lawan bicaranya tanpa syarat. SSH menjawab kebutuhan yang sama dengan rancangan yang benar sejak lapisan pertama.
Meski begitu, perintah telnet belum pantas dihapus dari perkakas Anda. Untuk memastikan sebuah port TCP terbuka atau menguji protokol berbasis teks secara manual, ia tetap alat tercepat yang tersedia. Pegang satu aturan sederhana: pakai telnet untuk melihat, jangan pernah untuk masuk.
Semoga artikel ini membantu.




