Paggamit sa QubesOS aron magtrabaho uban sa Windows 7

Wala'y daghang mga artikulo sa Habré nga gipahinungod sa Qubes operating system, ug kadtong akong nakita wala maghulagway sa kadaghanan sa kasinatian sa paggamit niini. Ubos sa pagputol, nanghinaut ko nga matul-id kini gamit ang panig-ingnan sa paggamit sa Qubes isip usa ka paagi sa pagpanalipod (batok) sa palibot sa Windows ug, sa samang higayon, pagbanabana sa gidaghanon sa mga tiggamit sa sistema nga nagsultig Ruso.

Paggamit sa QubesOS aron magtrabaho uban sa Windows 7

Ngano Qubes?

Ang istorya sa katapusan sa teknikal nga suporta alang sa Windows 7 ug ang nagkadako nga kabalaka sa mga tiggamit misangpot sa panginahanglan sa pag-organisar sa trabaho niini nga OS, nga gikonsiderar ang mosunod nga mga kinahanglanon:

  • pagsiguro sa paggamit sa bug-os nga aktibo sa Windows 7 uban sa abilidad sa user sa pag-instalar sa mga update ug nagkalain-laing mga aplikasyon (lakip na pinaagi sa Internet);
  • ipatuman ang kompleto o pinili nga dili paglakip sa mga interaksyon sa network base sa mga kondisyon (autonomous nga operasyon ug mga paagi sa pagsala sa trapiko);
  • paghatag og abilidad sa pagpili sa pagkonektar sa removable media ug mga himan.

Kini nga hugpong sa mga pagdili nagdahum nga usa ka tin-aw nga andam nga tiggamit, tungod kay gitugotan ang independente nga administrasyon, ug ang mga pagdili wala’y kalabutan sa pag-ali sa iyang potensyal nga mga aksyon, apan wala’y labot ang posible nga mga sayup o makadaot nga mga epekto sa software. Mga. Walay internal nga nakasala sa modelo.

Sa among pagpangita alang sa usa ka solusyon, dali namong gibiyaan ang ideya sa pagpatuman sa mga pagdili gamit ang built-in o dugang nga mga himan sa Windows, tungod kay lisud kaayo ang epektibong pagpugong sa usa ka tiggamit nga adunay mga katungod sa tagdumala, nga nagbilin kaniya sa abilidad sa pag-install sa mga aplikasyon.

Ang sunod nga solusyon mao ang pag-inusara gamit ang virtualization. Ang ilado nga mga himan alang sa desktop virtualization (pananglitan, sama sa virtualbox) dili maayo nga haum alang sa pagsulbad sa mga problema sa seguridad ug ang nalista nga mga pagdili kinahanglan nga buhaton sa user pinaagi sa kanunay nga pagbalhin o pag-adjust sa mga kabtangan sa bisita virtual machine (gitawag dinhi ingon VM), nga nagdugang sa risgo sa mga sayup.

Sa samang higayon, kami adunay kasinatian sa paggamit sa Qubes isip sistema sa desktop sa user, apan adunay mga pagduhaduha mahitungod sa kalig-on sa pagtrabaho uban sa bisita nga Windows. Nakahukom nga susihon ang kasamtangan nga bersyon sa Qubes, tungod kay ang gipahayag nga mga limitasyon mohaum pag-ayo sa paradigm niini nga sistema, ilabi na ang pagpatuman sa mga templates sa virtual machine ug visual integration. Sunod, sulayan nako ang mubo nga paghisgot bahin sa mga ideya ug mga himan sa Qubes, gamit ang panig-ingnan sa pagsulbad sa problema.

Mga tipo sa Xen virtualization

Ang Qubes gibase sa Xen hypervisor, nga nagpamenos sa mga gimbuhaton sa pagdumala sa mga kapanguhaan sa processor, memorya ug mga virtual machine. Ang tanan nga uban pang trabaho sa mga aparato gikonsentrar sa dom0 base sa Linux kernel (Ang Qubes para sa dom0 naggamit sa pag-apod-apod sa Fedora).

Paggamit sa QubesOS aron magtrabaho uban sa Windows 7

Gisuportahan sa Xen ang daghang mga lahi sa virtualization (Maghatag ako mga pananglitan alang sa arkitektura sa Intel, bisan kung gisuportahan ni Xen ang uban):

  • paravirtualization (PV) - usa ka virtualization mode nga walay paggamit sa hardware nga suporta, nga nagpahinumdom sa container virtualization, mahimong gamiton alang sa mga sistema nga adunay gipaangay nga kernel (dom0 naglihok niini nga mode);
  • bug-os nga virtualization (HVM) - sa kini nga mode, ang suporta sa hardware gigamit alang sa mga kapanguhaan sa processor, ug ang tanan nga uban pang kagamitan gisundog gamit ang QEMU. Kini ang labing unibersal nga paagi sa pagpadagan sa lainlaing mga operating system;
  • paravirtualization sa hardware (PVH - ParaVirtualized Hardware) - usa ka virtualization mode gamit ang suporta sa hardware kung, sa pagtrabaho uban sa hardware, ang guest system kernel naggamit sa mga driver nga gipahaum sa mga kapabilidad sa hypervisor (pananglitan, shared memory), pagwagtang sa panginahanglan alang sa QEMU emulation ug pagdugang sa performance sa I/O. Ang Linux kernel sugod sa 4.11 mahimong molihok sa kini nga mode.

Paggamit sa QubesOS aron magtrabaho uban sa Windows 7

Sugod sa Qubes 4.0, alang sa mga hinungdan sa seguridad, ang paggamit sa paravirtualization mode gibiyaan (lakip ang tungod sa nahibal-an nga mga kahuyangan sa Intel nga arkitektura, nga partially mitigated pinaagi sa paggamit sa bug-os nga virtualization); PVH mode gigamit sa default.

Kung gigamit ang emulation (HVM mode), ang QEMU gilusad sa usa ka nahilit nga VM nga gitawag nga stubdomain, sa ingon makunhuran ang mga peligro sa pagpahimulos sa mga potensyal nga sayup sa pagpatuman (ang proyekto sa QEMU adunay daghang code, lakip ang pagkaangay).
Sa among kaso, kini nga mode kinahanglan gamiton alang sa Windows.

Pag-alagad sa mga virtual machine

Sa arkitektura sa seguridad sa Qubes, usa sa mga yawe nga kapabilidad sa hypervisor mao ang pagbalhin sa mga aparato sa PCI sa palibot sa bisita. Ang pagpahigawas sa hardware nagtugot kanimo nga ihimulag ang host nga bahin sa sistema gikan sa mga pag-atake sa gawas. Gisuportahan kini sa Xen alang sa mga mode sa PV ug HVM, sa ikaduha nga kaso nanginahanglan suporta alang sa IOMMU (Intel VT-d) - pagdumala sa memorya sa hardware alang sa mga virtualized nga aparato.

Naghimo kini daghang mga virtual nga makina sa sistema:

  • sys-net, diin gibalhin ang mga aparato sa network ug gigamit ingon usa ka tulay alang sa ubang mga VM, pananglitan, kadtong nagpatuman sa mga gimbuhaton sa usa ka firewall o kliyente sa VPN;
  • sys-usb, diin ang USB ug uban pang mga peripheral device controller gibalhin;
  • sys-firewall, nga wala mogamit sa mga aparato, apan naglihok ingon usa ka firewall alang sa konektado nga mga VM.

Aron magtrabaho sa mga USB device, gigamit ang mga serbisyo sa proxy, nga naghatag, ug uban pang mga butang:

  • para sa klase sa device nga HID (human interface device), nagpadala ug mga sugo ngadto sa dom0;
  • para sa removable media, redirection sa mga volume sa device ngadto sa ubang VMs (gawas sa dom0);
  • direkta nga pag-redirect sa USB device (gamit ang USBIP ug integration tools).

Sa ingon nga pag-configure, ang usa ka malampuson nga pag-atake pinaagi sa network stack o konektado nga mga aparato mahimong mosangput sa pagkompromiso sa nagdagan nga serbisyo nga VM, ug dili ang tibuuk nga sistema sa kinatibuk-an. Ug human ma-restart ang serbisyo VM, kini i-load sa orihinal nga kahimtang niini.

Mga himan sa panagsama sa VM

Adunay daghang mga paagi aron makig-uban sa desktop sa usa ka virtual machine - pag-install sa mga aplikasyon sa sistema sa bisita o pagsundog sa video gamit ang mga gamit sa virtualization. Ang mga aplikasyon sa bisita mahimong lainlain nga universal remote access tool (RDP, VNC, Spice, ug uban pa) o ipahiangay sa usa ka piho nga hypervisor (ang ingon nga mga himan sagad gitawag nga mga gamit sa bisita). Ang usa ka sinagol nga kapilian mahimo usab nga gamiton, kung ang hypervisor nagsunod sa I / O alang sa sistema sa bisita, ug sa gawas naghatag sa abilidad sa paggamit sa usa ka protocol nga naghiusa sa I / O, pananglitan, sama sa Spice. Sa parehas nga oras, ang mga himan sa pag-access sa hilit nga kasagaran nag-optimize sa imahe, tungod kay naglambigit kini sa pagtrabaho pinaagi sa usa ka network, nga wala’y positibo nga epekto sa kalidad sa imahe.

Naghatag ang Qubes sa kaugalingon nga mga himan alang sa paghiusa sa VM. Una sa tanan, kini usa ka graphics subsystem - ang mga bintana gikan sa lainlaing mga VM gipakita sa usa ka desktop nga adunay kaugalingon nga kolor nga frame. Sa kinatibuk-an, ang mga himan sa integrasyon gibase sa mga kapabilidad sa hypervisor - shared memory (Xen grant table), notification tools (Xen event channel), shared storage xenstore ug ang vchan communication protocol. Uban sa ilang tabang, ang mga batakang sangkap qrexec ug qubes-rpc, ug mga serbisyo sa aplikasyon gipatuman - audio o USB redirection, pagbalhin sa mga file o sulod sa clipboard, pagpatuman sa mga sugo ug paglansad sa mga aplikasyon. Posible nga magtakda og mga palisiya nga nagtugot kanimo nga limitahan ang mga serbisyo nga magamit sa usa ka VM. Ang numero sa ubos usa ka pananglitan sa pamaagi alang sa pagsugod sa interaksyon sa duha ka VM.

Paggamit sa QubesOS aron magtrabaho uban sa Windows 7

Sa ingon, ang pagtrabaho sa VM gihimo nga wala gigamit ang usa ka network, nga nagtugot sa hingpit nga paggamit sa mga autonomous nga VM aron malikayan ang pagtulo sa kasayuran. Pananglitan, kini mao ang paagi sa pagbulag sa cryptographic nga mga operasyon (PGP/SSH) gipatuman, sa diha nga ang mga pribado nga yawe gigamit sa hilit nga VMs ug dili molapas niini.

Mga template, aplikasyon ug usa ka higayon nga mga VM

Ang tanan nga trabaho sa user sa Qubes gihimo sa mga virtual machine. Ang nag-unang sistema sa host gigamit aron makontrol ug mahanduraw sila. Ang OS gi-install kauban ang usa ka sukaranan nga set sa template-based virtual machines (TemplateVM). Kini nga template usa ka Linux VM nga gibase sa Fedora o Debian nga pag-apod-apod, nga adunay mga himan sa panagsama nga gi-install ug gi-configure, ug gipahinungod nga sistema ug mga partisyon sa gumagamit. Ang pag-instalar ug pag-update sa software gihimo sa usa ka standard package manager (dnf o apt) gikan sa gi-configure nga mga repository nga adunay mandatory digital signature verification (GnuPG). Ang katuyoan sa ingon nga mga VM mao ang pagsiguro sa pagsalig sa mga aplikasyon nga VM nga gilunsad sa ilang basehan.

Sa pagsugod, ang usa ka aplikasyon nga VM (AppVM) naggamit sa usa ka snapshot sa partition sa sistema sa katugbang nga template sa VM, ug pagkahuman matangtang kini nga snapshot nga wala magtipig mga pagbag-o. Ang datos nga gikinahanglan sa user gitipigan sa usa ka partition sa user nga talagsaon alang sa matag aplikasyon VM, nga gi-mount sa home directory.

Paggamit sa QubesOS aron magtrabaho uban sa Windows 7

Ang paggamit sa mga disposable VMs (disposableVM) mahimong mapuslanon gikan sa punto sa seguridad. Ang ingon nga VM gimugna base sa usa ka template sa panahon sa pagsugod ug gilusad alang sa usa ka katuyoan - sa pagpatuman sa usa ka aplikasyon, pagkompleto sa trabaho human kini sirado. Ang mga disposable nga VM mahimong magamit sa pag-abli sa mga kadudahang mga file kansang sulod mahimong mosangpot sa pagpahimulos sa piho nga mga kahuyangan sa aplikasyon. Ang abilidad sa pagpadagan sa usa ka higayon nga VM gisagol sa file manager (Nautilus) ug email client (Thunderbird).

Ang Windows VM mahimo usab nga gamiton sa paghimo og usa ka template ug usa ka usa ka higayon nga VM pinaagi sa pagbalhin sa user profile ngadto sa usa ka bulag nga seksyon. Sa among bersyon, ang ingon nga template gamiton sa tiggamit alang sa mga buluhaton sa administrasyon ug pag-install sa aplikasyon. Pinasukad sa template, daghang mga aplikasyon nga VM ang himuon - nga adunay limitado nga pag-access sa network (standard sys-firewall nga kapabilidad) ug wala’y access sa network sa tanan (usa ka virtual network device wala gihimo). Ang tanan nga mga pagbag-o ug mga aplikasyon nga na-install sa template mahimong magamit aron magamit sa kini nga mga VM, ug bisan kung ang mga programa sa bookmark gipaila, wala sila'y access sa network alang sa pagkompromiso.

Makig-away alang sa Windows

Ang mga bahin nga gihulagway sa ibabaw mao ang sukaranan sa Qubes ug nagtrabaho nga lig-on; ang mga kalisud nagsugod sa Windows. Aron ma-integrate ang Windows, kinahanglan nimong gamiton ang usa ka set sa guest tools Qubes Windows Tools (QWT), nga naglakip sa mga drayber alang sa pagtrabaho uban sa Xen, usa ka qvideo driver ug usa ka set sa mga utilities alang sa information exchange (pagbalhin sa file, clipboard). Ang proseso sa pag-instalar ug pag-configure gidokumento sa detalye sa website sa proyekto, aron among ipaambit ang among kasinatian sa aplikasyon.

Ang panguna nga kalisud mao ang kakulang sa suporta alang sa naugmad nga mga himan. Ang Key Developers (QWT) mopatim-aw nga dili magamit ug ang proyekto sa integrasyon sa Windows naghulat sa usa ka lead developer. Busa, una sa tanan, gikinahanglan ang pagtimbang-timbang sa pasundayag niini ug pagporma og pagsabot sa posibilidad sa pagsuporta niini nga independente, kon gikinahanglan. Ang labing lisud nga pag-develop ug pag-debug mao ang driver sa graphic, nga nagsundog sa video adapter ug gipakita aron makamugna og usa ka imahe sa gipaambit nga memorya, nga gitugotan ka nga ipakita ang tibuuk nga desktop o ang window sa aplikasyon direkta sa bintana sa host system. Atol sa pag-analisa sa operasyon sa drayber, among gipahiangay ang code alang sa asembliya sa usa ka palibot sa Linux ug nagtrabaho sa usa ka laraw sa pag-debug tali sa duha nga mga sistema sa bisita sa Windows. Sa yugto sa crossbuild, naghimo kami daghang mga pagbag-o nga nagpayano sa mga butang alang kanamo, labi na sa mga termino sa "hilom" nga pag-install sa mga utilities, ug giwagtang usab ang makalagot nga pagkadaot sa pasundayag kung nagtrabaho sa usa ka VM sa dugay nga panahon. Gipresentar namo ang mga resulta sa trabaho sa usa ka linain mga tipiganan, busa dili magdugay makapadasig Nanguna sa Qubes Developer.

Ang labing kritikal nga yugto sa termino sa kalig-on sa sistema sa bisita mao ang pagsugod sa Windows, dinhi imong makita ang pamilyar nga asul nga screen (o dili gani makita kini). Alang sa kadaghanan sa nahibal-an nga mga sayup, adunay lainlaing mga workaround - pagwagtang sa mga driver sa Xen block device, pag-disable sa pagbalanse sa memorya sa VM, pag-ayo sa mga setting sa network, ug pagminus sa gidaghanon sa mga cores. Ang among mga gamit sa bisita nagtukod og mga pag-install ug nagpadagan sa hingpit nga na-update Windows 7 ug Windows 10 (gawas sa qvideo).

Kung mobalhin gikan sa usa ka tinuod nga palibot ngadto sa usa ka virtual, usa ka problema ang motumaw sa pagpaaktibo sa Windows kung gigamit ang mga pre-install nga bersyon sa OEM. Ang ingon nga mga sistema naggamit sa pagpaaktibo base sa mga lisensya nga gitakda sa UEFI sa aparato. Aron husto nga maproseso ang pagpaaktibo, gikinahanglan ang paghubad sa usa sa tibuok nga mga seksyon sa ACPI sa host system (SLIC table) ngadto sa guest system ug gamay nga pag-edit sa uban, pagrehistro sa tiggama. Gitugotan ka sa Xen nga ipasibo ang sulud sa ACPI sa mga dugang nga mga lamesa, apan wala’y pagbag-o sa mga panguna. Usa ka patch gikan sa susama nga proyekto sa OpenXT, nga gipahaum alang sa Qubes, nakatabang sa solusyon. Ang mga pag-ayo daw mapuslanon dili lamang kanamo ug gihubad ngadto sa nag-unang Qubes repository ug sa Libvirt library.

Ang dayag nga mga disadvantages sa Windows integration tools naglakip sa kakulang sa suporta alang sa audio, USB device, ug ang pagkakomplikado sa pagtrabaho sa media, tungod kay walay hardware nga suporta alang sa GPU. Apan ang sa ibabaw wala makapugong sa paggamit sa VM alang sa pagtrabaho sa mga dokumento sa opisina, ni makapugong sa paglansad sa mga piho nga aplikasyon sa korporasyon.

Ang kinahanglanon sa pagbalhin ngadto sa operating mode nga walay network o uban sa usa ka limitado nga network human sa paghimo sa usa ka Windows VM template natuman pinaagi sa paghimo sa tukma nga mga configuration sa aplikasyon VMs, ug ang posibilidad sa pinili nga pagkonektar removable media nasulbad usab pinaagi sa standard OS himan - sa diha nga konektado. , kini anaa sa sistema sa VM sys-usb, gikan diin sila mahimong "ipasa" ngadto sa gikinahanglan nga VM. Ang desktop sa tiggamit ingon niini.

Paggamit sa QubesOS aron magtrabaho uban sa Windows 7

Ang katapusan nga bersyon sa sistema positibo (kutob sa usa ka komprehensibo nga solusyon nga gitugot) nga gidawat sa mga tiggamit, ug ang standard nga mga himan sa sistema nagpaposible sa pagpalapad sa aplikasyon ngadto sa mobile workstation sa user nga adunay access pinaagi sa VPN.

Kay sa usa ka konklusyon

Ang virtualization sa kinatibuk-an nagtugot kanimo nga makunhuran ang mga peligro sa paggamit sa mga sistema sa Windows nga wala’y suporta - wala kini nagpugos sa pagpahiangay sa bag-ong hardware, gitugotan ka nga dili iapil o kontrolon ang pag-access sa sistema sa network o pinaagi sa konektado nga mga aparato, ug gitugotan ka nga ipatuman ang usa ka higayon nga paglansad nga palibot.

Pinasukad sa ideya sa pag-inusara pinaagi sa virtualization, ang Qubes OS nagtabang kanimo nga magamit kini ug uban pang mga mekanismo alang sa seguridad. Gikan sa gawas, daghang mga tawo ang nagtan-aw sa Qubes sa panguna ingon usa ka tinguha nga dili mailhan, apan kini usa ka mapuslanon nga sistema alang sa mga inhenyero, nga kanunay nga nag-juggle sa mga proyekto, imprastraktura, ug mga sekreto aron ma-access kini, ug alang sa mga tigdukiduki sa seguridad. Ang pagbulag sa mga aplikasyon, datos ug pormalisasyon sa ilang interaksyon mao ang inisyal nga mga lakang sa pagtuki sa hulga ug disenyo sa sistema sa seguridad. Kini nga panagbulag makatabang sa pagtukod sa impormasyon ug pagpakunhod sa kalagmitan sa mga kasaypanan tungod sa tawhanong hinungdan - pagdali, kakapoy, ug uban pa.

Sa pagkakaron, ang nag-unang gibug-aton sa kalamboan mao ang pagpalapad sa gamit sa Linux environment. Ang Bersyon 4.1 giandam alang sa pagpagawas, nga ibase sa Fedora 31 ug maglakip sa kasamtangan nga mga bersyon sa mga importanteng sangkap nga Xen ug Libvirt. Angay nga hinumdoman nga ang Qubes gihimo sa mga propesyonal sa seguridad sa impormasyon nga kanunay nga nagpagawas sa mga update kung adunay bag-ong mga hulga o sayup nga nahibal-an.

Pagkahuman

Usa sa mga eksperimento nga kapabilidad nga among gipalambo nagtugot kanamo sa paghimo og mga VM nga adunay suporta alang sa bisita nga pag-access sa GPU base sa Intel GVT-g nga teknolohiya, nga nagtugot kanamo sa paggamit sa mga kapabilidad sa graphics adapter ug sa kamahinungdanon pagpalapad sa sakup sa sistema. Sa panahon sa pagsulat, kini nga pagpaandar naglihok alang sa pagsulay nga pagtukod sa Qubes 4.1, ug anaa sa github.

Source: www.habr.com

Idugang sa usa ka comment