« Quelquun peut-il me dire ce que signifie sudo
? » Japprends Linux. Jai cherché sur Google, mais quelquun peut-il me donner une comparaison Windows , je pense que cela maidera un peu. Je sais que su
signifie changer dutilisateur. sudo
est un autre utilisateur, mais comment et pourquoi? Pourquoi ne pouvez-vous pas simplement vous accorder des autorisations sous votre nom dutilisateur?
Commentaires
- Dans Windows, si vous ne ‘ vous navez pas les droits dadministrateur, vous devez fournir le nom et le mot de passe dun compte qui le fait également. Vous pouvez bien sûr vous donner la permission sous votre nom dutilisateur, ce nest tout simplement pas intelligent de le faire, comme tout programme qui votre exécution peut alors modifier tout ce pour quoi vous avez la permission. Cest lune des raisons pour lesquelles Windows nest pas sûr depuis si longtemps.
- @KnowledgeBeyondMe: De quoi sagit-il avec le sujet de la question? Veuillez le changer en quelque chose de significatif.
- ok, alors laissez-moi voir si je comprends cela. Au lieu davoir des comptes administrateur, tout le monde a le potentiel dêtre administrateur en utilisant le nom dutilisateur sudo. Cependant, en utilisant ce nom dutilisateur sudo, vous les actions vous seront reconnectées parce que cela ressemble à un enfer de votre nom dutilisateur réel. Si tel est le cas, jaime vraiment ça. Cela fait gagner beaucoup de temps. Vous ne ‘ Vous devez attendre que quelquun avec des privilèges vienne vers vous pour ajouter des logiciels, des imprimantes et autres.
Réponse
sudo
vous permet dexécuter un programme en tant que superutilisateur root . En lutilisant à la place de su
,
- vous navez pas besoin de connaître le mot de passe root car il vous demande votre mot de passe,
- vous savez explicitement quelles commandes seront exécutées en tant que root et quelles autres commandes en tant que vous. Si vous utilisez
su
, vous avez un shell et pouvez exécuter par inadvertance certains programmes (dangereux), et - toutes vos actions sont enregistrées dans le . Les actions dans un shell, comme celle initiée par
su
ne sont généralement pas enregistrées .
Pourquoi ne pouvez-vous pas simplement vous donner des autorisations sous votre nom dutilisateur?
Pour pour des raisons de sécurité, le compte racine est rarement utilisé à des fins quotidiennes . Habituellement, tous les utilisateurs, y compris les administrateurs, utilisent un utilisateur « normal » et nexécutent que des commandes en tant que root lorsque cela est nécessaire. Cela peut empêcher (1) laccès non autorisé aux fichiers dautres utilisateurs, (2) les actions root non enregistrées et (3) les problèmes causés par lexécution de programmes « dangereux ».
Là est une analogie dans Wikipédia que vous pouvez considérer:
- Utiliser un compte root, cest un peu comme être Superman; un administrateur régulier lutilisateur ressemble plus à Clark Kent. Clark Kent ne devient Superman que le temps nécessaire, afin de sauver les gens. Il revient alors à son «déguisement». Laccès root doit être utilisé de la même manière. Le déguisement de Clark Kent ne le restreint pas vraiment, car il est toujours capable dutiliser ses super pouvoirs. Cela revient à utiliser le programme sudo.
Commentaires
- Utiliser
sudo
, cest un peu comme être Dingo jusquà ce que vous mangiez une super cacahuète qui vous transforme en Super Goof. Vos super pouvoirs disparaissent après un certain temps (par défaut 15 minutes), après quoi vous êtes invité à entrer une nouvelle cacahuète … euh, votre mot de passe. - ok, alors laissez-moi voir si je comprends cela. Au lieu davoir des comptes dadministrateur, tout le monde a le potentiel de être un administrateur en utilisant le nom dutilisateur sudo. Cependant, en utilisant ce nom dutilisateur sudo, vos actions vous seront reconnectées parce que cest un peu comme un enfer de votre compte dutilisateur réel. Si tel est le cas, jaime vraiment ça. Cela économise des tonnes Vous n’avez pas ‘ à attendre qu’une personne possédant des privilèges vienne vous voir pour ajouter des logiciels, des imprimantes, etc.
- @KnowledgeBeyondMe puissant ial pour être administrateur, mais vous devez toujours être autorisé en étant répertorié dans
/etc/sudoers
. Il existe dautres avantages de sudo par rapport à su, mais le point principal de sudo est que vous vous authentifiez en utilisant votre propre mot de passe. Les mots de passe partagés sont incorrects. - Vous devez autoriser les personnes, en les incluant dans
/etc/sudoers
ou à laide dautres techniques , pour exécutersudo
. En général, vous n’autorisez pas toutes les personnes, mais uniquement les administrateurs système.
Réponse
Par défaut sur la plupart des Unices , le compte « administrateur », root, nest à utiliser quavec parcimonie. Il ny a que deux niveaux de droits dadministrateur ou de «super utilisateur» sur un système Unix normal: soit vous avez le contrôle total de tout , soit vous ne le faites pas.
Le « contrôle total » comprend le contournement de la plupart des vérifications dautorisation et le fait de gâcher complètement le système par une simple erreur de frappe. En tant quutilisateur ordinaire, vous ne pouvez au plus supprimer que vos propres fichiers.
Lancien utilitaire su
est utilisé avec le mot de passe root pour prendre lidentité root, mais peut également être utilisé pour assumer lidentité dautres utilisateurs, ou pour exécuter des commandes uniques comme eux, étant donné que vous appartenez au bon groupe dutilisateurs et que vous connaissez leurs mots de passe.
su
est couramment utilisé par lutilisateur root (sur certains systèmes Unix) pour démarrer des démons (processus de service) qui doivent sexécuter sous des identités dutilisateur particulières pour les protéger contre laccès aux zones auxquels ils ne devraient pas avoir accès (généralement des serveurs Web, un serveur SSH, etc.). Cela peut être fait dans des scripts de démarrage lorsque le système démarre.
su
est plus rarement utilisé de manière interactive (sur la ligne de commande).
Lutilitaire sudo
nécessite un peu plus de configuration car il permet à un utilisateur dexécuter des commandes comme un autre utilisateur en utilisant son propre mot de passe (ce qui signifie quun mot de passe root, par exemple, na pas besoin dêtre partagé), et il permet également un contrôle précis de qui est autorisé à faire exactement quoi. On pourrait, par exemple, donner à un seul utilisateur, ou à tout un groupe dutilisateurs, la possibilité de monter un certain disque, mais pas de le démonter ou de monter dautres disques, ou dinstaller un logiciel à laide de commandes spécifiques, etc. Lutilitaire div id = « 43a3cdde55 »>
permet de prendre les identités dautres utilisateurs (pas seulement root) pour les sessions interactives, ou pour exécuter des commandes uniques (si la configuration a été configurée de cette façon par une autre personne avec root permissions).
En général, on exécuterait des commandes uniques en utilisant sudo
(doù le nom « superuser do »):
$ sudo apt-get install vim
ou
$ sudo shutdown -ph now
Utiliser sudo
de cette manière est préférable à lutilisation de sudo -s
et travaillez avec un shell racine interactif, car les commandes que vous exécutez sont journalisées. On peut ensuite retracer les actions dans le fichier journal pour voir où (et qui) a fait quelque chose, soit pour débogage ou pour laudit.
Si vous vous trouvez typi ng à une invite root interactive pendant une période prolongée, alors vous devriez reconsidérer ce que vous faites et si cela nécessite vraiment des privilèges root.
Par exemple, la seule fois où je afficher une invite root interactive est lors de lajout dun utilisateur ordinaire pour moi-même sur une machine fraîchement installée, ou lorsque jai vraiment de sérieux problèmes qui mempêchent même de me connecter en tant quutilisateur ordinaire.
OpenBSD (depuis la version 5.8) a un utilitaire appelé doas
qui remplace sudo
dans linstallation système par défaut. Il a été développé quand il est devenu clair que sudo
était devenu trop complexe pour correspondre aux objectifs définis par les développeurs dOpenBSD. Son utilisation est similaire à celle de sudo
, mais sa configuration est plus facile .
Réponse
Dans les premières versions dUnix, le scénario le plus courant consistait à se connecter via un terminal sans système de fenêtrage. La commande su (utilisateur de remplacement) était un moyen pratique de modifier vos autorisations actuelles sans vous déconnecter. Rappelez-vous, sans système de fenêtrage, se déconnecter signifiait arrêter tout ce que vous aviez en cours dexécution.
Utiliser su pour devenir root pose des problèmes ennuyeux. Les gens oublient parfois de quitter la session et exécutent accidentellement des commandes en tant que root. La modification du mot de passe administratif était compliquée par le fait que vous deviez le distribuer à tous ceux qui en avaient besoin. La plupart des systèmes ne consignaient pas chaque commande, il était donc difficile de dire qui avait fait quoi en tant que root. Et ainsi de suite.
sudo a résolu ces problèmes en permettant aux utilisateurs dexécuter une seule commande en tant que root. Il fournit un meilleur audit et un meilleur contrôle tout en étant un peu plus pratique pour les commandes ponctuelles.
Réponse
ok, alors laissez-moi voir si je comprends cela. Au lieu davoir des comptes dadministrateur, tout le monde a le potentiel dêtre un administrateur en utilisant le nom dutilisateur sudo. Cependant, en utilisant ce nom dutilisateur sudo, vos actions vous seront reconnectées parce que cest comme un enfer de votre compte dutilisateur réel. Si tel est le cas, jaime vraiment ça. Cela fait gagner beaucoup de temps. Vous n’avez pas besoin d’attendre que quelquun avec des privilèges vienne vous voir pour ajouter des logiciels, des imprimantes et autres.
Commentaires
-
sudo
est un utilitaire, pas un nom dutilisateur. Quelquun doit encore vous donner le droit dutilisersudo
. Le droit peut être limité à lutilisation de commandes particulières, ou pour utilisersudo
pour assumer dautres identités utilisateur particulières.sudo
peut être utilisé pour passer à dautres rôles que simplement root. - Oh donc cest comme les groupes organisationnels Active Directory? Vous avez votre propre nom dutilisateur avec des privilèges, mais si vous disposez dautorisations, vous pouvez accéder aux privilèges dune organisation spécialisée. LORG dans ce sens serait lutilitaire SUDO?
- Ne sachant pas ce quest un » Active Directory « , Je ne peux ‘ dire oui ou non à cela avec certitude.
- Mécanisme de contrôle des droits et des rôles dans Windows.
- Non, sudo nest pas un groupe ou un compte utilisateur. – Dans Windows, Active Directory et LDAP, vous pouvez définir des groupes dutilisateurs. Sous Linux, vous pouvez également définir des groupes dutilisateurs. Par exemple, votre Linux a généralement un groupe
admin
. Chaque utilisateur peut appartenir à un groupe principal et à plusieurs groupes secondaires . – Vous pouvez autorisersudo
à tous les membres dun groupe . Si vous cochez le/etc/sudoers
, les groupes autorisés ont un préfixe%
.
Réponse
sudo vous permet dexécuter un programme en tant quutilisateur différent (y compris root) en fonction dun ensemble de règles configurables et prédéfinies.
Activé une racine système Unix / POSIX / Linux est Dieu. Lutilisateur root est également singulier.
Dans de nombreux environnements, il y a plusieurs administrateurs qui peuvent avoir besoin dun accès root complet, mais il peut y avoir aussi des personnes qui ont besoin dun accès pour effectuer une fonction spécifique habituellement réservée à root; Les administrateurs de base de données doivent arrêter et démarrer les services de base de données, modifier les configurations de base de données, les administrateurs réseau doivent configurer les périphériques et les itinéraires réseau, les administrateurs de sécurité doivent gérer les certificats et configurer les pare-feu.
En limitant les commandes quune personne peut exécuter, sudo applique le principe du moindre privilège – les utilisateurs nobtiennent pas laccès dont ils nont pas besoin. Mais ce nest pas seulement contraindre les utilisateurs binaires exécutés. De nombreuses tâches dadministration sont effectuées à partir de la ligne de commande – et les paramètres passés à cette commande peuvent également être contraints par sudo (ou capturés dans un script shell avec un accès fourni par sudo), il est donc possible de restreindre les données / périphériques que ceux-ci spécialisés les administrateurs peuvent y accéder.
Pourquoi ne pouvez-vous pas simplement vous accorder des autorisations sous votre nom dutilisateur?
1) ce serait mauvais.
-
Jai souvent eu accès au compte root sur les systèmes – mais jai toujours configuré un compte nommé à utiliser pour la connexion , et uniquement « su » ou « sudo » lorsque je veux invoquer explicitement mes super pouvoirs. En plus déviter les erreurs stupides, mon compte nommé fournit un bac à sable pour tout composant qui se comporte mal.
-
et sil y a 5 personnes qui ont besoin de laccès privilégié, est-ce que je laccorde à chacune dentre elles? Et 20? Et 200?
2) ceci serait difficile
- ce nest pas le modèle de sécurité Unix. Bien sûr, vous pouvez modifier les autorisations sur certains exécutables (voir la note précédente sur les paramètres). Mais si vous « êtes soucieux de la sécurité, vous appliquez régulièrement des correctifs – ce qui peut saper un modèle dautorisations personnalisé (sudo OTOH maintient ses autorisations indépendamment des commandes elles-mêmes).
Commentaires
- ahhh, cest pourquoi Linux est un peu plus difficile à attaquer. Moins de personnes avec des droits. Lattaquant devrait trouver la bonne personne avec les bons droits. en soi.