Sudo komandų elgesį kontroliuoja failas / etc / sudoers jūsų sistemoje. Ši komanda turi būti redaguojama naudojant komandą visudo, kuri atlieka sintaksės patikrinimą, kad nebūtų netyčia nutrauktas failas.
Nurodykite naudotojus su "Sudo" leidimais
Vartotojo abonementas, sukurtas diegdamas Ubuntu, pažymėtas kaip administratoriaus paskyra, taigi jis gali naudoti sudo. Bet kokios papildomos naudotojo paskyros, sukurtos po diegimo, gali būti administratoriaus arba standartinės vartotojo abonementai. Standartinės vartotojo paskyros neturi sudo leidimų.
Jūs galite valdyti naudotojo paskyros tipus grafiškai iš Ubuntu vartotojo abonementų įrankio. Jei norite jį atidaryti, spustelėkite savo vartotojo vardą skydelyje ir pasirinkite "Vartotojo abonementai" arba ieškokite Vartotojo abonementų brūkšnys.
Padaryti Sudo pamiršti savo slaptažodį
Pagal numatytuosius nustatymus, sudo prisimena slaptažodį po 15 minučių po jo įvedimo. Štai kodėl vieną kartą reikia įvesti tik vieną kartą, kai greitai paleidžiate kelias komandas su sudo. Jei ketinate leisti kitam asmeniui naudotis savo kompiuteriu ir norite, kad sudo paprašytų slaptažodžio paleidus kitą, paleiskite šią komandą ir sudo pamiršite slaptažodį:
sudo –k
Visada prašykite slaptažodžio
Jei norėtumėte būti paraginti kiekvieną kartą, kai naudojate sudo - pavyzdžiui, jei kiti žmonės reguliariai turi prieigą prie jūsų kompiuterio, galite visiškai išjungti slaptažodžio įsimenamą elgesį.
Šis nustatymas, kaip ir kiti sudo parametrai, yra failo / etc / sudoers. Vykdykite visudo komandą terminale, norėdami atidaryti redagavimo failą:
sudo visudo
Nepaisant jo pavadinimo, ši komanda pagal numatytuosius nustatymus naudojama naujai patogiam nano redaktoriui vietoj tradicinės "vi" redaktoriaus Ubuntu.
Įrašykite šią eilutę žemiau kitų failo numatytųjų eilučių:
Defaults timestamp_timeout=0
Pakeiskite Slaptažodžio laiko pabaigą
Jei norite nustatyti skirtingą slaptažodžio atidėjimo laiką - ilgiau, pvz., 30 minučių arba trumpesnį, pvz., 5 minutes, atlikite aukščiau pateiktus veiksmus, bet naudokite kitą reikšmę timestamp_timeout. Skaičius atitinka skaičių minučių, kai sudo prisimins jūsų slaptažodį. Norėdami sudo prisiminti savo slaptažodį 5 minutes, pridėkite šią eilutę:
Default timestamp_timeout=5
Niekada neprašykite slaptažodžio
Taip pat galite sudo niekada neprašyti slaptažodžio - tol, kol esate prisijungęs, kiekviena komanda, kurią prefiksuosite su sudo, paleidžiama su root teisėmis. Norėdami tai padaryti, pridėkite šią eilutę į failą sudoers, kur naudotojo vardas yra jūsų naudotojo vardas:
username ALL=(ALL) NOPASSWD: ALL
%sudo ALL=(ALL:ALL) NOPASSWD:ALL
Vykdyti specialias komandas be slaptažodžio
Taip pat galite nurodyti konkrečias komandas, kurios niekada nereikės slaptažodžio paleisti su sudo. Užuot naudodamiesi "ALL" po "NOPASSWD", nurodykite komandų vietą. Pavyzdžiui, ši eilutė leis jūsų vartotojo abonementui paleisti apt-get ir išjungimo komandas be slaptažodžio.
username ALL=(ALL) NOPASSWD: /usr/bin/apt-get,/sbin/shutdown
Tai gali būti ypač naudinga vykdant konkrečias komandas su sudo scenarijuje.
Leisti vartotojui paleisti tik konkrečius komandus
Nors galite juodoti sąrašą konkrečių komandų ir užkirsti kelią vartotojams paleisti jas su sudo, tai nėra labai veiksminga. Pavyzdžiui, galite nurodyti, kad vartotojo abonementas negalės paleisti komandą shutdown su sudo. Bet ši vartotojo sąskaita su sudo galėjo paleisti cp komandą, sukurti komandą "shutdown" kopiją ir išjungti sistemą naudojant kopiją.
Veiksmingesnis būdas yra konkrečių komandų baltojo sąrašo sudarymas. Pavyzdžiui, galėtumėte suteikti įgaliojimą naudoti standartinę vartotojo paskyrą naudoti "apt-get" ir "shutdown" komandas, bet ne daugiau. Norėdami tai padaryti, pridėkite šią eilutę, kurioje standartinis naudotojas yra naudotojo vardas:
standarduser ALL=/usr/bin/apt-get,/sbin/shutdown
sudo -U standarduser –l
Prisijungti prie "Sudo Access"
Galite prisijungti prie visų prieigos prie "sudo", pridedant šią eilutę. / var / log / sudo yra tik pavyzdys; galite naudoti bet kurią failo vietą, kuri jums patinka.
Defaults logfile=/var/log/sudo
sudo cat /var/log/sudo