I'm wondering about the root account being disabled in Ubuntu and whether it makesany difference to security. If someone hacks into your PC they can type:
user@user:/home$ sudo -i root@r00t:~# Voila, i am root and I don't have root password, right?
That's an example from my PC , up , so why exactly disable it? For many years I had no doubt about disabled root but now I have this in my mind more and more...
If anyone already hacked into your account/PC via IP or however, what's the difference if root is disabled/enabled if they just have to type
sudo -i to get root?
Here's a quote from a post here:
In Linux there is a special account called root. By default it is locked in Ubuntu but you can enable the root account.
This is normally not a good idea however and you should consider very carefully before enabling the root login.
There are several good reasons not to log in as root but to use
- Users don't have to remember an extra password (i.e. the root password), which they are likely to forget (or write down so anyone can crack into their account easily).
- It avoids the "I can do anything" interactive login by default (e.g. the tendency by users to login as an "Administrator" user in Microsoft Windows systems), you will be prompted for a password before major changes can happen, which should make you think about the consequences of what you are doing.
sudoadds a log entry of the command(s) run (in
/var/log/auth.log). If you mess up, you can always go back and see what commands were run. It is also nice for auditing.
- Every cracker trying to brute-force their way into your box will know it has an account named Root and will try that first. What they don't know is what the usernames of your other users are. Since the Root account password is locked, this attack becomes essentially meaningless, since there is no password to crack or guess in the first place.
- Allows easy transfer for admin rights, in a short term or long term period, by adding and removing users from groups, while not compromising the Root account. sudo can be setup with a much more fine-grained security policy.
This is discussed in more detail in the RootSudo Comunity Documentation
If you have a number of commands which would normally require sudo you can type
sudo -ibefore the first command then exit after the last to avoid repeatedly typing sudo. To run a GUI application with root priviledges press ALT+F2 and enter gksu or gksudo followed by the name of your program (unless you are using the KDE desktop in which case the command is kdesu)
For example gksu nautilus runs the file manager with root privileges.
As you can see it is almost never necessary to enable the root login. That said to enable the root login all that is required is to set a root password
sudo passwd root
and set a password. You will then be able to login as root but for all the reasons I have given above and more I would not recommend you do it.