Systemd zal veranderen hoe uw Linux-homedirectory werkt

De / home-directory gemarkeerd in een grafische Linux-bestandsbeheerder.
isak55 / Shutterstock

Het team erachter systemd wil dat je een nieuwe manier gebruikt om homedirectory’s te beheren. Het een “nieuwe manier” noemen, is licht uitgedrukt: dit is een echte paradigmaverschuiving voor Linux. Hier is alles wat u moet weten systemd-homed, die waarschijnlijk naar een Linux-distro bij jou in de buurt komt.

Geen onbekende in controverse

Wanneer systemd werd geïntroduceerd in 2010, de Linux-gemeenschap opgesplitst in drie kampen. Sommigen dachten dat het een verbetering was, en anderen dachten dat het een gebrekkig ontwerp was dat niet paste bij de Unix-filosofie. En sommigen konden het op de een of andere manier niet schelen.

Het verzet van de tegenstanders was luid, verhit en in sommige gevallen bijna fanatiek. Lennart Poettering, een software-engineer bij Red Hat en mede-ontwikkelaar van systemd, ontving zelfs doodsbedreigingen.

Op YouTube werden liedjes gepost die aanzetten tot geweld tegen poëzie, en websites leken Linux-gebruikers te dwingen te boycotten systemd. Zijn mede-ontwikkelaar, Kay Sievers, kreeg ook kritiek en misbruik, maar Poettering kreeg er zeker de dupe van.

Toch gebruikte Fedora binnen acht maanden systemd. Tegen het einde van 2013 waren Arch, Debian, Manjaro en Ubuntu allemaal verhuisd naar systemd. De glorie van open source is natuurlijk dat als je iets niet leuk vindt, je de broncode kunt splitsen en er je eigen ding mee kunt doen. Nieuwe distributies – zoals Devuan, dat een afsplitsing van Debian was – werden uitsluitend gemaakt om gebruik te vermijden systemd.

VERWANT: Systemd-services beheren op een Linux-systeem

Uw $ HOME-directory

In de Linux-directorystructuur bevindt alles wat je doet zich in de “/ home” -directory. Uw gegevensbestanden, afbeeldingen, muziek en de volledige persoonlijke directorystructuur worden opgeslagen in deze ene directory, genoemd naar uw gebruikersaccount.

De instellingen voor uw toepassingen worden opgeslagen in uw thuismap in verborgen “puntmappen”. Als het eerste teken van een bestands- of directorynaam een ​​punt (.) Is, is deze verborgen. Omdat deze instellingen lokaal worden opgeslagen en niet in een centraal register – en omdat een back-up van uw homedirectory deze verborgen bestanden en mappen bevat – wordt er ook een back-up gemaakt van al uw instellingen.

Wanneer u een back-up herstelt en een toepassing start, zoals LibreOffice of Thunderbird, zoekt deze naar de verborgen map. Het vindt ook uw documentvoorkeuren, werkbalkinstellingen en andere aanpassingen. Thunderbird vindt uw e-mailaccountinformatie en uw e-mail. U hoeft niet de pijn te doorstaan ​​van het langzaam opzetten van elke applicatie.

Je kunt gebruiken ls met de -a (alle) optie om verborgen bestanden en mappen te zien. Typ eerst het volgende:

ls

Dit toont u de reguliere bestanden en mappen. Typ vervolgens het volgende:

ls -a

Nu kunt u de verborgen bestanden en mappen zien.

ls in een terminalvenster.

Omdat dit het kostbaarste deel van een installatie is, is het normaal dat de “/ home” -map op zijn eigen partitie of op een aparte harde schijf wordt gemount. Op deze manier kun je, als er iets catastrofaals gebeurt met het besturingssysteem of de partitie waarop het staat, je Linux-distributie opnieuw installeren of naar een nieuwe omwisselen. Vervolgens kunt u uw bestaande thuispartitie opnieuw koppelen aan “/ home”.

VERWANT: De Linux-directorystructuur, uitgelegd

Gegevens over jou

Uw homedirectory slaat niet alleen uw gegevens op; het slaat ook informatie over jou op. inclusief enkele kenmerken van uw digitale identiteit. Uw “.ssh” -directory slaat bijvoorbeeld informatie op over externe verbindingen die u met andere computers hebt gemaakt en eventuele SSH-sleutels die u hebt gegenereerd.

Andere systeemkenmerken, zoals de gebruikersnaam, het wachtwoord en de unieke gebruikers-ID van uw account, worden elders opgeslagen in bestanden zoals “/ etc / passwd” en “/ etc / shadow.” Iedereen kan sommige hiervan lezen, maar andere kunnen alleen worden gelezen door mensen met rootprivileges.

Dit is hoe de inhoud van het “/ etc / passwd” -bestand eruit ziet:

cat /etc/passwd

cat / etc / passwd in een terminalvenster.

VERWANT: Gebruikersgegevens wijzigen met chfn en usermod op Linux

De systemd-homed Changes

De bedoeling van de systemd-homed wijzigingen is om een ​​volledig draagbare homedirectory te bieden waarin zowel uw gegevens als de digitale Linux-identiteit zijn opgeslagen. Uw UID en alle andere identificatie- en authenticatiemechanismen worden alleen in uw homedirectory opgeslagen.

Door hun “alle eieren in één mand” -ontwerp zijn homedirectory’s versleuteld. Ze worden automatisch gedecodeerd wanneer u zich aanmeldt en opnieuw gecodeerd wanneer u zich afmeldt. De voorkeursmethode is het gebruik van de Linux Unified Key Setup (LUKS) -schijfversleuteling. Er zijn echter andere schema’s beschikbaar, zoals fscrypt.

Een JavaScript Object Notation (JSON) -gebruikersrecord slaat al uw identiteitsgegevens op in een map met de naam “~ / .identity”. Het is cryptografisch ondertekend met een sleutel waarover u geen controle heeft.

De homedirectory van elke persoon is gemount op een loopback-apparaat, vergelijkbaar met de manier waarop een snap applicatie is gemonteerd. Dit is zo dat de directorystructuur in de homedirectory verschijnt als een naadloos onderdeel van de directorystructuur van het besturingssysteem. Het koppelpunt is standaard “/home/$USER.homedir” (“$ USER” wordt vervangen door de accountnaam van de persoon).

Wat zijn de voordelen?

Omdat uw homedirectory een veilige inkapseling wordt van al uw gegevens, kunt u zelfs uw homedirectory op een verwijderbaar apparaat hebben. U kunt bijvoorbeeld een USB-stick gebruiken om deze tussen uw werk- en thuismachines te verplaatsen, of een andere systemd-homed computer.

Dit is wat Poettering bedoelde met ‘een volledig draagbare homedirectory’. Hij zei dat zelfs als je je homedirectory niet op een draagbaar apparaat wilt verplaatsen, dit upgrades en migraties gemakkelijker zal maken en de veiligheid zal vergroten.

Het verwijdert wat hij ‘secundaire databases’ noemt, die stukjes belangrijke informatie over jou bevatten waarvan Poettering vindt dat ze gecentraliseerd moeten worden. De bestanden “/ etc / passwd” en “/ etc / shadow” bevatten authenticatie-informatie en gehashte wachtwoorden. Ze bevatten echter ook informatie zoals uw standaardshell, het veld General Electric Comprehensive Operating Supervisor (GECOS).

Poettering zei dat deze metadata moeten worden gerationaliseerd en opgeslagen in zinvolle groepen binnen het JSON-record van elke persoon in hun homedirectory.

Beheer van uw nieuwe $ THUIS

De systemd-homed service wordt gecontroleerd via het nieuwe homectl opdrachtregelprogramma.

Er zijn opties om gebruikers en homedirectory’s te maken en opslaglimieten in te stellen voor elke gebruiker. U kunt ook het wachtwoord instellen, iemand de toegang tot zijn account blokkeren of een account volledig verwijderen. Gebruikers kunnen worden geïnspecteerd en hun JSON-gebruikersrecords kunnen ook worden gelezen.

Tijdzones en andere locatiegebaseerde informatie kunnen ook voor elke gebruiker worden ingesteld. U kunt de standaardshell specificeren en zelfs omgevingsvariabelen instellen zodat ze zich in een bepaalde staat bevinden wanneer iemand inlogt.

Als je in de “/ home” directory kijkt, zie je systemd-homed beheerde items die er als volgt uitzien, met “.homedir” toegevoegd aan de gebruikersnaam:

/home/dave.homedir

Onthoud dat dit slechts een koppelpunt is. De locatie van de daadwerkelijke gecodeerde homedirectory is ergens anders.

Beperkingen en problemen

systemd-homed is alleen voor gebruik op de gebruikersaccounts van mensen. Het kan geen gebruikersaccounts verwerken met een UID van minder dan 1.000. Met andere woorden, root, daemon, bin, enzovoort, kunnen niet worden beheerd met het nieuwe schema. Er zal altijd behoefte zijn aan de standaardmanieren om gebruikers te beheren. Daarom systemd-homed is geen globale oplossing.

Er is een bekende catch-22 die moet worden opgelost. Zoals we eerder hebben vermeld, wordt de homedirectory van een persoon gedecodeerd wanneer hij of zij inlogt. Maar als iemand op afstand toegang heeft tot de computer via SSH, kan er niet naar de SSH-sleutels in de homedirectory worden verwezen omdat de homedirectory nog steeds is gecodeerd tot die tijd. persoon logt in. Natuurlijk heeft men de SSH-sleutels nodig om te authenticeren voordat hij of zij kan inloggen.

Dit was een erkend probleem door de systemd-homed team, maar we konden geen referentie vinden over een oplossing hiervoor. We weten zeker dat ze met een oplossing zullen komen; het zou een spectaculaire val zijn als ze dat niet zouden doen.

Laten we zeggen dat iemand zijn homedirectory naar een nieuwe machine transporteert. Als de UID al door iemand anders op de nieuwe machine wordt gebruikt, krijgt hij automatisch een nieuwe UID toegewezen. Uiteraard moeten al zijn bestanden opnieuw eigendom worden toegewezen aan de nieuwe UID.

Momenteel wordt dit afgehandeld door een recursieve, automatische toepassing van het chown -R opdracht. Dit zal in de toekomst waarschijnlijk anders worden aangepakt wanneer een eleganter schema wordt ontwikkeld. Deze hardhandige aanpak houdt geen rekening met de daemons en processen die worden uitgevoerd als andere gebruikers.

VERWANT: SSH-sleutels maken en installeren vanuit de Linux-shell

Wanneer gebeurt dit?

Dit gebeurt nu. De codewijzigingen zijn ingediend op 20 januari 2020 en zijn opgenomen in build 245 van systemd, die in april 2020 met Ubuntu 20.04 werd geleverd.

Om te controleren welke versie u heeft, typt u het volgende:

systemd --version

systemd --version in een terminalvenster.

De homectl commando is echter nog niet aanwezig. Ubuntu 20.04 gebruikt een traditionele / homedirectory en gebruikt geen systemd-homed.

Het is natuurlijk aan de individuele distributies om te beslissen wanneer ze zullen opnemen en ondersteunen systemd-homed en homectl.

Het is dus niet nodig dat iemand volledig op hooivorken en brandende fakkels gaat. Omdat de standaardmethoden voor het beheren van gebruikers en homedirectory’s blijven bestaan, hebben we allemaal nog keuzes.

VERWANT: Wat is er nieuw in Ubuntu 20.04 LTS “Focal Fossa”

Nieuwste artikelen

spot_img

Related Stories

Leave A Reply

Vul alstublieft uw commentaar in!
Vul hier uw naam in