Er zijn verschillende Linux-opdrachten die kunnen worden gebruikt om een vervaldatum voor een wachtwoord in te stellen, afhankelijk van de distributie en beschikbare tools. Hier is een overzicht van de meest voorkomende:
1. `chage` (Vervalgegevens van gebruikerswachtwoord wijzigen)
* Dit is het meest gebruikelijke en aanbevolen hulpmiddel voor het beheren van de vervaldatums van wachtwoorden. Hiermee kunt u verschillende parameters voor wachtwoordveroudering instellen, waaronder:
* Vervaldatum wachtwoord: De datum waarop het wachtwoord moet worden gewijzigd.
* Minimale wachtwoordleeftijd: Het aantal dagen dat een gebruiker een wachtwoord moet bewaren voordat het wordt gewijzigd.
* Maximale wachtwoordleeftijd: Het aantal dagen dat een wachtwoord geldig is.
* Waarschuwingsdagen: Het aantal dagen vóór de vervaldatum om de gebruiker te waarschuwen.
* Inactieve dagen: Het aantal dagen nadat een wachtwoord verloopt voordat het account wordt uitgeschakeld.
* Syntaxis:
``` bash
chage [opties] gebruikersnaam
```
* Voorbeelden:
* Stel de vervaldatum in op een specifieke datum (JJJJ-MM-DD):
``` bash
sudo chage --expiredate 2024-12-31 gebruikersnaam
```
* Stel de maximale wachtwoordduur in op 90 dagen:
``` bash
sudo chage --maxdays 90 gebruikersnaam
```
* Stel de minimale wachtwoordduur in op 7 dagen:
``` bash
sudo chage --mindays 7 gebruikersnaam
```
* Waarschuwingsperiode instellen op 14 dagen:
``` bash
sudo chage --warndays 14 gebruikersnaam
```
* Schakel wachtwoordveroudering uit (effectief geen vervaldatum):
``` bash
sudo chage --maxdays -1 gebruikersnaam
```
* Informatie over wachtwoordveroudering voor een gebruiker bekijken:
``` bash
chage -l gebruikersnaam
```
* Belangrijke opmerkingen:
* Voor `chage` zijn doorgaans rootrechten vereist (gebruik `sudo`).
* Het commando `chage` wijzigt het schaduwwachtwoordbestand (`/etc/shadow`), dus wees voorzichtig.
* De `--expiredate` optie stelt de *absolute* vervaldatum in. Met de optie `--maxdays` wordt de *relatieve* maximale wachtwoordduur ingesteld (vanaf de laatste wachtwoordwijziging). Het gebruik van `--expiredate` heeft over het algemeen de voorkeur voor het instellen van een specifieke vervaldatum.
2. `passwd` (Gebruikerswachtwoord wijzigen)
* Hoewel het commando `passwd` voornamelijk wordt gebruikt voor het wijzigen van wachtwoorden, kan het *impliciet* het verlopen van het wachtwoord beïnvloeden. Het werkt met name de datum van de "laatste wachtwoordwijziging" bij, die wordt gebruikt in combinatie met de maximale wachtwoordduur gedefinieerd door 'chage'.
* Syntaxis:
``` bash
sudo passwd-gebruikersnaam
```
* Hoe het verband houdt met de vervaldatum:
* Wanneer een gebruiker zijn wachtwoord wijzigt met `passwd`, wordt de "laatst gewijzigde" datum in `/etc/shadow` bijgewerkt. Als er een maximale wachtwoordduur is ingesteld (met behulp van `chage --maxdays`), berekent het systeem de vervaldatum op basis van deze "laatst gewijzigde" datum en de maximale leeftijd.
* Beperkingen:
* Alleen `passwd` *kan* niet direct een specifieke vervaldatum instellen. Het werkt alleen de wijzigingsdatum van het wachtwoord bij.
* U moet nog steeds `chage` gebruiken om het wachtwoordverouderingsbeleid te configureren (min./max. dagen, waarschuwingsdagen).
3. `usermod` (Gebruikersaccount wijzigen)
* `usermod` is een krachtig commando voor het wijzigen van de eigenschappen van gebruikersaccounts. Het kan worden gebruikt om de vervaldatum van de account in te stellen. Dit is *anders* dan het verlopen van het wachtwoord. Het verlopen van het account betekent dat het gebruikersaccount zelf na die datum onbruikbaar wordt.
* Syntaxis:
``` bash
sudo usermod -e JJJJ-MM-DD gebruikersnaam
```
* Voorbeeld:
* Stel de vervaldatum van het account in op 31-12-2024:
``` bash
sudo usermod -e 2024-12-31 gebruikersnaam
```
* Belangrijke overwegingen:
* Dit is *niet* hetzelfde als het verlopen van een wachtwoord. Een account kan verlopen, zelfs als het wachtwoord dat niet is.
* Als u zowel een wachtwoordvervaldatum (met `chage`) als een accountvervaldatum (met `usermod -e`) instelt, zal het account *vroeger* verlopen op welke datum dan ook.
* Om de vervaldatum van het account te verwijderen:
``` bash
sudo usermod -e "" gebruikersnaam # Lege tekenreeks verwijdert de vervaldatum
```
Welk commando moet ik gebruiken?
* Voor het verlopen van het wachtwoord (het wachtwoord zelf wordt na een bepaalde tijd ongeldig): Gebruik `chage`. Dit is de meest gebruikelijke en aanbevolen aanpak voor het beheren van wachtwoordveroudering.
* Voor het verlopen van een account (het gebruikersaccount zelf wordt na een bepaalde tijd onbruikbaar): Gebruik `usermod -e`. Dit is handig voor tijdelijke accounts of wanneer u een account op een bepaalde datum wilt uitschakelen.
* `wachtwoord` wordt gebruikt voor het *wijzigen* van het wachtwoord, wat vervolgens wordt verwerkt in het bestaande beleid voor het verlopen van het wachtwoord (ingesteld door `chage`).
Voorbeeldscenario:een wachtwoordverloop van 90 dagen instellen voor een gebruiker met de naam "john":
1. Stel de maximale wachtwoordduur in op 90 dagen:
``` bash
sudo chage --maxdays 90 john
```
2. (Optioneel) Stel een waarschuwingsperiode van 14 dagen in:
``` bash
sudo chage --warndays 14 john
```
3. (Optioneel) Wijzig het wachtwoord (om de "laatst gewijzigde" datum opnieuw in te stellen):
``` bash
sudo passwd john
```
Vanaf het moment dat `john` hun wachtwoord wijzigt, hebben ze 90 dagen de tijd voordat ze worden gevraagd het wachtwoord opnieuw te wijzigen. Veertien dagen vóór die deadline van 90 dagen ontvangen ze een waarschuwingsbericht.
Beveiligingsoverwegingen:
* Beleid voor wachtwoordveroudering: Implementeer een krachtig beleid voor wachtwoordveroudering (gepaste minimum-/maximumleeftijd, waarschuwingsperioden) om de beveiliging te verbeteren.
* Wachtwoordcomplexiteit: Dwing sterke vereisten voor wachtwoordcomplexiteit af (minimale lengte, hoofdletters en kleine letters, speciale tekens) om het moeilijker te maken wachtwoorden te kraken.
* Regelmatige controle: Controleer regelmatig het beleid voor gebruikersaccounts en wachtwoordveroudering om er zeker van te zijn dat ze geschikt en effectief zijn.
* Authenticatiemethoden: Overweeg het gebruik van multi-factor authenticatie (MFA) voor kritieke accounts om een extra beveiligingslaag toe te voegen.
Kies de opdracht die het beste bij uw specifieke behoeften past en wees altijd voorzichtig bij het wijzigen van gebruikersaccountinstellingen. Vergeet niet de documentatie van uw Linux-distributie te raadplegen voor de meest nauwkeurige en actuele informatie. |