Windows 7 ilə işləmək üçün QubesOS-dan istifadə edin

Habré haqqında Qubes əməliyyat sisteminə həsr olunmuş çoxlu məqalələr yoxdur və gördüklərim ondan istifadə təcrübəsinin çoxunu təsvir etmir. Kəsmənin altında, Qubes-dən Windows mühitindən qorunma vasitəsi kimi istifadə nümunəsindən istifadə edərək bunu düzəltməyə ümid edirəm və eyni zamanda sistemin rusdilli istifadəçilərinin sayını təxmin edirəm.

Windows 7 ilə işləmək üçün QubesOS-dan istifadə edin

Niyə Qubes?

Windows 7 üçün texniki dəstəyin sona çatması və istifadəçilərin artan narahatlığı hekayəsi aşağıdakı tələbləri nəzərə alaraq bu ƏS-nin işini təşkil etmək zərurətinə səbəb oldu:

  • istifadəçinin yeniləmələri və müxtəlif proqramları (o cümlədən İnternet vasitəsilə) quraşdırmaq imkanı ilə tam aktivləşdirilmiş Windows 7-dən istifadəni təmin etmək;
  • şərtlər əsasında şəbəkə qarşılıqlı əlaqələrinin tam və ya seçmə xaric edilməsini həyata keçirmək (avtonom əməliyyat və trafikin filtrasiya rejimləri);
  • çıxarıla bilən media və cihazları seçmə şəkildə birləşdirmək imkanı təmin edir.

Bu məhdudiyyətlər dəsti aydın şəkildə hazırlanmış istifadəçini nəzərdə tutur, çünki müstəqil idarəetməyə icazə verilir və məhdudiyyətlər onun potensial hərəkətlərini bloklamaqla deyil, mümkün səhvləri və ya dağıdıcı proqram effektlərini istisna etməklə bağlıdır. Bunlar. Modeldə daxili cinayətkar yoxdur.

Həll axtarışımızda daxili və ya əlavə Windows alətlərindən istifadə edərək məhdudiyyətlər tətbiq etmək fikrindən tez imtina etdik, çünki istifadəçini idarəçi hüquqları ilə effektiv şəkildə məhdudlaşdırmaq olduqca çətindir və ona proqramlar quraşdırmaq imkanı verir.

Növbəti həll virtualizasiyadan istifadə edərək izolyasiya idi. Masa üstü virtuallaşdırma üçün tanınmış alətlər (məsələn, virtual qutu) təhlükəsizlik problemlərinin həlli üçün zəif uyğundur və sadalanan məhdudiyyətlər istifadəçi tərəfindən qonaq virtual maşınının (bundan sonra) xüsusiyyətlərini daim dəyişdirmək və ya tənzimləmək yolu ilə edilməlidir. VM kimi), səhv riskini artırır.

Eyni zamanda, Qubes-dən istifadəçinin iş masası sistemi kimi istifadə təcrübəmiz var idi, lakin qonaq Windows ilə işləməyin sabitliyinə şübhəmiz var idi. Qubes-in cari versiyasını yoxlamaq qərara alındı, çünki qeyd olunan məhdudiyyətlər bu sistemin paradiqmasına, xüsusən də virtual maşın şablonlarının tətbiqinə və vizual inteqrasiyaya çox uyğun gəlir. Sonra problemin həlli nümunəsindən istifadə edərək Qubesin ideyaları və alətləri haqqında qısaca danışmağa çalışacağam.

Xen virtualizasiyasının növləri

Qubes prosessor resurslarının, yaddaşın və virtual maşınların idarə edilməsi funksiyalarını minimuma endirən Xen hipervizoruna əsaslanır. Cihazlarla bütün digər işlər Linux nüvəsinə əsaslanan dom0-da cəmləşmişdir (dom0 üçün Qubes Fedora paylanmasından istifadə edir).

Windows 7 ilə işləmək üçün QubesOS-dan istifadə edin

Xen bir neçə növ virtualizasiyanı dəstəkləyir (Xen başqalarını dəstəkləsə də, Intel arxitekturasına nümunələr verəcəyəm):

  • paravirtuallaşdırma (PV) - hardware dəstəyindən istifadə etmədən, konteyner virtualizasiyasını xatırladan virtuallaşdırma rejimi uyğunlaşdırılmış kernelli sistemlər üçün istifadə edilə bilər (dom0 bu rejimdə işləyir);
  • tam virtuallaşdırma (HVM) - bu rejimdə prosessor resursları üçün aparat dəstəyi istifadə olunur və bütün digər avadanlıqlar QEMU-dan istifadə edərək emulyasiya edilir. Bu, müxtəlif əməliyyat sistemlərini işə salmağın ən universal üsuludur;
  • aparatın paravirtuallaşdırılması (PVH - ParaVirtualized Hardware) - hardware ilə işləmək üçün qonaq sisteminin nüvəsi hipervizorun imkanlarına uyğunlaşdırılmış drayverlərdən (məsələn, paylaşılan yaddaş) istifadə edərkən, QEMU emulyasiyasına ehtiyacı aradan qaldıran, hardware dəstəyindən istifadə edən virtuallaşdırma rejimi və I/O performansını artırır. 4.11-dən başlayan Linux nüvəsi bu rejimdə işləyə bilər.

Windows 7 ilə işləmək üçün QubesOS-dan istifadə edin

Qubes 4.0-dan başlayaraq, təhlükəsizlik səbəbi ilə paravirtuallaşdırma rejimindən istifadədən imtina edilir (o cümlədən tam virtuallaşdırmanın istifadəsi ilə qismən azaldılan Intel arxitekturasındakı məlum zəifliklər səbəbindən); PVH rejimi standart olaraq istifadə olunur.

Emulyasiyadan (HVM rejimi) istifadə edərkən, QEMU stubdomain adlı təcrid olunmuş VM-də işə salınır və bununla da həyata keçirmə zamanı potensial səhvlərdən istifadə riskini azaldır (QEMU layihəsində uyğunluq da daxil olmaqla çoxlu kod var).
Bizim vəziyyətimizdə bu rejim Windows üçün istifadə edilməlidir.

Virtual maşınlara xidmət

Qubes təhlükəsizlik arxitekturasında hipervizorun əsas imkanlarından biri PCI cihazlarının qonaq mühitinə ötürülməsidir. Avadanlığın xaric edilməsi sistemin əsas hissəsini xarici hücumlardan təcrid etməyə imkan verir. Xen bunu PV və HVM rejimləri üçün dəstəkləyir, ikinci halda bu, IOMMU (Intel VT-d) üçün dəstək tələb edir - virtuallaşdırılmış cihazlar üçün hardware yaddaşının idarə edilməsi.

Bu, bir neçə sistem virtual maşını yaradır:

  • şəbəkə qurğularının ötürüldüyü və digər VM-lər üçün körpü kimi istifadə edilən, məsələn, firewall və ya VPN müştəri funksiyalarını həyata keçirən sys-net;
  • USB və digər periferik cihaz kontrollerlərinin ötürüldüyü sys-usb;
  • cihazlardan istifadə etməyən, lakin qoşulmuş VM-lər üçün firewall kimi işləyən sys-firewall.

USB cihazları ilə işləmək üçün başqa şeylər arasında təmin edən proxy xidmətlərindən istifadə olunur:

  • dom0-a əmrlər göndərən HID (insan interfeysi cihazı) cihaz sinfi üçün;
  • çıxarıla bilən media üçün cihaz həcmlərinin digər VM-lərə yönləndirilməsi (dom0 istisna olmaqla);
  • birbaşa USB cihazına yönləndirmə (USBIP və inteqrasiya alətlərindən istifadə etməklə).

Belə bir konfiqurasiyada şəbəkə yığını və ya qoşulmuş qurğular vasitəsilə uğurlu hücum bütövlükdə sistemin deyil, yalnız işləyən VM xidmətinin kompromisinə səbəb ola bilər. Və xidmət VM-ni yenidən işə saldıqdan sonra o, orijinal vəziyyətində yüklənəcək.

VM inteqrasiya alətləri

Virtual maşının iş masası ilə qarşılıqlı əlaqə qurmağın bir neçə yolu var - qonaq sistemində proqramların quraşdırılması və ya virtuallaşdırma alətlərindən istifadə edərək videonun təqlid edilməsi. Qonaq proqramları müxtəlif universal uzaqdan giriş alətləri (RDP, VNC, Spice və s.) ola bilər və ya xüsusi hipervizora uyğunlaşdırıla bilər (belə alətlər adətən qonaq utilitləri adlanır). Hipervizor qonaq sistemi üçün I/O-nu təqlid etdikdə və xaricdən, məsələn, Spice kimi I/O-nu birləşdirən protokoldan istifadə etmək imkanı təmin etdikdə qarışıq seçim də istifadə oluna bilər. Eyni zamanda, uzaqdan giriş vasitələri adətən təsviri optimallaşdırır, çünki onlar şəbəkə vasitəsilə işləməyi nəzərdə tutur, bu da görüntünün keyfiyyətinə müsbət təsir göstərmir.

Qubes VM inteqrasiyası üçün öz alətlərini təqdim edir. Əvvəla, bu, qrafik alt sistemdir - müxtəlif VM-lərdən olan pəncərələr öz rəngli çərçivəsi ilə bir iş masasında göstərilir. Ümumiyyətlə, inteqrasiya alətləri hipervizorun imkanlarına əsaslanır - paylaşılan yaddaş (Xen qrant cədvəli), bildiriş alətləri (Xen hadisə kanalı), paylaşılan yaddaş xenstore və vchan rabitə protokolu. Onların köməyi ilə qrexec və qubes-rpc əsas komponentləri və tətbiq xidmətləri həyata keçirilir - audio və ya USB yönləndirmə, faylların və ya bufer məzmununun ötürülməsi, əmrlərin yerinə yetirilməsi və tətbiqlərin işə salınması. VM-də mövcud xidmətləri məhdudlaşdırmağa imkan verən siyasətlər təyin etmək mümkündür. Aşağıdakı şəkil iki VM-nin qarşılıqlı əlaqəsini işə salmaq üçün prosedurun nümunəsidir.

Windows 7 ilə işləmək üçün QubesOS-dan istifadə edin

Beləliklə, VM-də iş şəbəkədən istifadə etmədən həyata keçirilir ki, bu da informasiya sızmasının qarşısını almaq üçün avtonom VM-lərdən tam istifadə etməyə imkan verir. Məsələn, kriptoqrafik əməliyyatların (PGP/SSH) ayrılması, təcrid olunmuş VM-lərdə şəxsi açarlar istifadə edildikdə və onlardan kənara çıxmadıqda belə həyata keçirilir.

Şablonlar, proqramlar və birdəfəlik VM-lər

Qubes-də bütün istifadəçi işləri virtual maşınlarda aparılır. Əsas host sistemi onları idarə etmək və vizuallaşdırmaq üçün istifadə olunur. ƏS, şablon əsaslı virtual maşınların (TemplateVM) əsas dəsti ilə birlikdə quraşdırılmışdır. Bu şablon inteqrasiya alətləri quraşdırılmış və konfiqurasiya edilmiş, xüsusi sistem və istifadəçi bölmələri ilə Fedora və ya Debian paylanmasına əsaslanan Linux VM-dir. Proqram təminatının quraşdırılması və yenilənməsi məcburi rəqəmsal imza yoxlaması (GnuPG) ilə konfiqurasiya edilmiş depolardan standart paket meneceri (dnf və ya apt) tərəfindən həyata keçirilir. Belə VM-lərin məqsədi onların əsasında işə salınan proqram VM-lərinə etibarı təmin etməkdir.

Başlanğıcda proqram VM (AppVM) müvafiq VM şablonunun sistem bölməsinin snapshotundan istifadə edir və başa çatdıqdan sonra dəyişiklikləri saxlamadan bu snapşotu silir. İstifadəçi tərəfindən tələb olunan məlumatlar ev kataloqunda quraşdırılmış hər bir proqram VM üçün unikal olan istifadəçi bölməsində saxlanılır.

Windows 7 ilə işləmək üçün QubesOS-dan istifadə edin

Birdəfəlik istifadə edilə bilən VM-lərdən (disposableVM) istifadə təhlükəsizlik baxımından faydalı ola bilər. Belə bir VM başlanğıc zamanı şablon əsasında yaradılır və bir məqsəd üçün işə salınır - bir tətbiqi yerinə yetirmək, bağlandıqdan sonra işi tamamlamaq. Birdəfəlik istifadə olunan VM-lər məzmunu xüsusi proqram zəifliklərinin istismarına səbəb ola biləcək şübhəli faylları açmaq üçün istifadə edilə bilər. Birdəfəlik VM-ni idarə etmək imkanı fayl menecerinə (Nautilus) və e-poçt müştərisinə (Thunderbird) inteqrasiya olunub.

Windows VM istifadəçi profilini ayrıca bölməyə köçürməklə şablon və birdəfəlik VM yaratmaq üçün də istifadə edilə bilər. Bizim versiyamızda belə bir şablon istifadəçi tərəfindən idarəetmə tapşırıqları və proqramların quraşdırılması üçün istifadə olunacaq. Şablon əsasında bir neçə tətbiqi VM yaradılacaq - şəbəkəyə məhdud çıxışla (standart sys-firewall imkanları) və ümumiyyətlə şəbəkəyə çıxışı olmayan (virtual şəbəkə cihazı yaradılmır). Şablonda quraşdırılmış bütün dəyişikliklər və proqramlar bu VM-lərdə işləmək üçün əlçatan olacaq və hətta əlfəcin proqramları təqdim edilsə belə, onların güzəşt üçün şəbəkəyə çıxışı olmayacaq.

Windows üçün mübarizə

Yuxarıda təsvir edilən xüsusiyyətlər Qubes-in əsasını təşkil edir və kifayət qədər sabit işləyir; çətinliklər Windows-dan başlayır. Windows-u inteqrasiya etmək üçün siz Xen ilə işləmək üçün drayverləri, qvideo sürücüsünü və məlumat mübadiləsi üçün bir sıra kommunal proqramları (faylların ötürülməsi, mübadilə buferi) özündə birləşdirən Qubes Windows Tools (QWT) dəstindən istifadə etməlisiniz. Quraşdırma və konfiqurasiya prosesi layihənin veb saytında ətraflı şəkildə sənədləşdirilmişdir, ona görə də tətbiqetmə təcrübəmizi paylaşacağıq.

Əsas çətinlik əsasən hazırlanmış alətlər üçün dəstəyin olmamasıdır. Əsas Tərtibatçılar (QWT) əlçatmaz görünür və Windows inteqrasiya layihəsi aparıcı tərtibatçını gözləyir. Ona görə də ilk növbədə onun fəaliyyətini qiymətləndirmək və lazım gələrsə, müstəqil şəkildə dəstəkləmək imkanları haqqında anlayış formalaşdırmaq lazım idi. İnkişaf etdirilməsi və sazlanması ən çətin olanı video adapter və displeyini təqlid edən və paylaşılan yaddaşda təsvir yaratmaq üçün bütün iş masasını və ya proqram pəncərəsini birbaşa host sisteminin pəncərəsində göstərməyə imkan verən qrafik sürücüsüdür. Sürücünün işinin təhlili zamanı biz kodu Linux mühitində montaj üçün uyğunlaşdırdıq və iki Windows qonaq sistemi arasında sazlama sxemini işləyib hazırladıq. Çarpaz tikinti mərhələsində, əsasən kommunal xidmətlərin "səssiz" quraşdırılması baxımından işlərimizi asanlaşdıran bir sıra dəyişikliklər etdik, həmçinin uzun müddət VM-də işləyərkən performansın əsəbi pisləşməsini aradan qaldırdıq. İşimizin nəticələrini ayrıca təqdim etdik depolar, beləliklə, uzun müddət deyil ruhlandırıcı Aparıcı Qubes Developer.

Qonaq sisteminin sabitliyi baxımından ən kritik mərhələ Windows-un işə salınmasıdır, burada tanış mavi ekranı görə bilərsiniz (və ya hətta onu görmürsən). Müəyyən edilmiş səhvlərin əksəriyyəti üçün müxtəlif həll yolları var idi - Xen blok cihaz sürücülərini aradan qaldırmaq, VM yaddaş balansını söndürmək, şəbəkə parametrlərini düzəltmək və nüvələrin sayını minimuma endirmək. Qonaq alətlərimiz tam yenilənmiş Windows 7 və Windows 10 (qvideo istisna olmaqla) sistemlərində quraşdırmalar qurur və işləyir.

Real mühitdən virtual mühitə keçərkən, əvvəlcədən quraşdırılmış OEM versiyaları istifadə olunarsa, Windows-un aktivləşdirilməsi ilə bağlı problem yaranır. Bu cür sistemlər cihazın UEFI-də göstərilən lisenziyalar əsasında aktivləşdirmədən istifadə edir. Aktivləşdirməni düzgün şəkildə emal etmək üçün host sisteminin bütün ACPI bölmələrindən birini (SLIC cədvəli) qonaq sisteminə tərcümə etmək və istehsalçını qeydiyyatdan keçirərək digərlərini bir az redaktə etmək lazımdır. Xen əlavə cədvəllərin ACPI məzmununu fərdiləşdirməyə imkan verir, lakin əsasları dəyişdirmədən. Qubes üçün uyğunlaşdırılmış oxşar OpenXT layihəsindən yamaq həllə kömək etdi. Düzəlişlər təkcə bizim üçün faydalı görünmürdü və əsas Qubes deposuna və Libvirt kitabxanasına tərcümə edildi.

Windows inteqrasiya alətlərinin aşkar çatışmazlıqlarına audio, USB cihazları üçün dəstəyin olmaması və GPU üçün aparat dəstəyi olmadığı üçün media ilə işləməyin mürəkkəbliyi daxildir. Lakin yuxarıda qeyd olunanlar VM-nin ofis sənədləri ilə işləmək üçün istifadəsinə mane olmur və xüsusi korporativ proqramların işə salınmasına mane olmur.

Windows VM şablonunu yaratdıqdan sonra şəbəkəsiz və ya məhdud şəbəkə ilə iş rejiminə keçmək tələbi tətbiqi VM-lərin müvafiq konfiqurasiyalarını yaratmaqla yerinə yetirildi və çıxarıla bilən medianı seçmə şəkildə birləşdirmə imkanı da standart ƏS alətləri ilə həll edildi - qoşulduqda. , onlar VM sys-usb sistemində mövcuddur və oradan tələb olunan VM-ə "yönləndirilə" bilər. İstifadəçinin iş masası belə görünür.

Windows 7 ilə işləmək üçün QubesOS-dan istifadə edin

Sistemin son versiyası istifadəçilər tərəfindən müsbət (belə hərtərəfli həll imkan verdiyi qədər) qəbul edildi və sistemin standart alətləri tətbiqi VPN vasitəsilə istifadəçinin mobil iş stansiyasına genişləndirməyə imkan verdi.

Bunun əvəzinə bir nəticəyə

Ümumilikdə virtuallaşdırma, dəstəksiz qalan Windows sistemlərindən istifadə risklərini azaltmağa imkan verir - bu, yeni avadanlıqla uyğunluğu məcbur etmir, şəbəkə və ya qoşulmuş qurğular vasitəsilə sistemə girişi istisna etməyə və ya idarə etməyə imkan verir və sizə imkan verir. birdəfəlik işə salma mühitini tətbiq edin.

Virtuallaşdırma vasitəsilə izolyasiya ideyasına əsaslanaraq, Qubes OS təhlükəsizlik üçün bu və digər mexanizmlərdən istifadə etməyə kömək edir. Kənardan bir çox insanlar Qubes-i ilk növbədə anonimlik arzusu kimi görürlər, lakin bu, həm layihələr, infrastrukturlar və sirlərlə onlara daxil olmaq üçün tez-tez hoqqabazlıq edən mühəndislər, həm də təhlükəsizlik tədqiqatçıları üçün faydalı bir sistemdir. Tətbiqlərin, məlumatların ayrılması və onların qarşılıqlı əlaqəsinin rəsmiləşdirilməsi təhlükənin təhlili və təhlükəsizlik sisteminin dizaynının ilkin addımlarıdır. Bu ayırma məlumatı strukturlaşdırmağa və insan faktoru ilə bağlı səhvlərin baş vermə ehtimalını azaltmağa kömək edir - tələskənlik, yorğunluq və s.

Hazırda inkişafda əsas diqqət Linux mühitlərinin funksionallığının genişləndirilməsinə yönəldilir. Fedora 4.1 əsasında qurulacaq və Xen və Libvirt əsas komponentlərinin cari versiyalarını ehtiva edən 31 versiyası buraxılış üçün hazırlanır. Qeyd etmək lazımdır ki, Qubes yeni təhdidlər və ya səhvlər aşkar edildikdə həmişə yeniləmələri dərhal buraxan informasiya təhlükəsizliyi mütəxəssisləri tərəfindən yaradılır.

Sözündən sonra

İnkişaf etdirdiyimiz eksperimental imkanlardan biri bizə qrafik adapterin imkanlarından istifadə etməyə və sistemin əhatə dairəsini əhəmiyyətli dərəcədə genişləndirməyə imkan verən Intel GVT-g texnologiyası əsasında GPU-ya qonaq girişi dəstəyi ilə VM-lər yaratmağa imkan verir. Yazı zamanı bu funksionallıq Qubes 4.1-in sınaq quruluşları üçün işləyir və burada mövcuddur GitHub.

Mənbə: www.habr.com

Добавить комментарий