Berkeley r-komutları, bir Unix sisteminin kullanıcılarının TCP/IP bilgisayar ağı üzerinden başka bir Unix bilgisayarında oturum açmasını veya komutlar vermesini sağlamak için tasarlanmış bir bilgisayar programları paketidir.[1] Berkeley r-komutları, 1982'de Berkeley'deki Kaliforniya Üniversitesi'ndeki Computer Systems Research Group (CSRG) tarafından, TCP/IP'nin (İnternetin protokol yığını) erken uygulanmasına dayanarak geliştirildi.[2]

Pratik Bilgiler Geliştirici(ler), İlk yayınlanma ...
Berkeley r-commands
Geliştirici(ler)Kaliforniya Üniversitesi (Berkeley)'da Computer Systems Research Group
İlk yayınlanmaHaziran 1981 (43 yıl önce) (1981-06)
İşletim sistemiUnix ve Unix benzeri
TürKomut Yazılım paketi
LisansBSD lisansı
Kapat

 

CSRG, r-komutlarını kendilerinin geliştirdiği bir Unix işletim sistemi olan Berkeley Software Distribution'a (BSD) dahil etti. R-komutları BSD v4.1'de yayınlandı.[2] Paket içerisindeki programlar şunlardır: ​rcp​, ​rexec​, ​rlogin​, ​rsh​, ​rstat​,​ruptime​ve ​rwho​.[3]

Berkeley r-komutları önemli bir yenilikti ve Unix işletim sistemleri için fiili standartlar haline geldi.[4][5] Geniş çapta kitlelerin internete olan adaptasyonuyla birlikte, var olan güvenlik açıkları bir sorun haline geldi.[6] 1995'te geliştirilmesi başlanan güvenli kabuk (secure shell) protokolleri ve uygulamaları zamanla r-komutlarının ve ​telnet​'in yerini aldı.[7]

Doğrulama

Daha fazla bilgi Hizmet, Bağlantı Noktası (Port) ...
Genel Bakış
Hizmet Bağlantı Noktası

(Port)

Taşıma Katmanı

(Transport Layer)

Referanslar
İstemci

(Client)

Arka plan Uygulaması

(Daemon)

​rcp​ ​rcpd​ 514 TCP
​rexec​ ​rexecd​ 512 TCP [8]
​rlogin​ ​rlogind​ 513 TCP [9]
​rsh​ ​rshd​ 514 TCP
​rstat​ ​rstatd​ UDP
​ruptime​ ​rwhod​ 513 UDP [10]
​rwho​
Kapat

Orijinal Berkeley r-komutları paketi ​rlogin​komutunun dışında rcp (remote copy - uzaktan kopyalama) ve ​rsh​ (remote shell - uzak kabuk) komutlarını da içerir. Bunlar, hosts.equiv ve .rhosts erişim kontrol şemasını paylaşırlar (farklı bir daemon'a bağlanmış olsalar da, rshd).

Komutlar

rlogin

​rlogin​, 513'üncü TCP portunu kullanarak, kullanıcının ağ üzerinden sunucuya bağlanmasını sağlar.

​rlogin​ayrıca yazılım tarafından kullanılan uygulama katmanı protokolünün adıdır ve TCP/IP protokol paketinin bir parçasıdır. Kimliği doğrulanmış kullanıcılar, bilgisayarda fiziksel olarak varmış gibi hareket edebilirler. İçinde tanımlandığı RFC 1282, şunu belirtir: "​rlogin​özelliği; fiziksel kullanımdaki akıcılıkta, uzaktan kullanılabilen bir sanal terminal sağlar." ​rlogin​uzak ana bilgisayarda bir deamon (arka planda çalışan program) olan ​rlogind​(remote-login-deamon) ile iletişim kurar. ​rlogin​, ​telnet​komutuna benzer, ancak özelleştirilebilir değildir ve yalnızca Unix benzeri ana bilgisayarlara bağlanabilir.

rsh

​rsh​, oturum açma prosedürü olmadan uzak bilgisayarda bir kabuk açar. Bağlandıktan sonra kullanıcı, kabuğun komut satırı arayüzü aracılığıyla uzak bilgisayardaki komutları çalıştırabilir. ​rsh​, girdileri ve çıktıları standart akışlar üzerinden geçirir ve standart çıktıyı kullanıcının konsoluna gönderir. Ağ üzerinden, standart girdiler (stdin) ve standart çıktılar (stdout) 514'üncü TCP portu üzerinden akarken; standart hatalar (stderr), ​rsh​arka plan programının (​rshd​) açtığı farklı bir TCP portundan akar.[11]

rexec

​rexec​'de ​rsh​gibi, kullanıcının uzak bir bilgisayarda kabuk komutlarını çalıştırmasına olanak tanır. Ancak, ​rsh​sunucusundan farklı olarak, ​rexec​sunucusu (​rexecd​) oturum açma gerektirir: ağ soketinden kullanıcı adı ve parolayı (şifrelenmemiş şekilde) okuyarak kullanıcıların kimliğini doğrular.[12] ​rexec​, 512'nci TCP portunu kullanır.

rcp

rcp bir dosyayı veya dizini yerel sistemden uzak bir sisteme, uzak bir sistemden yerel sisteme veya bir uzak sistemden diğerine kopyalayabilir.[13] ​cp​ve ​rcp​'nin komut satırı argümanları benzerdir; ancak ​rcp​'de, uzak dosyalarda, uzak sistemin adı ön ek (prefixed) olarak bulunur:

rcp file.txt subdomain.domain:~/home/foo/file.txt

Unix kopyalama komutu olan ​cp​'de olduğu gibi, ​rcp​komutu da hedefte aynı isimde var olan bir dosyanın üzerine yazar; ​cp​'nin aksine, hedef dosyanın üzerine yazmadan önce kullanıcıyı uyarmak için hiçbir mekanizma sağlamaz.[13] ​rsh​ gibi, ​rcp​ de 514 numaralı TCP portunu kullanır.[14]

rwho

Unix sistemlerde kullanılan ​who​komutu kullanıcıları nasıl listeliyorsa, ​rwho​komutu da aynı şekilde çok kullanıcılı Unix sisteminde giriş yapmış olan bütün kullanıcıları listeler.[15] ​rwho​'un arka plan programı (deamon) olan ​rwhod​, yerel ağdaki Unix sistemlerinin durumu hakkındaki bilgileri saklamak amacıyla veritabanı oluşturur. ​rwod​ve oluşturmuş olduğu veritabanı, ​ruptime​programı tarafından da kullanılır.[16]

rstat

ruptime

​uptime​komutunun bir Unix sisteminin son yeniden başlatmadan bu yana ne kadar süredir çalıştığını göstermesi gibi, ​ruptime​ komutu da yerel ağdaki tüm bilgisayarlardan bir durum raporu ister. Daha sonra çalışma süresi raporunu döndürür. Bir bilgisayar cevap göderirken zaman aşımına uğrarsa; ​ruptime​, sistemin kapalı olduğunu bildirir.[17] Bu bilgi, aynı zamanda ​rwho​komutu tarafından da kullanılan ​rwhod​arka plan programı tarafından da izlenir ve saklanır.[16]

Güvenlik

Kullanıcı kimlik doğrulamasını içeren bu r-komutları (​rcp​, ​rexec​, ​rlogin​ve ​rsh​), bazı ortak güvenlik açıklarına sahiptir:

  • Şifreler de dahil olmak üzere tüm bilgiler şifrelenmemiş olarak iletilir (ele geçirmeye karşı savunmasız hale getirir).
  • .rlogin (veya .rhosts) dosyasının kötüye kullanılması kolaydır. Şifre olmadan oturum açmaya izin verecek şekilde tasarlanmıştır, ancak uzak kullanıcı adlarına, ana bilgisayar adlarına ve IP adreslerine güvenmeleri istismar edilebilir. Bu nedenle, birçok kurumsal sistem yöneticisi .rhosts dosyalarını yasaklar ve suçlular için ağlarını aktif olarak inceler.
  • Protokol port numarası ve sunucu alan adı gibi bazı önemli bilgileri ​rlogin​ istemci uygulaması tarafından sağlar. İstemci uygulamasındaki hatalı bir durum sunucu tarafından algılanamayabilir (bu hata kasıtlı olarak da sağlanabilir) ve bu durumda ​rlogin​protokolü, kimlik doğrulama aşamasında hatalı davranıp istemciye erişim hakkı tanıyabilir.
  • Çoğu kullanıcının ana dizinleri ağ dosya sistemine (NFS - Network File System) bağlı olduğundan, sahte bir .rhosts dosyası ve ​rlogin​protokolü sistemi saldırılara açık hale getirir - bu da demektir ki, ağ dosya sistemi yazılımının yapacağı bir hata, sistemi ​rlogin​saldırısına karşı savunmasız bırakır.[18]

Bu sorunlar nedeniyle, r-komutları göreceli olarak kullanılmaz hale geldi (birçok Unix ve Linux dağıtımları artık varsayılan olarak bunları içermiyor). Daha önce ​rlogin​ve ​telnet​'e dayanan birçok ağ, bunların yerini ​ssh​ ve onun rlogin-eşdeğeri olan ​slogin​ile değiştirdi.[19][20]

Ayrıca bakınız

Kaynakça

Konuyla ilgili yayınlar

Dış bağlantılar

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.