Dondurulmuş Uzaktan Kumandalı GNU/Linux

Geçenlerde PLO forumu üzerinde bir konu dikkatimi çekmişti. Dondurulmuş Uzaktan Kumandalı Pardus... Konuyu okuduğumda açan kişinin Windows işletim sisteminde üzerinde mülki yazılımlar ile dondurma (freeze) ve uzaktan yönetim yaptığını anlatıyor ve bunun Pardus üzerinde konunun uygulanabilirliğini soruyordu. Konu üzerinde biraz beyin fırtınası yaparak bu işin kolayca GNU/Linux’un mimarisini kullanarak yapabileceğini keşfettik. Bende bu yazıda sizlere nasıl yapılabileceğini aktarma çalışacağım.


Dondurma (Freeze) Nedir?


İşletim sistemi ve bilgisayar üzerinde yapılan tüm değişikliklerin yeniden başlatma ile sıfırlanması, dondurulmuş ya da yedeklenmiş haline geri getirilmesidir.


Bunun için kapalı işletim sistemlerinde dosya sisteminin gölge kopyası başka bir bölüm üzerine kayıt edilir. Yeniden başlatma esnasında bu alan kullanılarak dondurulan andaki gibi, üzerinde hiçbir işlem yapılmamış haline geri getirilir.

   
Neden Dondurma İşlemi?

İşletim sistemi üzerinde yapılan tüm değişiklerin yeni oturumda iptal olması, sistemin zarar görmemesi,

Dosya sistemin bulaşan virüs ya da zararlılardan korunmak (Windows üzerinde dondurma işlemi her virüse etkili olmayacaktır. Genellikle dondurma işlemini yapılan gölge kopya alanına virüs etki ederek her yeniden başlamada kendini aktif hale getirmektedir.)    

Birden çok kişinin kullanıldığı bir sistem ise, (örneğin internet kafe) yeni müşteri için, öncekinin kalıntılarının temizlenmesi gibi nedenlerden dolayı dondurma işlemi yapılabilir.


GNU/Linux üzerinde durum nedir?

Yukarıdaki dondurma işleminin etkilerini, GNU/Linux üzerinde mimarisinden yararlanarak yapar isek, bir bakıma GNU/Linux işletim sistemi ve dosya sistemini dondurmuş oluruz. Bu işlem için diğer sistemler gibi başka yazılımlara gereksinim duymaz ve fazladan maliyet oluşturmayız.

   

/home Klasörü ve root (Yönetici) Hakları

GNU/Linux üzerinde root haklarına sahip olmayan bir kullanıcı sistemin geneline etki eden ayarlara müdahale edemez, kendi dizini haricinde bir klasöre dosya yazamaz ve /home/kullanicidizini altına hapsolur. Bir değişiklik yapmak istediğinde görsel arayüz kullanıcıya root (yönetici hesabı) şifresi soracak, eğer giriş yapılmazsa işlem gerçekleşmeyecektir.


Not: ‘sudo’ yüklü ve kullanıcı hesabına tanımlı ise kendi kullanıcı hesabı ile yönetici haklarına sahip olunabilir.



Yapılandırma Mimarisi

GNU/Linux üzerinde tüm yapılandırma, açık kaynak kodlu mimarisinin etkisiyle beraber yazı dosyalarından oluştur. Görsel kullanıcı arayüzünde (GUI) ve masaüstü yöneticisinde (örneğin GNOME) yapılan değişiklikler arka planda komut işlemleri ile bu dosyaların düzenlemesi ile yapılır.  Sistemin geneline etki eden yapılandırmalar /etc klasörü içerisinde toplanmış, kullanıcıya etki eden yapılandırma (örneğin masaüstü arka plan resmi) dosyaları ise /home/kullanıcı dizini içerisinde gizli dosyalar olarak toparlanmıştır.

   
Sonuç

Eğer GNU/Linux üzerinde bir kullanıcıya root şifresi ya da ‘sudo’ ile yönetici hakları vermez ve her sistemi yeniden başlatma esnasında /home/kullanıcıdizini eski halini üzerine kopyalarsak önceki oturumdaki kullanıcının yapılandırma dosyaları değişecek, kullanıcı dizinine kayıt ettiği dosyaların üzerine yenileri yazılarak iptal olacaktır.

   

Başlarken


Kullanıcı ev dizinini kopyalamak için
rsync yazılımını kullanacağız. Bu yazılım sayesinde yalnızca değişen dosyalar kopyalanacak ve işlem kısa sürede tamamlanacaktır.
   
Sistem her yeniden başlandığında
rsync yazılımının otomatik olarak çalışması için rc.local dosyasına eklememiz yeterli olacaktır.  Tüm işlemin root kullanıcı ile ya da sudo yardımıyla root haklarına sahip olan bir kullanıcı ile yapılması gereklidir.

# sudo cp -R /home/kullanici_dizini/ /root/ komutu ile kullanıcı dizini /root dizini altına kopyalanır. (Not: Bu kopyalama işleminde .gvfs dosyası kopyalanamayacaktır. İhtiyacımız olmadığından önemsemiyoruz)
   
# sudo chown -R kullaniciadi:kullanicigrubu /root/kullanici_dizini/
komutu ile kopyalanan kullanıcı dizinlerinin sahipliği tekrar kullanıcıya verilir.

# sudo nano /etc/rc.local komutu ile rc.local dosyası nano ile açılır.
   
(Not: Pardus GNU/Linux üzerinde
/etc/local.start dosyasıdır. Bu yazıda Arch GNU/Linux kullanılmıştır)
   


# rsync --del -av /root/kullanici_dizini/ /home/kullanici_dizini/
komutu yazılarak kayıt edilir.


Böylece her başlangıçta, /etc/rc.local dosyası içerisindeki komutu gerçekleştirecek ve /root/ dizin altına kopyaladığımız kullanici_dizini, /home/ dizini üzerine yazılacak ve sistem bir önceki haline geri dönecektir.


Uzaktan Kumanda...

GNU/Linux üzerinde, uzaktan yönetim için bağlantı çeşitleri gelişmiş ve çok çeşitlidir.   Uzaktan bağlantı ile evinizden, iş yerindeki bilgisayara bağlanıp belgeleri kullanabilir, internet üzerindeki örneğin bir web sunucusuna bağlanıp yönetebilir ya da müşterilerinize uzaktan destek verebilirsiniz.

   
OpenSSH (Secure Shell)

   
GNU/Linux mimarisi gereği tüm işlemler komutlar ve kabul (shell) ile yönetilir ve yazı dosyaları ile yapılandırılır demiştik. Normal olarak kullandığımız görsel arayüz (GUI), masaüstü yöneticisi ile farenin tıklama işlemlerini komutlara dönüştürerek kabuğun (shell) anlayabileceği bir dile çevirip işlem yapar.

   
Secure Shell ise bize bir sertifika üretip, uzaktan bağlantı yapan kullanıcı ile sistem arasındaki bağlantıyı şifreleyerek güvenli bir kabuk (shell - komut sistemi) ortamı sunar.

   
Genellikle tüm GNU/Linux dağıtımları ile beraber gelir. Fakat gelen bağlantılar için yapılandırma yapılmamıştır.

   


# pacman -S openssh libssh libssh2
 // Arch GNU/Linux üzerinde
# aptitude install openssh-server openssh-client // Debian GNU/Linux üzerinde
# pisi it openssh // Pardus GNU/Linux üzerinde komutları ile beraber yüklenebilir.
$ ssh kullaniciadi@sunucuadı ile ssh uzaktaki bir SSH sunucuya bağlantı yapılabilir. Yapılandırma dosyaları /etc/ssh/ klasörü altında bulunur.

   
VNC (Virtual Network Computing)

   
VNC,  RFB protokolünün geliştirilmesiyle oluşturulmuş, kullanıcıya bağlanılan bilgisayarın masaüstünü grafiksel ortamda sunup, yönetilmesini sağlayan bir özgür yazılımdır. Dağıtım depolarından TightVNC paketini yükleyerek kullanabilirsiniz.


TightVNC yazılımının haricinde, GNOME masaüstü yöneticiyle entegre çalışan vino-server projesi vardır. Kolayca Sistem menüsünden Tercihler altında bulunan
Uzak Masaüstüne tıklarak gelen vnc bağlantılarına izin verebilirsiniz. Bir VNC sunucusuna bağlanmak için, GNOME vnc istemcisi olan Viagre yada tüm uzaktan bağlantılar için benim favorim olan Remmina’yı tercih edebilirsiniz.

   
Belki sonraki aylarda VNC konusuna detaylı değiniriz. Şimdilik kaynak ve faydalı adresler kısmına bakabilirsiniz.

   
Kaynak ve Faydalı Adresler



(1)
http://forum.pardus-linux.org/viewtopic.php?f=332&t=23822

(2) http://www.cagataycebi.com/linux/remote_access/remote_access.html

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



Bu yazının lisansı Pardus-Linux.Org eDergi 32. Sayı'daki lisansı ile aynıdır. Lisanslar hakkında bilgiyi lisanslar sayfamızda bulabilirsiniz.

Etiketler :

Yorumlar