Lennart Ushairi
Mazingira ya saraka ya nyumbani huja kwa namna ya faili ya picha iliyowekwa, data ambayo imesimbwa. Sifa za mtumiaji zimefungwa kwenye saraka ya nyumba badala ya mipangilio ya mfumo - badala ya /etc/passwd na /etc/shadow
Vigezo vinaweza pia kujumuisha maelezo ya ziada kama vile vitufe vya SSH, data ya uthibitishaji wa kibayometriki, picha, barua pepe, anwani, saa za eneo, lugha, mchakato na vikomo vya kumbukumbu, bendera za ziada za kupachika (nodev, noexec, nosuid), maelezo kuhusu seva za IMAP/SMTP zilizotumika. , maelezo kuhusu kuwezesha vidhibiti vya wazazi, chaguo mbadala, n.k. API imetolewa ili kuomba na kuchanganua vigezo
Mgawo wa UID/GID na usindikaji hufanywa kwa nguvu kwenye kila mfumo wa ndani ambao saraka ya nyumbani imeunganishwa. Kutumia mfumo uliopendekezwa, mtumiaji anaweza kuweka saraka yake ya nyumbani pamoja naye, kwa mfano kwenye gari la Flash, na kupata mazingira ya kufanya kazi kwenye kompyuta yoyote bila kuunda akaunti juu yake (uwepo wa faili iliyo na picha ya saraka ya nyumbani. inaongoza kwa usanisi wa mtumiaji).
Inapendekezwa kutumia mfumo mdogo wa LUKS2 kwa usimbaji fiche wa data, lakini systemd-homed pia inaruhusu matumizi ya viunzi vingine vya nyuma, kwa mfano, kwa saraka ambazo hazijasimbwa, Btrfs, Fscrypt na kizigeu cha mtandao cha CIFS. Ili kudhibiti saraka za portable, matumizi ya homectl inapendekezwa, ambayo inakuwezesha kuunda na kuamsha picha za saraka za nyumbani, na pia kubadilisha ukubwa wao na kuweka nenosiri.
Katika kiwango cha mfumo, kazi inahakikishwa na vipengele vifuatavyo:
- systemd-homed.service - inasimamia saraka ya nyumbani na kupachika rekodi za JSON moja kwa moja kwenye picha za saraka za nyumbani;
- pam_systemd - huchakata vigezo kutoka kwa wasifu wa JSON mtumiaji anapoingia na kuzitumia katika muktadha wa kipindi kilichoamilishwa (hufanya uthibitishaji, husanidi vigezo vya mazingira, nk);
- systemd-logind.service - huchakata vigezo kutoka kwa wasifu wa JSON wakati mtumiaji anaingia, hutumia mipangilio mbalimbali ya usimamizi wa rasilimali na kuweka mipaka;
- nss-systemd - moduli ya NSS ya glibc, inasanikisha rekodi za kawaida za NSS kulingana na wasifu wa JSON, ikitoa upatanifu wa nyuma na API ya kuchakata mtumiaji ya UNIX (/etc/nenosiri);
- PID 1 - huunda watumiaji kwa nguvu (iliyoundwa kwa mlinganisho na matumizi ya maagizo ya DynamicUser katika vitengo) na kuwafanya waonekane kwa mfumo wote;
- systemd-userdbd.service - hutafsiri akaunti za UNIX/glibc NSS hadi rekodi za JSON na hutoa Varlink API iliyounganishwa kwa ajili ya kuuliza na kurudia rekodi.
Faida za mfumo uliopendekezwa ni pamoja na uwezo wa kusimamia watumiaji wakati wa kuweka saraka / nk katika hali ya kusoma tu, kutokuwepo kwa hitaji la kusawazisha vitambulisho (UID/GID) kati ya mifumo, uhuru wa mtumiaji kutoka kwa kompyuta maalum, kuzuia data ya mtumiaji. wakati wa hali ya kulala, matumizi ya usimbaji fiche na njia za uthibitishaji za kisasa. Systemd-homed imepangwa kujumuishwa katika mfumo mkuu wa mfumo katika toleo la 244 au 245.
Mfano wasifu wa mtumiaji wa JSON:
"autoLogin" : kweli,
"binding" : {
Β«15e19cd24e004b949ddaac60c74aa165Β» : {
"fileSystemType" : "ext4"
Β«fileSystemUUIDΒ» : Β«758e88c8-5851-4a2a-b98f-e7474279c111Β»,
"gid": 60232,
"homeDirectory" : "/nyumbani/mtihani",
"imagePath" : "/home/test.home",
"luksCipher" : "aes",
"luksCipherMode" : "xts-plain64",
Β«luksUUIDΒ» : Β«e63581ba-79fa-4226-b9de-1888393f7573Β»,
"luksVolumeKeySize" : 32,
Β«partitionUUIDΒ» : Β«41f9ce04-c927-4b74-a981-c669f93eb4dcΒ»,
"storage" : "luks",
"uid": 60233
}
},
"disposition" : "kawaida",
"enforcePasswordPolicy" : uongo,
"lastChangeUSec" : 1565951024279735,
"mwanachama": [
"gurudumu"
],
"upendeleo" : {
"hashedPassword" : [
Β«$6$WHBKvAFFT9jKPA4k$OPY4D5β¦/Β»
]},
"Sahihi" : [
{
"data" : "LU/HeVrPZSzi3M3J...==",
"key" : "ββANZA UFUNGUO WA UMMAββ\nMCowBQADK2VwAyβ¦=\nββMALIZA UFUNGUO WA UMMAββ\n"
}
],
"userName" : "test",
"hali" : {
Β«15e19cf24e004b949dfaac60c74aa165Β» : {
"GoodAuthenticationCounter": 16,
"lastGoodAuthenticationUSec" : 1566309343044322,
"rateLimitBeginUSec" : 1566309342341723,
"rateLimitCount" : 1,
"state" : "isiyofanya kazi",
"service" : "io.systemd.Home",
"Ukubwa wa diski" : 161218667776,
"diskCeiling": 191371729408,
"diskfloor": 5242780,
"signedLocally" : kweli
}
}
Chanzo: opennet.ru