VNC

VNC (Virtual Network Computing) kendi bilgisayarınızdan (istemci) uzaktaki bir bilgisayarın (sunucu) masaüstünü görüntüleyip, fare ve klavye aracılığı ile eriştiğiniz bilgisayar üzerinde denetim sağlayabileceğiniz grafiksel bir istemci/sunucu yazılımıdır. VNC ile iki bilgisayar arasında kolayca masaüstü paylaşımı sağlanabilir.

VNC klavye ve fare hareketlerini, kullandığı RFB (Remote Frame Buffer) protokolü sayesinde bir bilgisayardan, ağ (veya İnternet) üzerinde bulunan diğer hedef bilgisayara gönderip, diğer bilgisayarda meydana gelen gelişmeleri de görüntüsel olarak geri alır.

RFB (Remote FrameBuffer), grafik arayüzlerine uzaktan erişimi sağlayan basit bir protokoldür, ve “framebuffer” (kare kare) seviyesinde işlediği için X11, Windows, Macintosh (Mac OS X) ve Linux işletim sistemlerinin de dahil olduğu grafik arayüze sahip tüm işletim sistemlerinde kullanılabilmektedir. VNC ve türevlerinde kullanılmakta olan RFB, çok basit bir protokol olarak yola çıkmış olmasına rağmen, dosya paylaşımı, gelişmiş sıkıştırma ve güvenlik teknikleri gibi ileri düzey ek özellikleri destekleyecek şekilde geliştirilmiştir.

VNC Yazılımları Geliştiren Firmalar

VNC Cambridge de AT&T labarutarında ve Oracle araştırma labarutarında BSD(Berkeley Software Distribution) benzeri bir lisans ile geliştirilmeye başlandı günümüzde ise bir çok firma GNU( GNU General Public License-Genel Kamu Lisansı) lisansı ile VNC yazılımı geliştirmektedir.

  • TigerVNC
  • RealVNC
  • TightVNC
  • UltraVNC
  • LibVNCServer
  • SPICE
  • PocketVNC
  • GoverlanVNC
  • Chicken (of the VNC)
  • JollysFastVNC
  • SmartCode VNC Web Access
  • Mocha VNC Lite

VNC hangi işletim sistemlerin de çalışır?

VNC platform bağımsız bir yazılımdır; UNIX, GNU/Linux ve MS Windows dahil birçok işletim sistemi üzerine kurulabilir. Aralarında VNC ile grafiksel masaüstü paylaşımı yapılacak bilgisayarların hangi işletim sistemine sahip olduğunun bir önemi yoktur, VNC farklı işetim sistemleri arasında sorunsuz çalışır.

Kaç kullanıcı VNC sunucuya bağlanabilir?

Birden fazla makine ile aynı zamanda bir VNC sunucusuna bağlanabilir.

Windows kullanıcıları bu bölüme boş verebilirler, zira Windows sistemlerde aynı fiziksel sistem üzerinde birden fazla kullanıcının çalışması (VNC’nin sağladığı özelliklerden daha fazlasını sağlayan Terminal Services dışında) mümkün olmadığından, bu bölümdeki bilgiler Windows kullanıcılarına pek de fazla yardım etmeyecektir.Windows sistemlerde display numarası aksi istenmedikçe öntanımlı olarak 0 (sıfır)’dır ve VNC sunucu 5900/tcp no’lu bağlantı noktası üzerinde hizmet verir.

UNIX sistemler en ilkel zamanlarından bu yana aynı anda çok sayıda kullanıcıya hizmet verebilmek için tasarlanmışlardır, tüm sistem çağrıları kullanıcı yetkileri ile ilgili denetimler içerir. Sistemi aynı anda çok sayıda kullanıcı paylaşabiliyorsa, bu kullanıcılardan birkaçı aynı anda VNC çalıştırmak ve kendi oturumlarına ulaşmak isteyebilirler.

Bu arada gerekli kısa bir temel bilgi eklemek istiyorum: VNC sunucu, kendisini öntanımlı olarak 5900/tcp bağlantı noktasına yerleştirir ve buraya gelecek bağlantılara hizmet verir. Aynı bağlantı noktasına birden fazla istemci bağlanabilir, fakat oturumu bunlardan yalnızca biri yönetebilir (oturumunuzu siz kullanabilirsiniz, fakat aynı bağlantı noktasına bağlanan diğer kullanıcılar sizin çalışmalarınızı izleyebilirler).

Bu bilgiden sonra, bir bağlantı noktasını aynı anda birden fazla uygulamanın kullanmasının mümkün olmadığını hatırlayacak olursak; basit bir mantıkla sistemdeki her kullanıcının çalıştırdığı VNC sunucunun farklı bir bağlantı noktasında çalışması gerektiği sonucuna varırız. VNC, UNIX sistemlerde tam olarak böyle davranır.

Sistemde ilk çalıştırılan VNC sunucunun display (ekran) numarası “1” olur ve bu VNC sunucu “5900 + display” no’lu bağlantı noktasında yani 5901’de hizmet vermeye başlar. İkinci sunucu 5902, üçüncü sunucu 5903 ve bu biçimde her başlatılan VNC sunucu kendisine 5900+n biçiminde bir bağlantı noktası belirler. vncserverkomutu ile çalıştıracağınız her VNC sunucu, çalıştıktan sonra hangi display üzerinde çalıştığı bilgisini terminal çıktısı olarak bildirir.

Fakat bu biçimde kurulan bir VNC sunucunun bir dezavantajı var; eğer bir sunucu üzerindeki VNC oturumunuzun ekran numarasını hatırlamıyorsanız buna bağlanmak için sunucuya komut satırından ulaşmanız ve çalıştırdığınız süreçlerin listesinden ekran numarasını öğrenmeniz gerekecek.

Ne kadar hızlı?

RealVNC tarafından dağıtılan VNC, uzaktan bağlantılarda sunucu ve istemci arasındaki veri trafiğini azaltmak için deflate compression kullanır (zlib). Ayrıca aktarılan verinin en az miktarda olmasını sağlamak için birkaç farklı metod daha (Hextile, copyrect ve RLE) hem istemci hem de VNC sunucu tarafından destekleniyorsa kullanılabilir ve genellikle en uygun mekanizma sunucu tarafından otomatik olarak seçilir (4.x serisi); fakat RealVNC sunucu içerisinde lossless compression kullanılır, görüntü kalitesi (renk derinliği dışında) kayba uğratılmaz.

Eğer görüntü kalitesi sizin için değerli değilse, TightVNC deneyebilirsiniz, zira TightVNC görüntü kalitesini veri trafiğini azaltmak için kasıtlı olarak kayba uğratır (JPEG algoritması kullanır). Yavaş ağlarda daha başarılı olduğunu söyleyebilirim, fakat hızlı ağlarda sistemlere gereksiz yük oluyor, JPEG ucuz bir algoritma değildir.

Güvenlik

Varsayılan olarak RFB(Remote Frame Buffer) güvenli bir protokol değildir.Bu nedenle en az 8 karakterli bir şifre kullanılması önerilir.UltraVNC güvenlik adına diğer yazılımlarda bir adım öndedir.

Eğer güvenlik konusunda ciddi kaygılarınız varsa, VNC sunucunuzu sadece yerel bağlantıları kabul edecek şekilde ayarlayıp, daha sonra istemcinin makinesinden bir SSH tüneli açmalısınız. Bu şekilde sunucu ve istemci arasındaki tüm VNC paketleri şifrelenecektir.Veye aynı mantıkla VPN’de olabilir.

root kullanıcısına vnc ayarlanmaması mantıklıdır.
Yararlı olması Dilegiyle…
Yazar : Mustafa Bektaş Tepe

Kaynaklar ;

http://www.teknoturk.org/docking/yazilar/tt000142-yazi.htm

http://en.wikipedia.org/wiki/Virtual_Network_Computing#Limitations

http://maclord.ozarweb.com/tr/mevzu/vnc/

Loading