From Ever changing code
Sudo - grant a user root privilages
sudo usermod -aG sudo nameofuser # enough for Ubuntu, logout required sudo passwd root # sets root password, so it can be used to login
Edit safely /etc/sudoers file
User rules fields explained
# The first ALL is the users allowed # | The second one is the hosts; on all hosts (if you distribute the same sudoers file to many computers) # | | # piotr ALL=(ALL:ALL) ALL # / | # / The last one is the commands allowed # The third one is the user as you are running the command
In examples below names beginning with a "%" indicate group names in /etc/group
root ALL=(ALL) ALL # standard root entry piotr ALL=(ALL) NOPASSWD: ALL # user can run as root without password piotr ALL= NOPASSWD: ALL # piotr will not be prompted for password, just another format to above piotr ALL= NOPASSWD: /usr/bin/service # piotr will not be prompt for password while running 'service' command %wheel ALL=(ALL) NOPASSWD: ALL # members of 'wheel' group can run without a password
If you find a number of entries applied to your user, the last entry takes precedence
sudo -l # list all of the rules in the /etc/sudoers that apply to your user sudo -k # clear the timer
Add user to the elevated privileges group
In Ubuntu adding a user to admin group will grant root user level access. Adding the user to sudo group will allow to execute any command as root user.
sudo usermod -aG nameofgroup nameofuser
In RedHat/CentOS add an user to a group wheel to enable sudo commands execution as root user.
sudo usermod -aG wheel nameofuser
In both examples above you need to login again for changes to be applied.
Disable sudo password timeout
Default setting to the sudoers file. Doing it directly is not advised, use
sudo visudo Defaults timestamp_timeout=-1