GNU/Linux >> Tutoriels Linux >  >> Linux

Comment détecter la virtualisation à l'aide du script Sys::Detect::Virtualization Perl ?

Plus tard, j'ai commencé à travailler sur un projet de sécurité cloud dans lequel je dois détecter le type d'hyperviseur qui exécute une machine virtuelle. Pour l'expérience, j'ai configuré des environnements de test basés sur la plate-forme cloud OpenStack avec KVM comme hyperviseur sous-jacent et également KVM autonome avec QEMU, Xen et VirtualBox. L'idée est de démarrer une machine virtuelle au-dessus de ces environnements et de voir si je peux détecter la technologie de virtualisation qui alimente la machine virtuelle actuelle. Heureusement, c'est super facile.

Remarque : Il existe peu de commandes Linux natives telles que dmesg (analyse du journal système), lshw, dmidecode etc… qui vous aide à accomplir ce travail - que je couvrirai dans un tutoriel séparé.

Ici, je vais utiliser "Sys::Detect::Virtualization ” script perl, que vous pouvez télécharger à partir de ce lien.

Comment détecter le type de virtualisation à partir d'une machine virtuelle (VM)

Une fois que vous avez "Sys::Detect::Virtualization ” script téléchargé à partir du lien ci-dessus, copiez-le sur une machine virtuelle et installez-le comme indiqué ci-dessous :

[root@vm ]# tar xvfz Sys-Detect-Virtualization-0.107.tar.gz
[root@vm ]# cd Sys-Detect-Virtualization-0.107
[root@vm Sys-Detect-Virtualization-0.107]# perl Makefile.PL
Checking if your kit is complete...
Looks good
Warning: prerequisite ExtUtils::MakeMaker 6.59 not found. We have 6.30.
Warning: prerequisite Test::Deep 0 not found.
Warning: prerequisite Test::Exception 0 not found.
Warning: prerequisite Test::More 0.82 not found. We have 0.62.
Writing Makefile for Sys::Detect::Virtualization

Faire

[root@vm Sys-Detect-Virtualization-0.107]# make
cp lib/Sys/Detect/Virtualization.pm blib/lib/Sys/Detect/Virtualization.pm
cp lib/Sys/Detect/Virtualization/linux.pm blib/lib/Sys/Detect/Virtualization/linux.pm
cp lib/Sys/Detect/Virtualization/freebsd.pm blib/lib/Sys/Detect/Virtualization/freebsd.pm
cp script/virtdetect blib/script/virtdetect
/usr/bin/perl "-Iinc" "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/virtdetect
Manifying blib/man1/virtdetect.1
Manifying blib/man3/Sys::Detect::Virtualization.3pm
Manifying blib/man3/Sys::Detect::Virtualization::freebsd.3pm
Manifying blib/man3/Sys::Detect::Virtualization::linux.3pm

Installer

[root@vm Sys-Detect-Virtualization-0.107]# make install
Installing /usr/lib/perl5/site_perl/5.8.8/Sys/Detect/Virtualization.pm
Installing /usr/lib/perl5/site_perl/5.8.8/Sys/Detect/Virtualization/linux.pm
Installing /usr/lib/perl5/site_perl/5.8.8/Sys/Detect/Virtualization/freebsd.pm
Installing /usr/share/man/man1/virtdetect.1
Installing /usr/share/man/man3/Sys::Detect::Virtualization::freebsd.3pm
Installing /usr/share/man/man3/Sys::Detect::Virtualization::linux.3pm
Installing /usr/share/man/man3/Sys::Detect::Virtualization.3pm
Installing /usr/bin/virtdetect
Writing /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/Sys/Detect/Virtualization/.packlist
Appending installation info to /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/perllocal.pod

Détecter la virtualisation à l'aide de 'virtdetect ‘commande

[root@vm Sys-Detect-Virtualization-0.107]# virtdetect
Multiple possible virtualization systems detected:
 Linux KVM
 Qemu

Vous pouvez également exécuter 'virtdetect ‘ sur un environnement non virtualisé pour voir ce que la commande affiche.

[peter@non-virtualized-machine ]$ virtdetect
No virtualization detected

Linux
  1. Comment télécharger des fichiers à partir du serveur SFTP à l'aide d'un script python

  2. Comment exécuter une commande Linux bash dans un script PERL ?

  3. Comment quitter le terminal Linux en utilisant le script Python ?

  4. Comment ajouter un travail crontab à crontab à l'aide d'un script bash ?

  5. Comment puis-je exécuter mon script node js automatiquement à l'aide du planificateur sur le serveur

Comment synchroniser des fichiers dans les deux sens à l'aide du script Osync sous Linux

Comment configurer l'exécution automatique d'un script Python à l'aide de Systemd

Comment installer des modules Perl à l'aide de CPAN sur CentOS 8

Comment surveiller les performances d'Ubuntu à l'aide de Netdata

Comment installer des modules Perl à l'aide de CPAN sur CentOS 8

Comment installer des modules Perl avec cPanel ?