8 manieren om te tweaken en Sudo te configureren op Ubuntu
Zoals de meeste dingen op Linux, is de opdracht sudo erg configureerbaar. U kunt sudo specifieke opdrachten laten uitvoeren zonder om een wachtwoord te vragen, specifieke gebruikers beperken tot alleen goedgekeurde opdrachten, logopdrachten die met sudo worden uitgevoerd en meer.
Het gedrag van de sudo-opdracht wordt beheerd door het bestand / etc / sudoers op uw systeem. Deze opdracht moet worden bewerkt met de opdracht visudo, die een syntaxiscontrole uitvoert om te voorkomen dat het bestand per ongeluk wordt verbroken.
Geef gebruikers op met Sudo-machtigingen
Het gebruikersaccount dat u maakt tijdens de installatie van Ubuntu is gemarkeerd als een beheerdersaccount, wat betekent dat het sudo kan gebruiken. Alle extra gebruikersaccounts die u na de installatie maakt, kunnen beheerders- of standaardgebruikersaccounts zijn - standaardgebruikersaccounts hebben geen sudo-rechten.
U kunt gebruikersaccounts grafisch beheren vanuit Ubuntu's Gebruikersaccounts-tool. Om dit te openen, klikt u op uw gebruikersnaam in het paneel en selecteert u Gebruikersaccounts of zoekt u naar Gebruikersaccounts in het dashboard.
Maak Sudo Vergeet je wachtwoord
Standaard bewaart sudo uw wachtwoord gedurende 15 minuten nadat u het hebt ingevoerd. Dit is de reden waarom je maar één keer je wachtwoord hoeft te typen als je meerdere opdrachten met sudo snel achter elkaar uitvoert. Als u iemand anders uw computer laat gebruiken en u wilt dat sudo het wachtwoord vraagt wanneer het daarna wordt uitgevoerd, voert u de volgende opdracht uit en zal sudo uw wachtwoord vergeten:
sudo -k
Vraag altijd om een wachtwoord
Als u steeds vaker wordt gevraagd wanneer u sudo gebruikt, bijvoorbeeld als andere mensen regelmatig toegang hebben tot uw computer, kunt u het wachtwoordherinneringsgedrag volledig uitschakelen.
Deze instelling bevindt zich, net als andere sudo-instellingen, in het bestand / etc / sudoers. Voer de visudo-opdracht uit in een terminal om het bestand te openen voor bewerking:
sudo visudo
Ondanks zijn naam staat dit commando standaard op de nieuw-gebruikersvriendelijke nano-editor in plaats van de traditionele vi-editor op Ubuntu.
Voeg de volgende regel toe onder de andere Defaults-regels in het bestand:
Standaardinstellingen timestamp_timeout = 0
Druk op Ctrl + O om het bestand op te slaan en druk vervolgens op Ctrl + X om Nano te sluiten. Sudo vraagt nu altijd om een wachtwoord.
Wijzig de wachtwoordtime-out
Om een andere time-out voor het wachtwoord in te stellen - een langere time-out, zoals 30 minuten of een kortere tijd, zoals 5 minuten - volgt u de bovenstaande stappen maar gebruikt u een andere waarde voor timestamp_timeout. Het nummer komt overeen met het aantal minuten dat sudo je wachtwoord zal onthouden. Om sudo je wachtwoord 5 minuten te laten onthouden, voeg je de volgende regel toe:
Standaard timestamp_timeout = 5
Vraag nooit om een wachtwoord
Je kunt sudo ook nooit om een wachtwoord vragen - zolang je ingelogd bent, zal elke opdracht die je voorvoegt met sudo worden uitgevoerd met root-rechten. Om dit te doen, voeg je de volgende regel toe aan je sudoers-bestand, waarbij gebruikersnaam jouw gebruikersnaam is:
gebruikersnaam ALL = (ALL) NOPASSWD: ALL
U kunt ook de% sudo-regel wijzigen, dat wil zeggen de regel waarmee alle gebruikers in de sudo-groep (ook wel beheerders genoemd) sudo kunnen gebruiken om alle beheerdersgebruikers geen wachtwoorden te laten gebruiken:
% sudo ALL = (ALL: ALL) NOPASSWD: ALL
Voer specifieke opdrachten uit zonder wachtwoord
U kunt ook specifieke opdrachten opgeven die nooit een wachtwoord vereisen wanneer het met sudo wordt uitgevoerd. In plaats van "ALL" te gebruiken na NOPASSWD hierboven, geeft u de locatie van de opdrachten op. Met de volgende regel kan uw gebruikersaccount bijvoorbeeld de opdrachten apt-get en shutdown zonder wachtwoord uitvoeren.
gebruikersnaam ALL = (ALL) NOPASSWD: / usr / bin / apt-get, / sbin / shutdown
Dit kan met name handig zijn bij het uitvoeren van specifieke opdrachten met sudo in een script.
Sta een gebruiker toe om alleen specifieke commando's uit te voeren
Hoewel u specifieke opdrachten op een zwarte lijst kunt zetten en kunt voorkomen dat gebruikers ze uitvoeren met sudo, is dit niet erg effectief. U kunt bijvoorbeeld opgeven dat een gebruikersaccount de afsluitopdracht niet kan uitvoeren met sudo. Maar dat gebruikersaccount kan de cp-opdracht uitvoeren met sudo, een kopie van de afsluitopdracht maken en het systeem afsluiten met behulp van de kopie.
Een effectievere manier is om specifieke opdrachten op de witte lijst te plaatsen. U kunt bijvoorbeeld een standaardgebruikersaccount toestemming geven om de opdrachten apt-get en shutdown te gebruiken, maar niet meer. Voeg hiervoor de volgende regel toe, waarbij standaardgebruiker de gebruikersnaam van de gebruiker is:
standaardgebruiker ALL = / usr / bin / apt-get, / sbin / shutdown
De volgende opdracht zal ons vertellen welke commando's de gebruiker met sudo kan uitvoeren:
sudo -U standaardgebruiker -l
Registreren Sudo Access
U kunt alle sudo-toegang registreren door de volgende regel toe te voegen. / var / log / sudo is slechts een voorbeeld; u kunt elke gewenste logbestandslocatie gebruiken.
Defaults logfile = / var / log / sudo
Bekijk de inhoud van het logbestand met een opdracht als deze:
sudo cat / var / log / sudo
Houd er rekening mee dat, als een gebruiker onbeperkte sudo-toegang heeft, die gebruiker de mogelijkheid heeft om de inhoud van dit bestand te verwijderen of aan te passen. Een gebruiker kan ook toegang krijgen tot een root-prompt met sudo en opdrachten uitvoeren die niet zouden worden vastgelegd. De logfunctie is vooral handig in combinatie met gebruikersaccounts die beperkte toegang hebben tot een subset van systeemopdrachten.