Linux Command Line Tutorial For Beginners 13 - sudo command
Inhoudsopgave:
- Sudo installeren (sudo-opdracht niet gevonden)
- Installeer Sudo op Ubuntu en Debian
- Installeer Sudo op CentOS en Fedora
- Gebruiker toevoegen aan Sudoers
- Hoe Sudo te gebruiken
- Time-out wachtwoord
- Voer een opdracht uit als een andere gebruiker dan root
- Hoe om te leiden met Sudo
- Conclusie
Met de opdracht sudo kunt u programma's uitvoeren als een andere gebruiker, standaard de rootgebruiker. Als u veel tijd doorbrengt op de opdrachtregel, is sudo een van de opdrachten die u vrij vaak zult gebruiken.
Het gebruik van sudo in plaats van inloggen als root is veiliger omdat u beperkte beheerdersrechten kunt verlenen aan individuele gebruikers zonder dat ze het rootwachtwoord kennen.
In deze zelfstudie leggen we uit hoe u de opdracht
sudo
.
Sudo installeren (sudo-opdracht niet gevonden)
Het sudo-pakket is vooraf geïnstalleerd op de meeste Linux-distributies.
Om te controleren of het sudo-pakket op uw systeem is geïnstalleerd, opent u uw console, typt u
sudo
en drukt u op
Enter
. Als je sudo hebt geïnstalleerd, geeft het systeem een kort helpbericht weer, anders zie je zoiets als een
sudo command not found
.
Als sudo niet is geïnstalleerd, kunt u het eenvoudig installeren met behulp van de pakketbeheerder van uw distro.
Installeer Sudo op Ubuntu en Debian
Installeer Sudo op CentOS en Fedora
Gebruiker toevoegen aan Sudoers
Standaard is op de meeste Linux-distributies sudo-toegang verlenen net zo eenvoudig als het toevoegen van de gebruiker aan de sudo-groep die is gedefinieerd in het bestand
sudoers
. Leden van deze groep kunnen elk commando als root uitvoeren. De naam van de groep kan verschillen van distributie tot distributie.
Op RedHat gebaseerde distributies zoals CentOS en Fedora, is de naam van de sudo-groep
wheel
. De gebruiker toevoegen aan de groepsrun:
usermod -aG wheel username
Op Debian, Ubuntu en hun derivaten krijgen leden van de groep
sudo
sudo-toegang:
usermod -aG sudo username
Het root-gebruikersaccount in Ubuntu is standaard om veiligheidsredenen uitgeschakeld en gebruikers worden aangemoedigd om systeembeheertaken uit te voeren met sudo. De eerste gebruiker die door het Ubuntu-installatieprogramma is gemaakt, is al lid van de sudo-groep, dus als u Ubuntu uitvoert, is de kans groot dat de gebruiker waarmee u bent aangemeld zoals reeds is verleend met sudo-rechten.
Als u bijvoorbeeld wilt dat de gebruiker
linuxize
alleen de opdracht
mkdir
als sudo uitvoert, typt u:
sudo visudo
en voeg de volgende regel toe:
linuxize ALL=/bin/mkdir
Op de meeste systemen opent het
visudo
commando het bestand
/etc/sudoers
met de vim-teksteditor. Als je geen ervaring hebt met vim, bekijk dan ons artikel over het opslaan van een bestand en verlaat de vim-editor.
U kunt gebruikers ook toestaan sudo-opdrachten uit te voeren zonder een wachtwoord in te voeren:
linuxize ALL=(ALL) NOPASSWD: ALL
Hoe Sudo te gebruiken
De syntaxis voor de opdracht
sudo
is als volgt:
sudo OPTION.. COMMAND
De opdracht
sudo
heeft veel opties die het gedrag bepalen, maar meestal wordt
sudo
in de meest basale vorm gebruikt, zonder enige optie.
Om sudo te gebruiken, geeft u de opdracht gewoon een voorvoegsel met
sudo
:
sudo command
Waar
command
is de opdracht waarvoor u sudo wilt gebruiken.
Sudo zal het bestand
/etc/sudoers
en controleren of de aanroepende gebruiker sudo assessment heeft gekregen. De eerste keer dat u sudo in een sessie gebruikt, wordt u gevraagd het gebruikerswachtwoord in te voeren en wordt de opdracht als root uitgevoerd.
Als u bijvoorbeeld alle bestanden in de map
/root
wilt weergeven, gebruikt u:
sudo ls /root
password for linuxize:….bashrc.cache.config.local.profile
Time-out wachtwoord
Standaard vraagt sudo u om uw wachtwoord opnieuw in te voeren na vijf minuten inactiviteit van sudo. U kunt de standaardtime-out wijzigen door het bestand
sudoers
bewerken. Open het bestand met
visudo
:
sudo visudo
Stel de standaardtime-out in door de onderstaande regel toe te voegen, waarbij
10
de time-out is die is opgegeven in minuten:
Defaults timestamp_timeout=10
Defaults:user_name timestamp_timeout=10
Voer een opdracht uit als een andere gebruiker dan root
Er is een verkeerde perceptie dat
sudo
alleen wordt gebruikt om root-machtigingen te bieden aan een gewone gebruiker. Eigenlijk kun je
sudo
gebruiken om een opdracht als elke gebruiker uit te voeren.
Met de optie
-u
kunt u een opdracht uitvoeren als een opgegeven gebruiker.
In het volgende voorbeeld gebruiken we
sudo
om de opdracht
whoami
voeren als een gebruiker "richard":
sudo -u richard whoami
Met de opdracht
whoami
wordt de naam afgedrukt van de gebruiker die de opdracht uitvoert:
Hoe om te leiden met Sudo
sudo echo "test" > /root/file.txt
bash: /root/file.txt: Permission denied
Dit gebeurt omdat de omleiding "
>
" van de uitvoer wordt uitgevoerd onder de gebruiker waarbij u bent aangemeld, niet de gebruiker die is opgegeven door sudo. De omleiding vindt plaats voordat het
sudo
commando wordt aangeroepen.
Een oplossing is om een nieuwe shell als root aan te roepen met behulp van
sudo sh -c
:
sudo sh -c 'echo "test" > /root/file.txt'
Een andere optie is om de uitvoer als gewone gebruiker naar het
tee
commando te leiden, zoals hieronder weergegeven:
echo "test" | sudo tee /root/file.txt
Conclusie
U hebt geleerd hoe u de opdracht
sudo
en hoe u nieuwe gebruikers met sudo-rechten kunt maken.
Hoe een sudo-gebruiker op centos te maken
De opdracht sudo is ontworpen om gebruikers in staat te stellen programma's uit te voeren met de beveiligingsrechten van een andere gebruiker, standaard de rootgebruiker. In deze gids laten we u zien hoe u een nieuwe gebruiker met sudo-rechten op CentOS maakt.
Hoe een sudo-gebruiker op debian aan te maken
De opdracht sudo (kort voor Super-user do) is een programma waarmee gebruikers opdrachten kunnen uitvoeren met de beveiligingsrechten van een andere gebruiker, standaard de rootgebruiker. In deze gids laten we u zien hoe u een nieuwe gebruiker op een Debian-systeem kunt maken en deze sudo-toegang kunt geven.
Hoe een sudo-gebruiker op ubuntu te maken
In deze gids laten we u zien hoe u een nieuwe gebruiker op een Ubuntu-machine kunt maken en deze sudo-toegang kunt geven. U kunt dit gebruikersaccount vervolgens gebruiken om beheeropdrachten uit te voeren zonder dat u zich als rootgebruiker bij uw Ubuntu-server hoeft aan te melden.







