Jump to content

Superuser

From Wikipedia, the free encyclopedia
(Redirected fromRoot account)

In computing, thesuperuseris a special user account used forsystem administration.Depending on the operating system (OS), the actual name of this account might beroot,administrator,adminorsupervisor.In some cases, the actual name of the account is not the determining factor; on Unix-like systems, for example, the user with auser identifier(UID) of zero is the superuser, regardless of the name of that account;[1]and in systems which implement arole-based securitymodel, any user with the role of superuser (or its synonyms) can carry out all actions of the superuser account. Theprinciple of least privilegerecommends that most users and applications run under an ordinary account to perform their work, as a superuser account is capable of making unrestricted, potentially adverse, system-wide changes.

Unix and Unix-like

[edit]

InUnix-likecomputer OSes (such asLinux),rootis the conventional name of the user who has all rights or permissions (to all files and programs) in all modes (single- or multi-user). Alternative names includebaroninBeOSandavataron some Unix variants.[2]BSDoften provides atoor( "root" written backward) account in addition to a root account.[3]Regardless of the name, the superuser always has auser IDof 0. The root user can do many things an ordinary user cannot, such as changing the ownership of files and binding to networkportsnumbered below 1024.

The namerootmay have originated becauserootis the only user account with permission to modify theroot directoryof a Unix system. This directory was originally considered to be root'shome directory,[4]but the UNIXFilesystem Hierarchy Standardnow recommends that root's home be at/root.[5]The first processbootstrappedin aUnix-likesystem, usually calledinit,runs with root privileges. It spawns all other processes directly or indirectly, which inherit their parents' privileges. Only a process running as root is allowed to change its user ID to that of another user; once it has done so, there is no way back. Doing so is sometimes calleddropping root privilegesand is often done as a security measure to limit the damage from possible contamination of the process. Another case isloginand other programs that ask users for credentials and in case of successfulauthenticationallow them to run programs with privileges of their accounts.

It is often recommended thatrootis never used as a normal user account,[6][7]since simpletypographical errorsin entering commands can cause major damage to the system. Instead, a normal user account should be used, and then either thesu(substitute user) orsudo(substitute user do) command is used. Thesuapproach requires the user to know the root password, while thesudomethod requires that the user be set up with the power to run "as root" within the/etc/sudoersfile, typically indirectly by being made a member of thewheel,[8]adm,[9]admin,orsudogroup.

For a number of reasons, thesudoapproach is now generally preferred – for example it leaves anaudit trailof who has used the command and what administrative operations they performed.[10]

Some OSes, such asmacOSand someLinuxdistributions (most notablyUbuntu[6]), automatically give the initial user created the ability to run as root viasudo– but this is configured to ask them for their password before doing administrative actions. In some cases the actualrootaccount is disabled by default, so it can't be directly used.[6]In mobile platform-oriented OSs such asApple iOSandAndroid,superuser access is inaccessible by design, but generally the security system can beexploitedin order to obtain it.[citation needed]In a few systems, such asPlan 9,there is no superuser at all.[11]

Microsoft Windows

[edit]

InWindows NTand later systems derived from it (such asWindows 2000,Windows XP,Windows Server 2003,andWindows Vista/7/8/10/11), there must be at least one administrator account (Windows XP and earlier) or one able to elevate privileges to superuser (Windows Vista/7/8/10/11 viaUser Account Control).[12]In Windows XP and earlier systems, there is a built-in administrator account that remains hidden when a user administrator-equivalent account exists.[13]This built-in administrator account is created with a blank password.[13]This poses security risks as local users would be able to access the computer via the built-in administrator account if the password is left blank, so the account is disabled by default in Windows Vista and later systems due to the introduction of User Account Control (UAC).[13]Remote users are unable to access the built-in administrator account.

A Windows administrator account is not an exact analogue of theUnixroot account – Administrator, the built-in administrator account, and a user administrator account have the same level of privileges. The default user account created in Windows systems is an administrator account. Unlike macOS, Linux, and Windows Vista/7/8/10 administrator accounts, administrator accounts in Windows systems without UAC do not insulate the system from most of the pitfalls of full root access. One of these pitfalls includes decreased resilience to malware infections. To avoid this and maintain optimal system security on pre-UAC Windows systems, it is recommended to simply authenticate when necessary from a standard user account, either via a password set to the built-in administrator account, or another administrator account.

In Windows Vista/7/8/10/11 administrator accounts, a prompt will appear to authenticate running a process with elevated privileges. Usually, no user credentials are required to authenticate the UAC prompt in administrator accounts but authenticating the UAC prompt requires entering the username and password of an administrator in standard user accounts. In Windows XP (and earlier systems) administrator accounts, authentication is not required to run a process with elevated privileges. This poses a security risk that led to the development of UAC. Users can set a process to run with elevated privileges from standard accounts by setting the process to "run as administrator" or using therunascommand and authenticating the prompt with credentials (username and password) of an administrator account. Much of the benefit of authenticating from a standard account is negated if the administrator account's credentials being used has a blank password (as in the built-in administrator account in Windows XP and earlier systems), hence why it is recommended to set a password for the built-in administrator account.

InWindows NT,2000 and higher, the root user is the Administrator account.[14]

Novell NetWare

[edit]

InNovell NetWare,the superuser was called "supervisor",[15]later "admin".

OpenVMS

[edit]

In OpenVMS, "SYSTEM" is the superuser account for the OS.

Older personal systems

[edit]

On many older OSes on computers intended for personal and home use, anyone using the system had full privileges. Many such systems, such asDOS,did not have the concept of multiple accounts, and although others such asWindows 95did allow multiple accounts, this was only so that each could have its own preferences profile – all users still had full administrative control over the machine.

See also

[edit]

References

[edit]
  1. ^"getpwuid".opengroup.org.Archivedfrom the original on 22 August 2015.Retrieved12 January2019.
  2. ^The Jargon File (version 4.4.7)Archived2021-04-18 at theWayback Machine,catb.org
  3. ^"What is this UID 0 toor account?"Archived2020-12-22 at theWayback Machine,freebsd.org
  4. ^"What is root? - definition by The Linux Information Project".LINFO.Archivedfrom the original on 2021-05-08.Retrieved2012-08-07.
  5. ^"/root: Home directory for the root user (optional)".Archivedfrom the original on 2005-05-25.Retrieved2015-05-11.
  6. ^abc"RootSudo".ubuntu.com.Archivedfrom the original on 5 November 2011.Retrieved16 September2015.
  7. ^"4.4. Administrative Controls".redhat.com.Archivedfrom the original on 5 June 2015.Retrieved16 September2015.
  8. ^"2.3. Configuring sudo Access".redhat.com.Archived fromthe originalon 2019-12-22.Retrieved16 September2015.
  9. ^"difference adm - root".Archivedfrom the original on 5 November 2016.Retrieved1 August2016.
  10. ^Brian Wotring (2005).Host Integrity Monitoring Using Osiris and Samhain.Elsevier. p. 32.ISBN978-0-08-048894-3.Archivedfrom the original on 2024-05-24.Retrieved2018-12-17.
  11. ^Cox, Russ; Grosse, Eric;Pike, Rob;Presotto, Dave; Quinlan, Sean,Security in Plan 9,Bell Labs,archived fromthe originalon 11 July 2018
  12. ^"Microsoft Corporation".Microsoft.com.Archivedfrom the original on 2012-07-11.Retrieved2012-08-07.
  13. ^abc"Enable and Disable the Built-in Administrator Account".microsoft.com. 25 July 2008.Archivedfrom the original on 2013-11-27.Retrieved2014-02-26.
  14. ^"The LocalSystem Account".microsoft.com.Microsoft.Archivedfrom the original on 13 March 2016.Retrieved16 September2015.
  15. ^"Supervisor (Bindery) User Created on Every NetWare 4 Server"Archived2017-11-07 at theWayback Machine,01 Feb 1996, novell.com
[edit]