Telnet — masofaviy terminal sessiyasini tarmoq orqali uzatish uchun yaratilgan eski protokol. U foydalanuvchi klaviatura kiritishi va terminal chiqishini matnli oqim sifatida uzatadi.
Telnet odatda TCP 23-portda ishlaydi. Oddiy Telnet sessiyasida login, parol va buyruqlar shifrlanmaydi. Shu sababli zamonaviy masofaviy administratorlikda uning o‘rnini SSH egallagan.
Telnet tarixan turli terminal qurilmalari va operatsion tizimlarni yagona tarmoq protokoli orqali bog‘lashda muhim rol o‘ynagan.
Network Virtual Terminal
Turli eski terminal qurilmalari belgilar, satr yakuni va boshqaruv kodlarini turlicha talqin qilgan.
Telnet Network Virtual Terminal modelini taqdim etadi. Har ikki tomon o‘z lokal terminal formatini NVT formatiga o‘giradi.
NVTning asosiy xususiyatlari:
- 7 bitli ASCIIga tayangan matn;
- standart control characterlar;
- carriage return va line feed qoidalari;
- terminal optionlarini kelishish;
- ikki tomonlama bayt oqimi.
Bu model bir turdagi terminalni boshqa tizimga ulashni soddalashtirgan.
Telnet sessiyasi
Client serverga TCP ulanish ochadi. Keyin server login prompt yuborishi mumkin.
login: farrukh
password: ********
Welcome
$
Barcha belgilar, jumladan parol, tarmoqda oddiy ko‘rinishda uzatilishi mumkin.
Trafikni packet capture qilgan shaxs:
ni o‘qishi mumkin.
IAC buyruqlari
Telnet oddiy matn bilan protokol boshqaruvini ajratish uchun IAC baytidan foydalanadi. IAC qiymati 255.
Asosiy kelishuv buyruqlari:
| Buyruq | Mazmuni |
|---|---|
WILL |
Tomon optionni bajarishga tayyor |
WONT |
Tomon optionni bajarmaydi |
DO |
Qarshi tomondan optionni bajarishni so‘rash |
DONT |
Optionni bajarmaslikni so‘rash |
SB |
Subnegotiation boshlanishi |
SE |
Subnegotiation tugashi |
Telnet client va server terminal xatti-harakatlarini shu buyruqlar bilan kelishadi.
Telnet optionlari
Keng tarqalgan optionlar:
- Echo;
- Suppress Go Ahead;
- Terminal Type;
- Window Size;
- Binary Transmission;
- Environment Variables;
- Linemode;
- Authentication;
- Encryption.
Oddiy Telnet implementatsiyasi barcha optionlarni qo‘llashi shart emas.
Echo
Server yoki client kiritilgan belgini ekranga qaytarishini belgilaydi. Parol kiritilganda echo o‘chiriladi.
Terminal type
Client xterm, vt100 yoki boshqa terminal turini bildiradi. Server ekranni boshqarish kodlarini mos yuboradi.
Window size
Client terminal oynasining satr va ustun sonini serverga bildiradi.
Character mode va line mode
Character mode holatida har bosilgan belgi serverga darhol yuborilishi mumkin.
Line mode holatida client satrni lokal tahrirlaydi va Enter bosilganda serverga yuboradi.
Character mode interaktiv dastur uchun mos, lekin tarmoq kechikishi yuqori bo‘lsa har belgi uchun sezilarli delay bo‘lishi mumkin.
Telnet xavfsizligi
Standart Telnetning asosiy muammolari:
- trafik shifrlanmaydi;
- serverni kriptografik tekshirish yo‘q;
- parol ochiq uzatiladi;
- man-in-the-middlega qarshi himoya yo‘q;
- sessiya mazmuni o‘zgartirilishi mumkin;
- eski qurilmalarda zaif login tizimi bo‘lishi mumkin.
Telnet faqat to‘liq ishonchli va izolyatsiyalangan boshqaruv tarmog‘ida vaqtinchalik qo‘llanishi mumkin.
SSH bilan farqi
| Jihat | Telnet | SSH |
|---|---|---|
| Shifrlash | Yo‘q | Bor |
| Server identifikatsiyasi | Yo‘q | Host key |
| Public key login | Standart emas | Bor |
| Port forwarding | Yo‘q | Bor |
| Fayl uzatish | Alohida protokol kerak | SFTP va SCP |
| Odatdagi port | 23 | 22 |
| Zamonaviy administratorlik | Tavsiya etilmaydi | Standart yechim |
SSH masofaviy terminal uchun xavfsiz va kengaytirilgan protokol hisoblanadi.
Eski qurilmalar
Telnet hali ham quyidagi joylarda uchrashi mumkin:
- eski router va switch;
- sanoat controlleri;
- laboratoriya uskunasi;
- serial-to-IP adapter;
- eski printer;
- embedded qurilma;
- yopiq telekommunikatsiya tizimi.
Bunday qurilma yangilanmasa:
- alohida management VLAN;
- jump host;
- ACL;
- IP allowlist;
- internetdan ajratish;
- session monitoring;
- read-only access
qo‘llanadi.
Telnet clientni port tekshirishda ishlatish
Telnet dasturi boshqa matnli TCP xizmatga oddiy ulanish ochish uchun ishlatilishi mumkin.
Misol:
telnet mail.example.uz 25
Bu SMTP server bannerini ko‘rishga yordam beradi.
Yoki:
telnet server.example.uz 80
HTTP portga qo‘lda so‘rov yuborish mumkin.
Bu holatda Telnet protokoli emas, telnet client dasturi oddiy TCP terminal sifatida ishlatilmoqda.
Port ochiqligini tekshirish
Telnet client ulanish natijasi quyidagicha talqin qilinadi:
- ulanish ochildi — TCP handshake muvaffaqiyatli;
- connection refused — hostga yetildi, lekin portda xizmat yo‘q yoki faol rad etildi;
- timeout — firewall, routing yoki javobsiz host;
- name resolution error — DNS muammosi.
TCP ulanish ochilishi yuqori qatlam xizmati to‘g‘ri ishlayotganini to‘liq isbotlamaydi.
TLS xizmatlarni tekshirish
HTTPS, SMTPS yoki IMAPS kabi TLS talab qiladigan xizmatga oddiy Telnet bilan ulanilsa, shifrlangan handshake bajarilmaydi.
Bunday xizmatlar uchun:
openssl s_client
yoki protokolga mos diagnostika vositasi ishlatiladi.
STARTTLS protokollarda dastlab matnli buyruq yuborib, keyin TLSga o‘tish talab qilinadi. Oddiy Telnet client buni avtomatik bajarmaydi.
Telnet va serial console
Serial console kabel orqali qurilmaning lokal terminal portiga ulanadi. Telnet esa TCP tarmog‘i orqali terminal oqimini uzatadi.
Serial-to-IP server fizik serial portni Telnetga o‘xshash tarmoq sessiyasi orqali taqdim etishi mumkin.
Raw TCP, Telnet optionlari va serial control signallari qurilmaga qarab farq qiladi.
Telnet serverni o‘chirish
Zamonaviy tizimda Telnet server kerak bo‘lmasa:
- service o‘chiriladi;
- paket olib tashlanadi;
- TCP 23-port firewall bilan yopiladi;
- SSH yoqiladi;
- eski credentiallar almashtiriladi;
- audit log tekshiriladi.
Faqat portni boshqa raqamga ko‘chirish xavfsizlik muammosini bartaraf etmaydi.
Honeypot va tadqiqot
Telnet protokoli IoT botnetlari tomonidan ko‘p skan qilingan. Zaif default parolli qurilmalar Telnet orqali egallangan holatlar keng tarqalgan.
Xavfsizlik tadqiqotida Telnet honeypot:
haqida ma’lumot yig‘ishi mumkin.
Honeypot real tarmoqdan izolyatsiya qilinadi.
Diagnostika
Telnet sessiyasi ishlamasa:
- TCP 23-port;
- service holati;
- ACL;
- terminal type;
- echo option;
- line ending;
- username va parol;
- account lock;
- management VLAN;
- NAT;
- server log
tekshiriladi.
Terminalda belgilar ikki marta chiqsa, echo client va serverda bir vaqtda yoqilgan bo‘lishi mumkin.
Bog‘liq tushunchalar
Remote terminal, Network Virtual Terminal, TCP, Port 23, SSH, Terminal type, IAC, Character mode, Line mode, Serial console