Comment NE PAS devenir un utilisateur root? Les administrateurs sont-ils root?

42

J'ai installé Ubuntu sur mon PC. Pour me connecter, j'utilise le nom d'utilisateur et le mot de passe créés lors de l'installation. Est-ce que cela signifie que je suis un utilisateur root? Si oui, comment puis-je devenir non-root? Il semble que l'utilisateur non root soit plus sécurisé que l'utilisateur admin.

Prénom nom de famille
la source
9
Vous confondez root avec administrateur , deux choses différentes.
Fitojb
Connexes: RootSudo (sur le wiki Ubuntu)
Eliah Kagan le
Windows 7 ne précise pas cette distinction, ce qui me dérange et me déroute. L’équivalent d’exécuter en tant que root dans Windows consiste à «Exécuter en tant qu’administrateur». Mais bien sûr, si vous êtes connecté en tant qu'administrateur, vous exécutez déjà tout en tant qu'administrateur par définition. Choix de terminologie vraiment médiocre.
Kris Harper
@KrisHarper Ce n'est pas par définition (ni même vrai) que les utilisateurs doivent exécuter des programmes comme tels. Dans Ubuntu, les administrateurs (qui ne sont pas root) peuvent exécuter des programmes en tant que root avec sudo. Plus généralement, un administrateur (ou un autre utilisateur autorisé) X peut s'exécuter en command...tant que Y avec sudo -u Y command.... Dans Windows Vista et les versions ultérieures, avec le contrôle de compte d'utilisateur activé , les utilisateurs dotés de pouvoirs administratifs exécutent des programmes sans eux , sauf lorsqu'ils autorisent explicitement un programme à hériter de leurs capacités. Exécuter en tant qu'administrateur apparaît lorsque les UAC sont activés (ou pour un nombre limité d'utilisateurs).
Eliah Kagan
@EliahKagan Bien sûr, vous avez raison. Sous le capot, les utilisateurs reçoivent un jeton de sécurité de bas niveau et peuvent en demander un si nécessaire. Je parlais sémantiquement d'un point de vue utilisateur. Si j'administre un ordinateur et que je l'utilise, j'exécute littéralement des programmes en tant qu'administrateur. Mon point de vue était que c'est un choix de terminologie médiocre car il rompt l'abstraction entre l'administrateur physique (moi-même) et l'administrateur numérique (un compte utilisateur spécifique). Je trouve que c'est un mauvais UX, même si le technicien compétent comprendra ce qui se passe.
Kris Harper

Réponses:

79

Vous êtes un administrateur, mais pas root. L' rootutilisateur peut faire n'importe quoi. Les administrateurs peuvent effectuer des actions en tant queroot , mais généralement, ce que font les administrateurs n'est pas fait par root. De cette façon, vous avez le plein contrôle de votre propre système, mais uniquement lorsque vous choisissez de l'utiliser.

Ubuntu vous demande votre mot de passe lorsque vous essayez de faire des choses comme root, pour vous assurer que c'est vraiment vous.

Comptes d'utilisateurs: humains et autres

Les vrais utilisateurs ont des comptes d’utilisateur pour les représenter. Vous avez créé un tel compte lorsque vous avez installé Ubuntu. Mais tous les comptes d'utilisateurs ne représentent pas de vrais utilisateurs humains .

Les utilisateurs humains réels se voient accorder (et se voient refuser) des capacités par le biais de leurs comptes d'utilisateurs. Ils doivent utiliser leurs comptes d'utilisateurs pour utiliser le système. par conséquent, les capacités et les limites de leurs comptes d'utilisateurs s'appliquent à eux.

Les comptes d'utilisateurs sont également utilisés pour codifier des ensembles de capacités et de limitations. Certains comptes d'utilisateur - la plupart en fait, sauf si vous avez beaucoup d' utilisateurs humains de la machine - existent pour que certains programmes ou commandes puissent être exécutés avec leur identité, une identité avec les capacités et limitations appropriées pour le travail.

Par exemple, l' www-datautilisateur existe de sorte que si vous exécutez un serveur Web, il possède les données rendues accessibles par le serveur. Aucun utilisateur humain réel ne doit être autorisé à apporter des modifications non vérifiées à ces données, et le serveur Web ne doit pas nécessairement être autorisé à effectuer toute action inutile pour servir le Web. Par conséquent, les données Web et le reste du système sont mieux protégés contre les ruptures accidentelles ou intentionnelles que si le serveur Web était géré par un utilisateur humain qui disposerait de tous les pouvoirs du serveur Web (et des pouvoirs de ce serveur) posséder).

Le compte d'utilisateur non humain le plus important

Le superutilisateur , dont le nom d'utilisateur est root, est un compte d'utilisateur non humain avec une combinaison très spécifique de capacités et de limitations: toutes les capacités et aucune limitation .

rootest autorisé à faire n'importe quoi. Il y a encore des choses que l' rooton ne peut pas faire parce que le système lui-même ne peut ni les exécuter ni les comprendre. Donc, rootne peut pas tuer un processus qui est dans un sommeil ininterruptible , ou faire un rocher trop lourd pour être déplacé, puis déplacez-le .

De nombreux processus système importants, tels que init, s'exécutent en tant que rootet rootsont utilisés pour effectuer des tâches administratives.

Puis-je me connecter en tant que root?

Il est possible de configurer le rootcompte pour pouvoir se connecter avec un mot de passe, mais ceci n'est pas activé par défaut dans Ubuntu. Au lieu de cela, vous pouvez penser rootcomme comme www-data, lp, nobodyet d' autres comptes non humains. (Courez cat /etc/passwdou getent passwdpour tous les voir.)

Les utilisateurs humains se connectent avec leurs propres comptes d'utilisateur. Par la suite, si une tâche doit être effectuée avec un autre compte d'utilisateur, ils l' exécutent avec cette identité sans s'être réellement connectés en tant que cet utilisateur.

Il est possible de configurer les autres utilisateurs non humains, par exemple www-data, pour pouvoir également se connecter en tant que tels. C'est assez rare, cependant, alors que dans certains autres systèmes d'exploitation de type Unix, il est courant de se connecter comme root dans un terminal . Les risques liés à l'exécution de toute une interface graphique root, combinés au nombre de programmes graphiques conçus pour fonctionner en tant que tels rootet susceptibles de ne pas fonctionner correctement, signifient que vous ne devez jamais tenter d'obtenir une session de bureauroot dotée de la propriété .

Notez que lors de la connexion en tant que rootest désactivée par défaut dans Ubuntu, il existe des moyens d’obtenir un rootshell sans s’authentifier root, ce qui produit un effet similaire: les plus courants sont sudo -sou-i , le mode de récupération et des techniques similaires . (Ne vous inquiétez pas si vous ne savez pas ce que c'est.) Il ne s'agit pas d'une connexion: en mode de récupération, vous le devenez rootavant toute connexion; avec les sudométhodes basées sur, vous exécutez simplement un shell en tant que root.

Administrateurs

Dans Ubuntu, les administrateurs sont les utilisateurs qui peuvent faire ce qu'ils veulent que root, quand ils choisissent de le faire .

Paramètres système, affichant les comptes d'utilisateur humains, y compris un compte d'administrateur.
Paramètres système> Comptes d'utilisateurs. "Eliah Kagan" est un administrateur, donc il peut faire des choses comme root, mais il ne l'est pasroot .

Je suis administrateur sur mon système Ubuntu. Lorsque j’exécute des programmes, ils s’exécutent généralement sous le nom ek("Eliah Kagan" est le nom complet correspondant au eknom d’utilisateur.)

Lorsque je lance AbiWord ou LibreOffice, il s'exécute en tant que ek. Lorsque je lance Firefox, Chrome, Empathy ou Pidgin, il s'exécute en tant que ek. Les programmes exécutés pour fournir l'interface de bureau s'exécutent en tant que ek.

Cependant, je suis un administrateur, donc si je dois effectuer une tâche administrative, je peux le faire.

sudo

Sur la ligne de commande, je voudrais normalement utiliser sudoune commande en tant que root:

sudo command...

Cela me demandera mon mot de passe. (Pas rootle mot de passe; rootn'en a pas.)

  • Parce que je suis un administrateur, je peux effectuer des actions en tant que root. Dans la configuration par défaut, je dois entrer mon mot de passe pour le faire.
  • Les utilisateurs qui ne sont pas administrateurs ne peuvent pas effectuer d'actions telles quelles root, même en entrant leur mot de passe. sudoles commandes échoueront si l'utilisateur qui les exécute n'est pas un administrateur.

Étant donné que les administrateurs sont des utilisateurs tout à fait ordinaires, à l' exception de la possibilité d'effectuer des actions en tant que root, l'exécution d'une commande nécessitant des rootprivilèges échouera tout de même, sauf si la commande est exécutée en tant queroot .

Capture d'écran illustrant la nécessité de sudo: un administrateur peut uniquement exécuter certaines commandes avec succès en tant que <code> racine </ code>, généralement en ajoutant un préfixe à sudo (et un espace) à la commande.
Capture d'écran illustrant la nécessité d'utiliser sudopour effectuer des tâches administratives. (Basé sur "Sandwich" de Randall Munroe .)

sudo, graphiquement

Programmes graphiques peuvent fonctionner comme rootpar interfaces graphiques poursudo , comme gksu/gksudo et kdesudo. Par exemple, pour exécuter GParted comme rootje pouvais courir gksudo gparted. Ensuite, je serais invité graphiquement pour mon mot de passe.

Mot de passe graphique gksudo

Depuis que je suis invité graphiquement, il ne doit pas y avoir de terminal. C’est l’un des moyens utilisés par les outils d’administration root.

Polkit

Polkit (une fois appelé PolicyKit) est un autre moyen pour les administrateurs de faire les choses comme root. Un programme accède à un service qui effectue l'action. Parfois, l'action exécute tout un programme. parfois l'action est plus limitée.

De nos jours, de nombreux utilitaires d’administration graphique du système sont configurés pour utiliser polkit par défaut plutôt que pour être utilisé sudo.

Le Centre de logiciel est un exemple d'un tel utilitaire. Il tire pleinement parti de polkit, obligeant l'utilisateur à entrer son mot de passe uniquement lorsqu'il souhaite faire quelque chose qui nécessite des rootprivilèges. (Ceci est également possible avec l’ sudoauthentification basée sur l’utilisateur, mais il est plus difficile et plus laid à accomplir.)

Dans le centre logiciel, je peux trouver et lire des informations sur une application; alors on me demande mon mot de passe quand je veux l'installer.

Authentification via polkit pour installer une application dans le Centre logiciel Ubuntu.

Comment polkit est différent

Tout programme graphique peut être exécuté comme rootavec d' gksudoautres interfaces graphiques sudo. (Le programme ne fonctionnera peut-être pas très bien, selon qu'il est conçu ou non pour être utilisé en tant que root. Mais la commande permettant de démarrer le programme sera exécutée en tant que root.)

Alors que polkit est maintenant plus commun que les sudointerfaces graphiques en ce qui concerne la manière dont les applications exécutent des actions en rootarrière-plan, polki n'exécutera une application graphique que root si un fichier de configuration le permettait et indiquait les actions pouvant être effectuées .

Polkit, non graphique

pkexec est la commande utilisée pour exécuter un programme avec polkit.

Comme sudo, pkexecpeut exécuter des commandes non graphiques. (Et il ne nécessite pas de fichier de configuration définissant les capacités de la commande - il exécute simplement la commande en tant que root.)

pkexec command...

pkexecdemande graphiquement un mot de passe, même s’il est exécuté depuis un terminal (c’est l’une des manières dont son comportement ressemble plus à gksudocelui de courir droit sudo).

(S'il n'y a pas d'interface graphique - par exemple, si vous êtes connecté à partir d'une console virtuelle ou d'une session SSH avec texte uniquement , ou si l'interface graphique ne fonctionne pas correctement -, il pkexecse dégradera normalement et vous demandera votre mot de passe sur la ligne de commande. .)

Exécuter une commande dans un terminal avec pkexec.

Une fois l'authentification réussie, la commande s'exécute dans le terminal.

Une commande s'exécute de manière transparente en tant que <code> racine </ code> après une authentification réussie de polkit.

Exécuter des commandes en tant qu'autres utilisateurs root

rootest spécial parce qu'il arrive à faire tout ce qui peut être fait. Mais c'est un compte utilisateur comme n'importe quel compte, et les manières d'exécuter des commandes comme rootavec sudo(directement ou avec une interface graphique) ou polkit peuvent être légèrement modifiées pour exécuter une commande comme n'importe quel autre utilisateur:

sudo -u username command...
gksudo -u username command...
pkexec --user username command...

Quelle? Vous venez de taper en sudopremier? Comment est cette sécurité?!

Exécuter des commandes avec sudoest un peu comme invoquer l'infailliblité papale .

Lorsque vous exécutez une commande avecsudo [invoquer l'infaillibilité papale] , Ubuntu [les gens catholiques] s'efforce de faire en sorte que vous soyez vraiment [le vrai pape].

Oui, je sais que l'infaillibilité papale (même normative) est déclarative; le parallèle n'est pas parfait.

Essayer de faire quelque chose comme rootavec sudo(ou polkit) est un gros problème - Ubuntu ne laissera pas passer ça comme si de rien n'était.

Vous êtes invité à entrer votre mot de passe. (Ensuite, vous vous en souvenez pendant une courte période, vous n’avez donc pas besoin de saisir constamment votre mot de passe pour administrer votre système.)

En plus de vous rappeler de faire attention , ceci vous protège contre deux scénarios:

  • Quelqu'un utilise votre ordinateur (ou votre appareil mobile), peut-être sous l'apparence de vérifier ses courriels ou à des fins anodines similaires. Ici, il leur est encore possible de faire du mal - par exemple, ils pourraient modifier ou supprimer vos documents. Cependant, ils ne peuvent pas administrer le système, car ils ne peuvent pas entrer votre mot de passe.
  • Les programmes qui ne sont pas censés administrer le système ne peuvent pas le faire, à moins que vous n'ayez entré votre mot de passe. Par exemple, si votre navigateur Web est compromis par un bogue de sécurité et exécute un code malveillant, il ne peut toujours pas effectuer de tâches administratives. Il ne peut pas créer et supprimer des utilisateurs, modifier les programmes installés en tant que root(ce qui inclut tout ce qui est installé par le gestionnaire de paquets, tel que LibreOffice), ou modifier le système à un niveau plus profond.

J'ai entendu parler de su. Qu'est-ce que c'est? Puis-je l'utiliser?

sus'authentifie en tant qu'un autre utilisateur et exécute une commande (ou démarre un shell interactif). Il est possible de limiter le nombre de personnes autorisées à utiliser su, mais l' suauthentification est effectuée avec le mot de passe du compte cible , et non le mot de passe de l'utilisateur en cours d'exécution.

Par exemple, fonctionne en tant que nom d' utilisateur , tout comme .su username -c 'command...'command...sudo -u username command...

Mais lorsque vous exécutez une commande usernameavec sudo, vous entrez votre mot de passe . Lorsque vous exécutez une commande usernameavec su, vous entrez usernamele mot de passe .

Depuis sueffectue l'authentification pour l'utilisateur cible , suvous ne pouvez exécuter des commandes qu'avec les utilisateurs dont les comptes sont activés .

Le rootcompte (comme www-dataet nobody) est désactivé par défaut. Il n'y a pas de mot de passe qui fonctionnera pour vous connecter en tant que root. Vous ne pouvez donc pas utiliser les sucommandes en tant que root.

Vous pouvez utiliser supour exécuter des commandes comme un autre utilisateur qui peut se connecter (qui inclut généralement tous les comptes d'utilisateurs sur votre système qui représentent des êtres humains).

Lorsque vous êtes connecté en tant qu'invité, vous ne pouvez pas utiliser sudu tout.

La combinaison suetsudo

Quelqu'un qui n'est pas administrateur peut même sus'exécuter sudoen tant qu'administrateur. (Ceci est correct mais, comme ils ont besoin de mot de passe de l'administrateur pour exécuter des commandes en tant qu'administrateur.) Ainsi, un utilisateur limité peut utiliser supour exécuter sudopour exécuter une commande comme root. Cela peut ressembler à:

su username -c 'sudo command...'

(L'exécution de programmes graphiques de cette manière nécessite des précautions particulières .)

Ne serait pas suun moyen plus sûr d'exécuter des commandes en tant que root?

Probablement pas.

Que faire si un utilisateur ne devrait pas être autorisé à agir en tant que root?

Faites-en un utilisateur limité au lieu d'un administrateur.

Que se passe-t-il si un programme exécuté en tant qu'administrateur tente de le sudofaire root?

Si vous ne l'avez pas reconfiguré sudopour le laisser réussir sans mot de passe, il échouera.

Un programme ne peut-il pas être exécuté en mode rootpiggyback avec une sudocommande récente , de sorte qu'aucun mot de passe n'est requis?

Ce serait très peu probable pour réussir. De nos jours, la plupart des systèmes d'exploitation (y compris Ubuntu) ont été sudoconfigurés par défaut pour que leurs horodatages ne s'appliquent que dans un contexte spécifique.

Par exemple, si j'exécute sudo ...dans un onglet Terminal et que je m'authentifie correctement, sudoun autre onglet (ou exécuté par un programme graphique non associé, ou exécuté à partir d'une console virtuelle ou d'une session SSH) demandera toujours un mot de passe. Même si c'est exécuté immédiatement après.

Un programme exécuté en tant qu'utilisateur X n'a-t-il pas accès au mot de passe de l'utilisateur X?

Non.

Si un programme malveillant peut s'exécuter en tant qu'administrateur, ne peut-il pas "écouter" ce qui est saisi lorsque l'administrateur s'authentifie avec sudopolkit?

Potentiellement, oui. Mais alors il pourrait "écouter" à un mot de passe saisi pour su.

Si je dis à quelqu'un mon mot de passe ...

Ne dites pas votre mot de passe aux gens.

Que se passe-t-il si quelqu'un doit connaître mon mot de passe pour faire quelque chose en mon nom, mais que je ne veux pas le laisser gérer le système?

Idéalement, ils devraient avoir un compte utilisateur distinct qui leur permette de faire ce qu'ils doivent faire. Par exemple, vous pouvez partager des fichiers entre des comptes, ce qui permet à plusieurs utilisateurs de leur écrire, tout en refusant l'accès à d'autres utilisateurs.

Toutefois, dans le cas où une personne moins fiable pourrait être autorisée à partager votre compte, il devrait s'agir d'un compte utilisateur limité. Vous pouvez créer un compte séparé à cette fin (ce qui est logique: s'il s'agit d'un compte pour vous et quelqu'un d'autre pour lequel vous souhaitez disposer de fonctionnalités différentes, il doit s'agir d'un compte différent).

Alors, serait la chose la plus sûre de ne pas accorder à la fois sudoet sules gens de make connecter en tant que rootmanuellement?

Non, car permettre aux utilisateurs de se connecter comme rootdu tout présente de graves inconvénients . Dans la mesure du possible, le plus petit nombre possible d'actions doit être entrepris comme root. Même la plupart des actes liés directement à l'administration d'un système (par exemple, regarder quels utilisateurs sont configurés et lire les journaux) ne nécessitent généralement pas de rootprivilèges.

En outre, tout comme potentiellement un programme malveillant pourrait regarder quels types de quelqu'un quand ils courent sudoou su, ou de créer un faux sudo/ sumot de passe rapide, potentiellement un programme malveillant pourrait créer un écran de connexion de faux, aussi.

Qu'est-ce qui fait qu'un utilisateur est un administrateur?

Appartenance à un groupe.

Dans Ubuntu 12.04 et les versions ultérieures , les administrateurs sont membres du groupe appelé sudo.

Dans Ubuntu 11.10 et les versions antérieures , les administrateurs sont membres du groupe appelé admin.

Lorsqu'un système Ubuntu antérieur à 12.04 est mis à niveau vers 12.04 ou une version ultérieure, le admingroupe est conservé pour des raisons de compatibilité ascendante (et continue de conférer un pouvoir administratif aux utilisateurs du système), mais le sudogroupe est également utilisé.

Comptes d'utilisateurs limités

Puis-je utiliser un compte utilisateur limité au lieu d'un compte administrateur?

Si vous aimez, bien sûr. Créez un compte utilisateur limité dans Paramètres système > Comptes d'utilisateurs et connectez-vous en tant qu'utilisateur.

Puis-je faire de mon compte administrateur un compte utilisateur limité?

Oui, supprimez-le simplement des groupes sudoet admin(voir ci-dessus).

Cependant, vous devez vous assurer qu'il existe au moins un autre compte administrateur pour pouvoir administrer votre système. Si ce n’est pas le cas, vous devrez alors démarrer en mode de récupération ou sur un CD live et redonner à certains utilisateurs le statut d’administrateur . (Ceci est similaire à la réinitialisation d'un mot de passe administrateur perdu .)

Les outils graphiques permettant d'administrer les utilisateurs et les groupes vous empêchent généralement de créer un système sans administrateur, ou du moins de vous prévenir. Les outils de ligne de commande ne le feront généralement pas (en sachant que vous savez ce que vous faites).

Eliah Kagan
la source
2
@ EliahKagan-un autre idiot :) Je vais faire une analogie - Root est comme un parent et tout utilisateur est comme un enfant. Les enfants aînés (administrateurs) ont plus de privilèges. Un enfant (utilisateur) ne peut jamais être LE parent (racine). L'enfant de 12 ans peut faire des choses non dangereuses dans la maison (OS / Ubuntu), comme utiliser le réfrigérateur et d'autres choses encore. Il n'est pas autorisé à toucher l'argent en toute sécurité. Mais l'administrateur de 18 ans peut utiliser "sudo" ou la permission de ses parents pour accéder à cet argent. Mais, les deux ne sont pas autorisés à toucher le pistolet dans un autre coffre-fort. Seul root (parent) peut le faire. Logique ?
Prénom Nom
1
@FirstNameLastName Les comptes d'administrateur représentent de vrais utilisateurs humains qui, dans le monde réel, ont tout le pouvoir. Les administrateurs peuvent "faire rootn'importe quoi" avec sudoet PolicyKit. Un administrateur peut même activer le rootcompte et se connecter. Si vous extrayez un compte d'utilisateur comme une combinaison d' actions mécanistes et conscientes, les utilisateurs humains ont des utilisateurs non humains et des utilisateurs non humains, y compris un rootcomportement purement mécanique. Si vous comprenez comment cela fonctionne, alors si votre analogie le renforce, tant mieux! Mais je ne pense pas que cela capture vraiment la relation racine-administrateur.
Eliah Kagan
7
@FirstNameLastName Il me semble qu'une meilleure analogie est la suivante: les administrateurs sont comme Bruce Wayne et rootBatman. La différence est entièrement une question d'identité construite. Bruce Wayne peut devenir Batman quand il veut et faire presque n'importe quoi, mais il restera toujours Bruce Wayne sous le masque. Pourtant, Batman est plus ce qu'il est vraiment - le personnage de Bruce Wayne est un dispositif qui le protège des conséquences d'être Batman. En se présentant comme Wayne dans la vie quotidienne, il peut souvent se protéger, ainsi que ses proches, contre ses propres erreurs, les failles du système et les logiciels malveillants de Gotham City.
Eliah Kagan
4

Aucune question idiote;)

J'espère que cela clarifie un peu les choses:

Dans Ubuntu, deux types de comptes d’utilisateur différents peuvent être créés: les comptes standard et les comptes d’ administrateur . La différence entre les deux: un compte standard n’est pas autorisé à apporter des modifications importantes à votre système en obtenant un accès root, alors qu’un compte administrateur peut utiliser son mot de passe pour apporter des modifications en tant qu’utilisateur root. L'utilisateur racine lui-même est l'un des nombreux utilisateurs créés par le système et que vous ne voyez ou ne remarquez pas normalement, et vous ne pouvez pas vous connecter en tant que tel (par défaut, de toute façon). Si vous êtes connecté à un compte de type administrateur, vous pouvez devenir cet utilisateur racine avec lesudo commande dans un terminal, et vous pouvez taper votre mot de passe pour installer un logiciel, apporter des modifications au système, etc. Si vous êtes connecté en tant qu’utilisateur standard, vous ne pouvez pas le faire.

Richard
la source
Si l'administrateur peut devenir root en exécutant simplement une commande, quelqu'un d'autre / hacker peut-il l'exécuter à distance et devenir utilisateur root?
Prénom Nom
@FirstNameLastName Ils doivent déjà être connectés à distance en tant qu'un des autres utilisateurs pour pouvoir s'exécutersudo
Izkata
@FirstNameLastName sudo demande également un nom de compte et un mot de passe avant de donner un accès root.
Destrictor
@ Districtor - Oui, c'est le cas. en fait, c'est ce qui m'a confondu. Je suis dans un compte d'administrateur et mets le mot de passe d'administrateur pour vous connecter à la racine. quand le mot de passe et le nom d'utilisateur sont les mêmes pour admin et root, pourquoi avoir deux comptes?
Prénom Nom
@FirstNameLastName la raison principale pour laquelle vous devez entrer le mot de passe lorsque vous utilisez sudo est pour la journalisation. C’est principalement pour des raisons de sécurité (quelque chose s’est passé et votre service informatique découvre qui / quoi / où)
Destrictor
3

Dans Tous les systèmes Linux Pour apporter des modifications au système, nous devons être authentifiés en tant qu'utilisateur root et pour appliquer toutes les modifications, nous devons être utilisateur root.

Les utilisateurs normaux ne peuvent pas appliquer les modifications à l’ensemble du système. C’est l’avantage de Linux par rapport aux fenêtres.

Si une attaque est faite, cela ne concernera que cette zone du système Linux / Unix car attaquer ou modifier les zones restantes. Des autorisations root sont nécessaires, mais sous Windows, si un endroit est attaqué, tout le système sera affecté.

C’est pourquoi, dans de nombreuses questions, si un utilisateur ne demande pas de mot de passe root, nous l’avertirons alors que cela n’est pas recommandé dans des conditions de sécurité et laissons le choix entre eux.

Si vous voulez devenir un utilisateur root, sudo peut vous aider.

sudo -i 

Si vous souhaitez lancer l'application en tant qu'utilisateur root, vous pouvez alors utiliser sudo.

sudo <app_name>

Il est toujours préférable d’exécuter le système en tant qu’utilisateur non root.

rɑːdʒɑ
la source
3

Le compte créé lors de l'installation est un compte administrateur .

Dans Ubuntu, le compte root n'a pas de mot de passe et par conséquent, vous ne pouvez pas vous connecter en tant rootqu'utilisateur. Il existe des moyens de contourner ce problème, mais il s'agit du paramètre par défaut.

Un compte administrateur dans Ubuntu signifie que l'utilisateur est ajouté au groupe sudo, ce qui permet au compte de gagner des privilèges temporairement à l'aide de la sudocommande. PolicyKit peut demander une élévation de privilèges en indiquant le mot de passe 'Administrateur'. (Vous devez sélectionner un utilisateur administrateur et donner le mot de passe de ce compte.)

Pour confirmer que celles-ci sont vraies:

  • Ouvrez un terminal et essayez de mettre à jour l'index du package logiciel. apt-get updateest la commande utilisée pour le faire et cela nécessite d'être exécuté en tant que root. Cela fonctionne uniquement lorsque vous vous connectez en tant qu'utilisateur root ou que vous l'exécutez en tant qu'utilisateur root en utilisant des augmentations de privilèges. Un administrateur peut s'exécuter sudo apt-get updateen s'authentifiant auprès du sudomécanisme qui permet d'exécuter des commandes en tant qu'utilisateur. Un utilisateur standard ne sera pas autorisé à le faire.

  • Ouvrez des comptes d'utilisateurs à partir des paramètres système et essayez d'ajouter un nouvel utilisateur. Le mécanisme de protection utilisé ici est le PolicyKit. Les administrateurs seront autorisés à s'authentifier et à élever leurs privilèges, mais les utilisateurs standard seront bloqués. Un mot de passe administrateur est nécessaire pour continuer.

Voici comment vérifier si votre compte est administrateur ou non:

  • Ouvrez les comptes d'utilisateurs à partir des paramètres système.
  • Sélectionnez votre compte d'utilisateur dans la colonne de gauche.
  • Vous devriez voir Administratorsous le nom du compte dans les deux volets pour les comptes d’administrateur et Standardpour les utilisateurs normaux.
Mahesh
la source
2

Non.

l'utilisateur avec lequel vous vous connectez à Ubuntu n'est pas l'utilisateur admin (l'utilisateur admin dans la terminologie Linux est appelé root)

tomodachi
la source
6
C'est trompeur au mieux. L'utilisateur non root créé lors de l'installation est un administrateur. Pas root, mais un administrateur (ce qui signifie principalement qu'ils peuvent effectuer des actions comme rootavec sudoet PolicyKit).
Eliah Kagan
@EliahKagan - ok, alors quelle est la différence entre les comptes administrateur et root? Je suis nouveau sur linux et aussi sur l'informatique, alors s'il vous plait supportez-moi.
Prénom Nom Nom
@EliahKagan Pas vraiment, c'est juste essayer d'appliquer la terminologie Windows à Linux. sudol'accès peut être limité par le programme que vous essayez d'exécuter en tant que root, ce qui le rend beaucoup plus flou.
Izkata
@FirstNameLastName Il y a un utilisateur qui s'appelle réellement "root" (généralement; j'ai entendu dire que cela pouvait être changé, mais je ne sais pas comment). Il a accès à tout.
Izkata
2
@Izkata Non, administrateur a une signification spécifique dans Ubuntu. Il est tout simplement totalement faux de dire que le compte d'utilisateur créé lors de l'installation n'est pas un administrateur. Pour ce qui est de permettre l'exécution de commandes spécifiques rootavec sudo, cela n'a aucune importance. Les administrateurs peuvent exécuter n'importe quelle commande rootavec sudo. Par défaut, aucun autre utilisateur ne peut exécuter de commande avec root(ou tout autre utilisateur) sudo. De plus, ce sudon’est qu’un des mécanismes permettant d’exécuter des actions en tant que racine - ce que les gens ont tendance à penser, sudoc’est en fait souvent PolicyKit, de nos jours.
Eliah Kagan