Kirish Ro'yxatdan o'tish
Berkeley r-commands nima va qanday ishlaydi: rsh, rlogin, rexec farqlari

Berkeley r-commands nima va qanday ishlaydi: rsh, rlogin, rexec farqlari

Berkeley r-commands nima va qanday ishlashi, rsh/rlogin/rexec farqlari hamda ruxsat (hosts.equiv, .rhosts) qanday tekshirilishini bilib oling.

Berkeley r-commands nima?

Berkeley r-commands — klassik Unix oilasidagi masofaviy boshqaruv buyruqlari to‘plami bo‘lib, uzoqdagi mashinada foydalanuvchi nomi va (ko‘pincha) parol ishlatmasdan buyruq bajarishga mo‘ljallangan. Ular 1980-yillarda BSD muhitida keng tarqalgan va “r-“ prefixli amaliyotlar sifatida tanilgan.

Ushbu buyruqlar odatda rsh (remote shell), rlogin (remote login) va rexec (remote execution) kabi komponentlarni o‘z ichiga oladi. Muhim farq: rsh/rlogin “ishonchga asoslangan” ulanishni ishlatadi, rexec esa ruxsatni tekshirish uchun alohida mexanizmdan foydalanadi.

Qaysi buyruqlar kiradi va ular nimalarga xizmat qiladi?

Ko‘plab manbalarda “r-commands” deganda bir xil umumiy g‘oya nazarda tutiladi: boshqa hostda buyruqni tez va yengil bajarish. Amalda esa har bir buyruqning vazifasi turlicha.

  • rsh: uzoqdagi hostda berilgan buyruqni bajaradi (interaktiv shell emas, odatda bitta/cheklangan buyruqlar uchun).
  • rlogin: uzoq hostga interaktiv tarzda “login” qiladi.
  • rexec: masofada buyruq bajaradi, bunda ruxsat tekshiruvini alohida yo‘l bilan amalga oshiradi.
  • rwho: tarmoqdagi boshqa hostlar holati haqida minimal “kim ishlayapti” turidagi ma’lumotlarni tarqatishga xizmat qiladi.

Qaysi portlar ishlatilishi operatsion tizim konfiguratsiyasiga bog‘liq, lekin r-commands odatda TCP/UDP orqali maxsus xizmatlarga tayanadi. Shuning uchun ularni ishlatishdan oldin sizning tizimingizda qaysi xizmatlar yoqilganini tekshirish kerak (masalan, inetd/xinetd orqali).

Tarix va kontekst: nega paydo bo‘lgan va nima uchun eskirib qoldi?

Paydo bo‘lishi

Berkeley r-commands BSD (Berkeley Software Distribution) avlod Unixlarida 1980-yillarda ommalashgan. O‘sha davr tarmoqlarida infratuzilma ishonchliroq deb qabul qilingan: ichki LANda tez ulanish, foydalanuvchini qayta autentifikatsiya qilmasdan ishlash talab qilingan.

Shu sababli bu buyruqlar “hostga ishonish” konsepsiyasiga tayangan: ruxsat odatda server tomonda oldindan belgilangan ishonch ro‘yxatlari orqali tekshirilgan.

Keyin nima almashtirdi?

R-commands xavfsizlik jihatidan zaif deb baholanadi, chunki klassik konfiguratsiyalarda autentifikatsiya va ma’lumotlar uzatish modern kriptografiya darajasiga mos emas. NAT, ochiq internet, kompromat xavfi oshgani sari bu texnologiya o‘rnini TLS/SSH kabi zamonaviy yechimlar egalladi.

SSH (Secure Shell) amaliyotda eng ko‘p almashtirgan: u masofaviy buyruq va interaktiv loginni kriptografiya orqali himoyalaydi hamda zamonaviy autentifikatsiya usullarini qo‘llaydi.

Is war: ishlash mexanizmi qadam-baqadam (rsh/rlogin misolida)

Quyida r-commandsning klassik “ishonchga asoslangan” modelini rsh/rlogin kontekstida ko‘rib chiqamiz. Aniqlik uchun: r-commandsning aynan qanday autentifikatsiya qilinishi tizim konfiguratsiyasiga bog‘liq, lekin umumiy oqim quyidagicha bo‘ladi.

  1. Ulanish so‘rovi yuboriladi. Klient uzoqdagi hostga ulanish uchun r-commands xizmatiga so‘rov chiqaradi. Bu odatda inetd yoki shunga o‘xshash super-server orqali ishlaydi.
  2. Foydalanuvchi va manba host identifikatsiyasi olinadi. Server tomonda klientning TCP sessiya konteksti va so‘rovdagi foydalanuvchi nomi ko‘rib chiqiladi.
  3. Ishonch ro‘yxatlari orqali ruxsat tekshiriladi. Eng muhim bosqich — server “qaysi manba hostdan qaysi foydalanuvchi kelganda ruxsat bor?” degan savolga javob izlaydi. Bu odatda hosts.equiv va .rhosts kabi fayllar bilan bog‘liq modeldir (konfiguratsiyaga qarab nomlar/joylashuv farq qilishi mumkin).
  4. Ruxsat berilsa buyruq bajariladi (rsh) yoki interaktiv sessiya ochiladi (rlogin). Ruxsatdan keyin server klient nomidan buyruq bajaradi yoki shell sessiya beradi.
  5. Rad etilsa ulanish to‘xtatiladi. Ishonch tekshiruvi muvaffaqiyatsiz bo‘lsa, odatda ulanish rad etiladi yoki cheklangan xatti-harakatga o‘tadi.

Bu modelning o‘zagini “ishonch ro‘yxati” tashkil etadi. Shuning uchun r-commands aynan qaysi fayllar va qanday qoidalar asosida ruxsat berishi tizim xavfsizligida hal qiluvchi omil bo‘ladi.

rexec qanday farq qiladi?

rexec odatda masofada buyruq bajarish bilan birga ruxsat tekshiruviga alohida urg‘u beradi. Klassik modelda rsh/rlogin ko‘proq “hostga ishonish” bilan ishlagan bo‘lsa, rexec ruxsatni tekshirishning boshqa yo‘llaridan foydalanadi.

Shu sababli bir xil tarmoqda ham rexec va rsh/rlogin konfiguratsiyasi farq qilishi mumkin: server tarafdagi ruxsat qoidalari va ruxsat rad etilganda xatti-harakat turlicha bo‘ladi.

r-commandsni amaliy sozlash: nimalarni tekshirish kerak?

Quyidagi amaliy ro‘yxat “ishlashini ta’minlash”dan ko‘ra ko‘proq “nima sababdan ishlamasligi yoki xavfli bo‘lib qolishi”ga yo‘naltirilgan. r-commands klassik bo‘lgani uchun ko‘p tizimlarda ularni ishlatish sukut bo‘yicha cheklangan.

1) Xizmat yoqilganini aniqlang

  • Masofaviy xizmatlar odatda inetd yoki xinetd orqali ishga tushadi. Ularning konfiguratsiyasida tegishli r-commands xizmatlari “yoqilgan” bo‘lishi kerak.
  • Server loglarini tekshiring: r-commands autentifikatsiya rad etilganda aniq sabab ko‘pincha logda ko‘rsatiladi.

2) Ishonch ro‘yxatlarini to‘g‘ri shakllantiring

  • hosts.equiv va .rhosts kabi fayllar klassik modelda asosiy rol o‘ynaydi. Server tomon faqat “aniq mos kelish” bo‘lsa ruxsat berilishi mumkin.
  • Manba host identifikatsiyasi (IP/hostname) mos kelmasa, ulanish rad etiladi yoki kerakli buyruq bajarilmaydi.

3) Firewallda portlar ochiqligini tekshiring

  • r-commands odatda ma’lum xizmatlar bilan bog‘langan portlardan foydalanadi. Tizimingizdagi konfiguratsiyada qaysi portlar ishlatilishini aniqlang.
  • Ulanish TCP/UDP qaysi turda bo‘lishiga qarab firewall qoidalari farq qiladi.

4) Tipik xatolar

  1. Hostname mos kelmasligi. .rhosts ichida ko‘rsatilgan hostname server ko‘rgan qiymatga to‘g‘ri kelmasa ruxsat berilmaydi.
  2. Ishonch fayllari ruxsat huquqlari. Ba’zi tizimlarda fayl huquqlari noto‘g‘ri bo‘lsa ular e’tiborsiz qoldiriladi.
  3. xinetd/inetd qayta yuklanmagan. Konfiguratsiyani o‘zgartirgandan keyin servis qayta ishga tushmagan bo‘lishi mumkin.
  4. Netmask/NAT muammolari. Tarmoq topologiyasi o‘zgargan bo‘lsa manba host identifikatsiyasi qoidalar bilan mos tushmasligi mumkin.

Taqqoslash: r-commands va SSH (amaliy tanlov mezoni)

Real muhitda masofaviy boshqaruv uchun odatda SSH tanlanadi. Quyidagi jadval qaysi farqlar “nega almashtirish” qarorida yordam berishini ko‘rsatadi.

Ko‘rsatkich Berkeley r-commands SSH
Autentifikatsiya modeli Ko‘pincha hostga ishonishga asoslangan ro‘yxatlar (masalan, .rhosts/hosts.equiv) Kalitlar yoki parol orqali autentifikatsiya, sessiya himoyasi
Ma’lumot uzatish Klassik konfiguratsiyalarda kriptografiya cheklangan bo‘lishi mumkin Shifrlash odatiy bo‘lib, yo‘lda himoya mavjud
Tarmoq o‘zgaruvchanligi (NAT/LAN) Manba identifikatsiya mos kelmasligi tez uchraydi Odatda marshrutizatsiya o‘zgarishlariga mosroq ishlaydi
Operatsion xavfsizlik Ishonch ro‘yxatlari noto‘g‘ri bo‘lsa risk oshadi Audit, kalit rotatsiyasi va cheklovlar bilan boshqarish osonroq

FAQ

rsh bilan rlogin o‘rtasida asosiy farq nimada?

rsh odatda bir martalik buyruqni masofada bajarish uchun ishlatiladi; rlogin esa uzoq hostga interaktiv sessiya ochadi. Amaliy farq shundaki, rlogin “shell” ishlashiga yaqinroq, rsh esa komandalarni jo‘natib yakunlanishga moyil.

r-commandsning “ishonch” modeli qanday ishlaydi?

Server tomonda manba host va foydalanuvchi nomi kombinatsiyasi ruxsat ro‘yxatlariga mos kelishi kerak. Mos kelmasa ulanganingizga qaramay sessiya ochilmasligi yoki buyruq bajarilmasligi mumkin.

r-commands ishlamayapti: eng tezkor tekshiruvlar nimalar?

Avval xizmat yoqilganini (inetd/xinetd konfiguratsiyasi), keyin server loglarini ko‘ring. So‘ng .rhosts/hosts.equiv qoidalarida ko‘rsatilgan manba hostname server ko‘radigan qiymatga mos kelishini tekshiring. Oxirida firewall portlari ochiqligini tasdiqlang.

rexec rsh/rlogin o‘rnini bosa oladimi?

Amalda qisman mos kelishi mumkin, chunki u ham masofada buyruq bajarishga qaratilgan. Biroq ruxsat tekshiruvining modeli farq qilgani uchun, konfiguratsiya va kutilgan xatti-harakat (qachon ruxsat beradi yoki rad etadi) bir xil bo‘lmasligi mumkin.

Bugungi sharoitda r-commandsdan foydalanish xavfsizmi?

Ko‘p zamonaviy threat modelida bu texnologiya tavsiya etilmaydi: klassik “ishonch ro‘yxati” yondashuvi va kriptografik himoya darajasi modern talablar bilan mos kelmasligi mumkin. Agar tarixiy muhit bo‘lsa ham, odatda SSH bilan almashtirish yo‘li ko‘proq qo‘l keladi.

r-commandsni faqat ichki tarmoqda ishlatish yetarlimi?

Ichki tarmoqda ham noto‘g‘ri konfiguratsiya (masalan, .rhosts’da keng ruxsat berish), hostname mos kelmasligi va keyinchalik tarmoq segmentlari aralashib ketishi riskni oshirishi mumkin. Qaror qabul qilishdan oldin server loglari, aniq qoidalar va ruxsat berish shartlarini tekshirib chiqing.

Xulosa

Berkeley r-commands — Unix tizimlarida masofaviy buyruq bajarish va login uchun ishlab chiqilgan klassik vositalar bo‘lib, ruxsatni ko‘pincha hostga “ishonch” modeli orqali tekshiradi. Bu yondashuv 1980-yillar tarmoq sharoitida qulay bo‘lgan, ammo bugungi xavfsizlik talablari bilan ko‘p holatda mos kelmaydi.

Amaliy vazifangiz masofaviy boshqaruv bo‘lsa, r-commands ishlash mexanizmini tushunib, aynan qaysi qoidalar ruxsat berishini aniqlang; imkon bo‘lsa esa SSH kabi zamonaviy yechimlarga o‘tish eng to‘g‘ri yo‘l hisoblanadi.