Een service maskeren met de systemctl-opdracht

Een Service Maskeren Met De Systemctl Opdracht



Systemctl is een opdrachtregelhulpprogramma dat wordt gebruikt om systeemservices te beheren. Het heeft een verscheidenheid aan opties om de service op Linux te beheren, zoals het starten van een service, het stoppen ervan, het in- en uitschakelen ervan. Er is nog een andere optie genaamd a masker .

Het maskeren van een systemd-service betekent dat de service is uitgeschakeld en niet kan worden ingeschakeld, zelfs niet door het systeem of via een handmatig commando. Maskeren is een sterkere vorm van uitschakelen.

In deze handleiding zal ik je laten zien hoe je een service op Linux kunt maskeren met systemctl, en hoe je deze kunt ontmaskeren. Bovendien zal ik de belangrijkste verschillen bespreken tussen een gemaskerde dienst en een gehandicapte dienst.







Waarschuwing: Op Linux zijn de services onderling afhankelijk. Omdat het maskeren van de service deze uitschakelt en elke activering verbiedt, moet u deze daarom voorzichtig gebruiken.



Voordat we verder gaan, moeten we eerst het mechanisme achter de gemaskerde service begrijpen.



Wat is een gemaskerde dienst

Een gemaskeerde service is een permanent uitgeschakelde service die verhindert dat deze door het systeem of de systeembeheerder wordt ingeschakeld. Systeembeheerders gebruiken over het algemeen de masker optie om de defecte of conflicterende services te deactiveren. Het wordt echter aanbevolen om deze optie met voorzichtigheid te gebruiken, omdat het maskeren van een cruciale systeemservice hindernissen kan opleveren bij het opstarten van het systeem.





Hoe u gemaskerde services kunt vermelden

Om gemaskeerde services op Linux weer te geven, gebruikt u de lijst-eenheden optie met de genoemde status gemaskeerd.

systemctl lijsteenheden --staat = gemaskerd



Een service maskeren

De opdracht systemctl kan worden gebruikt om elke service met de extensie masker keuze. De algemene syntaxis van de opdracht wordt hieronder vermeld.

sudo systemctl-masker [ Servicenaam ]

De maskeroptie in de bovenstaande syntaxis maakt in wezen een symbolische link naar de service in het /etc/systemd/system .

Er kunnen ook één of meerdere diensten vermeld worden, gescheiden door een spatie.

Laten we de SSH-service maskeren met behulp van de bovenstaande syntaxis.

sudo systemctl mask ssh.service

Om de status van een gemaskeerde service te controleren, gebruikt u de –staat= optie met systemctl lijsteenheden .

Als u probeert de service te starten, ontvangt u een uitvoer waarin staat dat het apparaat is gemaskeerd.

Opmerking: U kunt een service die is gemaakt in de /etc/systemd/system map. Omdat services in deze directory essentieel zijn voor systeembewerkingen, kan het maskeren ervan de normale systeemfunctionaliteit schaden. Het uitschakelen van deze services staat echter gelijk aan het maskeren ervan.

Hoe u een service tijdelijk kunt maskeren

Een service kan worden gemaskeerd tot de volgende keer opstarten door gebruik te maken van de –looptijd keuze.

sudo systemctl-masker [ Servicenaam ] --looptijd

Het creëert een symbolische link van de dienst in de /run/systemd/system map. Als de symbolische link van de service al aanwezig is in de directory, is de service ontworpen om tijdelijk te worden gemaskeerd.

Hoe u een dienst kunt ontmaskeren

Gebruik de opdracht systemctl met de ontmaskeren optie om de maskerbeperkingen te verwijderen. Deze opdracht accepteert het pad van de service niet. Daarom hoeven alleen servicenamen te worden vermeld.

sudo systemctl ontmaskeren [ Servicenaam ]

Mogelijk moet u het systeem opnieuw opstarten nadat u de service heeft ontmaskerd.

Verschil tussen een gemaskerde service en een gehandicapte service

Een uitgeschakelde service kan door het systeem en met handmatige opdrachten worden ingeschakeld en gestart. De gemaskeerde service kan echter niet worden ingeschakeld, noch door het systeem, noch door handmatige interactie.

Wanneer een service wordt uitgeschakeld, wordt er een symbolische link gemaakt in de /etc/systemd/system directory wordt verwijderd en de service wordt niet geactiveerd tijdens het opstarten. Maar het kan worden geactiveerd door de afhankelijke services.

Aan de andere kant is de gemaskerde dienst gekoppeld aan de /dev/null waardoor het permanent onbruikbaar wordt.

Merk op dat de /ontwikkelaar map bevat de bestanden van de blokapparaten. De /dev/null is een virtueel apparaat dat alles verwijdert dat erop is geschreven. Het wordt over het algemeen gebruikt om de uitvoer van stdout en stderr te verwijderen.

Conclusie

Als u een service permanent wilt uitschakelen, gebruikt u de opdracht systemctl mask. Een gemaskeerde service kan zelfs door het systeem niet worden ingeschakeld. In deze handleiding heb ik besproken hoe je een service permanent en tijdelijk kunt maskeren. Bovendien noemden we ook een methode om een ​​dienst te ontmaskeren en de belangrijkste verschillen tussen een gemaskerde en een uitgeschakelde dienst.