Hur man ändrar Sudo Password Timeout i Mac OS X
Avancerade användare som spenderar en hel del tid på kommandoraden kanske vill justera sitt sudo-lösenords utgång för att vara säkrare (eller mindre säkra, genom att förlänga tidsgränsen för lösenordsperioden). Vanligtvis innebär detta att man tar bort eventuella lösenords-timeout så att standardlösenordscachen på fem minuter överges, vilket kräver att root-lösenordet anges när som helst ett kommando har prefixet sudo.
För att ändra eller ta bort sudo-lösenordets anståndsperiod kommer vi att använda visudo, detta trick gäller för Mac OS X såväl som linux.
Detta är verkligen bara för avancerade kommandoradsanvändare. Om du inte vet vad du gör med sudo, vim eller visudo, och inte är särskilt erfaren på kommandoraden, försök inte ändra något av detta. En trasig sudoers-fil kan leda till en stor mängd problem och problem, och kan kräva återställning från en säkerhetskopia. Justera denna inställning uteslutande på egen risk.
Justera Sudo Password Expiration Timeout
Från kommandoraden kommer vi att redigera sudoers-filen med hjälp av visudo – försök inte redigera /etc/sudoers utan visudo
sudo visudo
Använd piltangenterna för att navigera till slutet av sudoers-filen och ange sedan följande syntax på en ny rad (inkludera gärna en kommentar genom att föregå med en hashså att du kan referera till den senare)
Defaults timestamp_timeout=0
I det här exemplet använder vi '0' som respitperiod för timeout, vilket betyder att sudo bara kommer att fungera per kommando och att det inte kommer att finnas någon lösenordscache under fem minuter som standard. Numret är i minuter, så du kan ställa in det till vad du vill, men för ändamålen här använder vi 0 för att ta bort sudo-lösenordets respitperiod, du kan också gå åt andra hållet med '-1' vilket inte rekommenderas under alla omständigheter, vilket gör sudo-perioden oändlig.
När du är klar, tryck på Escape-tangenten (ESC) följt av kolon : och skriv sedan 'wq' utan citattecken följt av returtangenten för att spara och avsluta ändringarna från visudo.
Uppdatera terminalen och du kommer nu att ha noll frist med sudo, prova det genom att redigera hosts-filen eller utföra någon annan uppgift som kräver root-åtkomst, och du kommer att upptäcka nästa kommando omedelbart kräver rotauktorisering igen.
Du kan också justera timeouts för specifika användare, vilket är användbart om du har lagt till en användare till sudoers och vill ställa in en specifik respitperiod för lösenord för ett enskilt användarkonto. Detta görs genom att lägga till ett användarnamn till standardsträngen så här:
Defaults:user timestamp_timeout=XX
Kom ihåg att du också kan använda 'sudo -k' för en tillfällig justering av sudo-lösenordstimeout, vilket kan vara användbart för användare som har ställt in timeouten till 0 för högre säkerhet.
Det finns en hel del mer att lära sig om sudoers-filen som kan vara relevant för avancerade användare på Mac OS X och linux-plattformar, det är användbart att utforska man-sidan och erbjuder många andra alternativ.