Python Forensics - Sanallaştırma

Virtualizationsunucular, iş istasyonları, ağlar ve depolama gibi BT sistemlerini taklit etme sürecidir. Herhangi bir işletim sisteminin, bir sunucunun, bir depolama aygıtının veya ağ işlemlerinin gerçek sürümünden ziyade sanal bir sürümünün oluşturulmasından başka bir şey değildir.

Sanal donanımın öykünmesine yardımcı olan ana bileşen, bir hyper-visor.

Aşağıdaki şekil, kullanılan iki ana sistem sanallaştırma türünü açıklamaktadır.

Sanallaştırma, bilişimsel adli tıpta çeşitli şekillerde kullanılmıştır. Analiste, iş istasyonunun her bir araştırma için doğrulanmış bir durumda kullanılabileceği şekilde yardımcı olur. Veri kurtarma, bir sürücünün dd görüntüsünü özellikle sanal bir makineye ikincil bir sürücü olarak ekleyerek mümkündür. Aynı makine, kanıtları toplamak için bir kurtarma yazılımı olarak kullanılabilir.

Aşağıdaki örnek, Python programlama dili yardımıyla sanal bir makinenin oluşturulmasının anlaşılmasına yardımcı olur.

Step 1 - Sanal makinenin 'dummy1' olarak adlandırılmasına izin verin.

Her sanal makine, bayt cinsinden ifade edilen minimum kapasitede 512 MB belleğe sahip olmalıdır.

vm_memory = 512 * 1024 * 1024

Step 2 - Sanal makine, hesaplanmış olan varsayılan kümeye eklenmelidir.

vm_cluster = api.clusters.get(name = "Default")

Step 3 - Sanal makine, sanal sabit disk sürücüsünden başlatılmalıdır.

vm_os = params.OperatingSystem(boot = [params.Boot(dev = "hd")])

Tüm seçenekler, sanal makineye vms koleksiyonunun add yöntemini kullanmadan önce bir sanal makine parametresi nesnesinde birleştirilir.

Misal

Aşağıda, bir sanal makine eklemek için eksiksiz Python betiği verilmiştir.

from ovirtsdk.api import API #importing API library
from ovirtsdk.xml import params

try: #Api credentials is required for virtual machine
   api = API(url = "https://HOST", 
      username = "Radhika", 
      password = "a@123", 
      ca_file = "ca.crt")
      
   vm_name = "dummy1"
   vm_memory = 512 * 1024 * 1024 #calculating the memory in bytes
   vm_cluster = api.clusters.get(name = "Default")
   vm_template = api.templates.get(name = "Blank")
   
   #assigning the parameters to operating system
   vm_os = params.OperatingSystem(boot = [params.Boot(dev = "hd")])
   
   vm_params = params.VM(name = vm_name,
      memory = vm_memory,
      cluster = vm_cluster,
      template = vm_template
      os = vm_os)

   try: 
      api.vms.add(vm = vm_params) 
      print "Virtual machine '%s' added." % vm_name #output if it is successful. 
   except Exception as ex: 
      print "Adding virtual machine '%s' failed: %s" % (vm_name, ex) 
      api.disconnect()
      
except Exception as ex: 
   print "Unexpected error: %s" % ex

Çıktı

Kodumuz aşağıdaki çıktıyı üretecektir -