- Technisch verschil tussen het wijzigen van toegangsrechten met chmod en het wijzigen van het eigenaarschap van resources met chown.
- Toegangsrechtensysteem gebaseerd op octale en symbolische notatie voor gebruikers, groepen en anderen.
- Implementatie van beveiligingsstrategieën gebaseerd op het principe van minimale bevoegdheden om kwetsbaarheden in servers te voorkomen.
Als je je hebt verdiept in het beheren van je eigen VPS-server of dedicated machine, zul je hebben gemerkt dat Linux van meet af aan is ontworpen voor netwerken. Daarom is beveiliging van het grootste belang , want door te bepalen wie een bestand kan lezen, bewerken of uitvoeren, voorkom je dat je informatie in verkeerde handen valt of dat een kwaadaardig proces het hele systeem platlegt.
Om je gemakkelijk in deze omgeving te kunnen bewegen, is het niet voldoende om alleen te weten hoe je commando's uitvoert; je moet de logica achter bestandseigendom begrijpen. In Linux behoort elke bron toe aan een gebruiker en een groep , en dit is waar de tools voor het aanpassen van deze privileges van pas komen. Hiermee kunnen we het systeem beveiligen zonder dat onze applicaties niet meer werken.
Inzicht in de anatomie van vergunningen
Wanneer je een commando uitvoert ls -l In de terminal zie je een reeks tekens die eruitziet als een geheime code, zoiets als -rwxr-xr--Maak je geen zorgen, het is eenvoudiger dan het lijkt. Het eerste personage vertelt ons... Wat voor soort element hebben we voor ons?Een koppelteken geeft een gewoon bestand aan, 'd' een map (directory) en 'l' een symbolische link. Er zijn ook minder gangbare tekens zoals 's' voor sockets of 'p' voor pipes.
De volgende negen tekens zijn verdeeld in drie gelijke sets van drie. De eerste set is voor de eigenaar (degene die het bestand heeft aangemaakt), de tweede voor de eigenaarsgroep en de derde voor alle andere gebruikers op het systeem. Elke set van drie tekens kan de letters 'r' (lezen), 'w' (schrijven) en 'x' (uitvoeren) bevatten, of een koppelteken als die toestemming niet is verleend.
Wat houdt elke vergunning nu precies in?
- Lezen (r): In een bestand kun je het openen en de inhoud ervan bekijken. Als we het over een map hebben, betekent het dat je het kunt openen en de inhoud kunt zien. Geef een lijst van de bestanden en submappen. met.
- Schrijven (w): Het geeft je de mogelijkheid om de inhoud van een bestand te wijzigen of zelfs te verwijderen. In het geval van mappen kun je hiermee... aanmaken, verwijderen of hernoemen elementen daarin.
- Uitvoering (x): Voor een bestand is dit de toegangsmachtiging die een script of programma in staat stelt om te draaien. In mappen is deze machtiging essentieel, omdat het je in staat stelt om... toegang tot de map met behulp van de opdracht
cd.
Het chmod-commando: Toegang aanpassen
Het commando chmod (Wijzigingsmodus) is onze tool om deze machtigingen aan te passen. Er zijn twee manieren om deze te gebruiken: symbolisch, wat intuïtiever is, en octaal, wat de voorkeur heeft van beheerders omdat het sneller is.
In de symbolische modusWe gebruiken letters om aan te geven wie door de wijziging wordt beïnvloed (u voor gebruiker, g voor groep, o voor anderen, a voor iedereen) en symbolen zoals '+' om machtigingen toe te voegen of '-' om ze te verwijderen. Als je bijvoorbeeld wilt dat de groep naar een bestand kan schrijven, gebruik je: chmod g+w archivo.txtHet is een zeer flexibele manier om Pas de machtigingen naar behoefte aan. zonder de rest van de configuratie te wijzigen.
El octale modus Het maakt gebruik van getallen gebaseerd op het binaire systeem. Elke machtiging heeft een waarde: lezen is 4, schrijven is 2 en uitvoeren is 1. Door deze waarden op te tellen, krijgen we een getal van 0 tot 7. Bijvoorbeeld, de waarde 7 (4+2+1) betekent volledige toegang, terwijl 5 (4+0+1) lezen en uitvoeren betekent. Een commando zoals chmod 755 carpeta subsidies volledige controle voor de eigenaar en alleen lees-/uitvoerrechten voor de groep en anderen.
Het beheren van de woning met chown en chgrp.
Soms werkt het bestand niet, zelfs als de machtigingen correct zijn, omdat de eigenaar niet de juiste persoon is. Dat is waar [de juiste tool/app] van pas komt. chown (eigenaar wijzigen). Deze opdracht maakt het mogelijk om (eigenaar wijzigen). Gebruiker en groep wijzigen die het bestand bezit. De meest gebruikelijke syntax is chown usuario:grupo archivo.
Op webservers is het heel gebruikelijk dat bestanden eigendom zijn van de servergebruiker (zoals bijvoorbeeld www-data (in Apache of Nginx) zodat de website naar bepaalde mappen kan schrijven. Als u deze wijziging wilt toepassen op een map en alles wat zich daarin bevindt, moet u de volgende methode gebruiken: recursieve optie -Rbijvoorbeeld hardlopen chown -R www-data:www-data /var/www/html.
Gebruikers- en groepsbeheer in het systeem
Om al het bovenstaande te begrijpen, moeten we eerst bepalen wie die gebruikers zijn. In Linux kunnen we commando's gebruiken zoals useradd o adduser om accounts aan te maken, en passwd om ze een sleutel toe te wijzen. Al deze informatie wordt opgeslagen in cruciale bestanden zoals / Etc / passwd (accountgegevens) en / Etc / shadow (versleutelde wachtwoorden).
Groepen zijn essentieel om te voorkomen dat je machtigingen één voor één moet toewijzen. groupadd we hebben de groep opgericht en met usermod -aG We voegen er gebruikers aan toe. Op deze manier kunnen we ze geven collectieve vergunningen voor een werkteam in een specifieke map, zonder de beveiliging van de rest van het systeem in gevaar te brengen.
Zweetpartijen en verhoogde privileges
Het is niet aan te raden om altijd als root te werken, omdat een fout het hele systeem kan wissen. Hiervoor gebruiken we... sudowaardoor we commando's met supergebruikersrechten kunnen uitvoeren. De configuratie van wie wat mag doen, is te vinden in het bestand. / Etc / sudoersdie altijd bewerkt moet worden met het commando visudo voor Het oplossen van sudo-fouten in Linux en syntaxfouten vermijden die ervoor zouden zorgen dat we niet in het systeem terechtkomen.
Beveiliging en best practices voor servers
Een veelgemaakte fout onder beginners is het toekennen van 777-rechten aan een map wanneer iets niet werkt. Dit maakt de deur wijd open voor elke aanvaller. Idealiter volg je het principe van minimale bevoegdheden : verleen alleen de minimaal noodzakelijke toegang om de taak te voltooien.
In de regel geldt dat bestanden de rechten 644 moeten hebben (de eigenaar kan schrijven, iedereen anders kan alleen lezen) en mappen de rechten 755. Voor zeer gevoelige bestanden, zoals SSH-sleutels of met een wachtwoord beveiligde configuratiebestanden (.env), is de juiste instelling 600, zodat niemand anders dan de eigenaar de inhoud kan lezen.
Als je de gevreesde 403 Forbidden-fout op je website tegenkomt, is dat hoogstwaarschijnlijk te wijten aan een probleem met eigendom of machtigingen. Controleer voordat je ingrijpende wijzigingen aanbrengt of de webserver de eigenaar is van de bestanden en of de mappen uitvoerrechten hebben om navigatie toe te staan.
Een goed beheer van gebruikers, groepen en machtigingen met behulp van tools zoals chmod en chown is de eerste verdedigingslinie voor elke Linux-server. Van het gebruik van het umask-masker om standaardmachtigingen te definiëren tot recursief directorybeheer en strikte controle van sudoers: elke aanpassing draagt bij aan het creëren van een stabiele en veerkrachtige omgeving tegen potentiële indringers, waardoor systeemprocessen en menselijke gebruikers naast elkaar kunnen bestaan zonder de gegevensintegriteit in gevaar te brengen.
Gepassioneerd schrijver over de wereld van bytes en technologie in het algemeen. Ik deel mijn kennis graag door te schrijven, en dat is wat ik in deze blog ga doen: je de meest interessante dingen laten zien over gadgets, software, hardware, technologische trends en meer. Mijn doel is om u te helpen op een eenvoudige en onderhoudende manier door de digitale wereld te navigeren.




