Ib qho kev cais tawm zoo ib yam li plegde thiab nthuav tawm tau tsim rau FreeBSD

Rau FreeBSD, ib qho kev siv ntawm ib daim ntawv thov kev rho tawm mechanism yog npaj, nco txog cov lus cog tseg thiab nthuav tawm cov kev hu xov tooj tsim los ntawm OpenBSD qhov project. Kev rho tawm hauv plegde tau ua tiav los ntawm kev txwv tsis pub nkag mus rau hauv kev hu xov tooj uas tsis siv hauv daim ntawv thov, thiab nthuav tawm los ntawm kev xaiv qhib kev nkag mus rau cov ntaub ntawv ib leeg xwb uas daim ntawv thov tuaj yeem ua haujlwm nrog. Rau daim ntawv thov, ib hom dawb daim ntawv teev npe hu thiab cov ntaub ntawv txoj hauv kev yog tsim, thiab tag nrho lwm yam kev hu thiab txoj kev raug txwv.

Qhov sib txawv ntawm cov analogue ntawm plegde thiab nthuav tawm tau tsim los rau FreeBSD los ntawm kev muab cov txheej txheem ntxiv uas tso cai rau koj cais cov ntawv thov yam tsis tau hloov pauv rau lawv cov cai lossis kev hloov pauv tsawg. Nco qab tias hauv OpenBSD, plegde thiab nthuav tawm yog tsom rau kev sib koom ua ke nruj nrog rau qhov chaw hauv qab thiab siv los ntawm kev ntxiv cov lus piav qhia tshwj xeeb rau cov cai ntawm txhua daim ntawv thov. Txhawm rau kom yooj yim lub koom haum ntawm kev tiv thaiv, cov ntxaij lim dej tso cai rau koj faib cov ntsiab lus ntawm theem ntawm ib tus neeg hu xov tooj thiab tswj cov chav kawm ntawm kev hu xov tooj (input / output, nyeem cov ntaub ntawv, sau cov ntaub ntawv, qhov (socket), ioctl, sysctl, txheej txheem tso tawm, thiab lwm yam). . Kev txwv tsis pub nkag tau tuaj yeem hu rau hauv daim ntawv thov code raws li qee qhov kev ua tau ua, piv txwv li, nkag mus rau cov qhov (sockets) thiab cov ntaub ntawv tuaj yeem raug tsis lees paub tom qab qhib cov ntaub ntawv tsim nyog thiab tsim kom muaj kev sib txuas hauv network.

Tus sau ntawm qhov chaw nres nkoj ntawm plegde thiab nthuav tawm rau FreeBSD npaj siab muab lub peev xwm los cais cov ntawv thov tsis raug cai, uas tau thov rau daim ntaub thaiv kev siv hluav taws xob, uas tso cai rau koj siv cov cai uas tau teev tseg hauv cov ntawv cais rau cov ntawv thov. Cov kev teeb tsa uas tau npaj tseg suav nrog cov ntaub ntawv nrog cov kev teeb tsa yooj yim uas txhais cov chav kawm ntawm kev hu xov tooj thiab cov ntaub ntawv raug cai tshwj xeeb rau qee yam kev siv (ua haujlwm nrog suab, kev sib cuam tshuam hauv network, nkag mus, thiab lwm yam), nrog rau cov ntaub ntawv nrog cov cai nkag rau cov ntawv thov tshwj xeeb.

Cov ntaub thaiv hluav taws xob tuaj yeem siv los cais cov khoom siv tsis tau hloov pauv feem ntau, cov txheej txheem neeg rau zaub mov, daim ntawv thov siv duab, thiab txawm tias tag nrho cov kev sib tham. Kab hlau rhuav tuaj yeem siv ua ke nrog cov txheej txheem cais tawm los ntawm Lub Tsev Hais Plaub thiab Capsicum subsystems. Nws kuj tseem tuaj yeem teeb tsa kev sib cais sib cais, thaum tsim cov ntawv thov tau txais txiaj ntsig cov cai teev tseg rau daim ntawv thov niam txiv, ntxiv rau lawv nrog kev txwv tus kheej. Qee qhov kev ua haujlwm kernel (debugging chaw, POSIX/SysV IPC, PTYs) kuj tseem muaj kev tiv thaiv los ntawm cov txheej txheem thaiv kev tiv thaiv kev nkag mus rau cov khoom kernel uas tsis tsim los ntawm cov txheej txheem tam sim no lossis niam txiv.

Ib tus txheej txheem tuaj yeem teeb tsa nws tus kheej kev sib cais los ntawm kev hu xov tooj rau curtainctl lossis los ntawm kev siv libcurtain's plegde() thiab nthuav tawm () ua haujlwm, zoo ib yam li cov pom hauv OpenBSD. Txhawm rau taug qab cov xauv xauv thaum daim ntawv thov ua haujlwm, sysctl 'security.curtain.log_level' yog muab. Kev nkag mus rau X11 thiab Wayland raws tu qauv tau qhib sib cais los ntawm kev qhia qhov "-X" / "-Y" thiab "-W" kev xaiv thaum khiav kab hlau rhuav, tab sis kev txhawb nqa rau graphical daim ntawv thov tseem tsis tau muaj kev ruaj ntseg txaus thiab muaj ntau yam teeb meem tsis daws teeb meem ( Cov teeb meem feem ntau tshwm sim thaum siv X11, thiab kev txhawb nqa Wayland tau ua tiav zoo dua). Cov neeg siv tuaj yeem ntxiv kev txwv ntxiv los ntawm kev tsim cov ntaub ntawv hauv zos (~/.curtain.conf). Piv txwv li, txhawm rau tso cai sau ntawv los ntawm Firfox tsuas yog mus rau ~ / Downloads / phau ntawv qhia, koj tuaj yeem ntxiv ntu β€œ[firefox]” nrog txoj cai β€œ~/Downloads/ : rw +”.

Qhov kev siv suav nrog mac_curtain kernel module rau kev tswj hwm kev nkag mus (MAC, Mandatory Access Control), ib txheej ntawm thaj ua rau thaj rau FreeBSD kernel nrog rau kev siv cov khoom tsim nyog thiab cov ntxaij lim dej, lub tsev qiv ntawv libcurtain rau siv cov plegde thiab nthuav tawm cov haujlwm hauv cov ntawv thov, cov ntaub ntawv siv hluav taws xob, piv txwv cov ntaub ntawv teeb tsa, teeb tsa kev sim thiab thaj ua rau thaj rau qee qhov kev pab cuam hauv chaw neeg siv (piv txwv li, siv $ TMPDIR los koom ua haujlwm nrog cov ntaub ntawv ib ntus). Qhov twg ua tau, tus sau xav kom txo tus lej ntawm cov kev hloov pauv uas xav tau thaj ua rau thaj rau cov ntsiav thiab cov ntawv thov.

Tau qhov twg los: opennet.ru

Ntxiv ib saib