Sudoers

Bonsoir,

Je continue à explorer le système Debian (Lenny).
Pour l’instant j’en reste à l’installation.

Comme vous le savez sûrement, il y a trois types d’installation : pour les débutants (comme moi), avec /home séparé (ma précédente installation) et une troisième possibilité que je ne comprend pas au point que je suis incapable de vous la réciter (un truc du style : tous les répertoires sont séparés).
Et bien c’est cette troisième possibilité que j’ai choisi pour la réinstall :005 .

L’idée sous-jacente est de comprendre comment ces choix se répercutent pour l’utilisateur final que je suis.

Et bien la répercussion est que je n’arrive pas à éditer le fichier /etc/sudoers.

Enfin, je dis ça, mais j’ai quand même réussi à l’éditer via vim /etc/sudoers pour mettre :

:017

Le hic, c’est que je ne suis plus en mesure de modifier sudoers. Lorsque j’entre vim /etc/sudoers (comme nano /etc/sudoers), j’arrive sur une page vierge. J’ai du également me planter dans l’install de visudo car : “command not found”.
Lorsque je veux faire aptitude update, le terminal m’affiche :

>>> sudoers file: syntax error, line 23 <<< sudo: parse error in /etc/sudoers near line 23
Bien sûr, je peux faire une réinstall. J’en ai déjà fait quelques unes. Mais maintenant, je veux aller un peu plus loin en utilisant les difficultés que je rencontre pour comprendre mieux.
Alors :
Comment supprimer cette fichue ligne ?
Et, accessoirement, pouvez-vous m’expliquer la différence entre les 3 modes d’installation ci-dessus approximativement nommés (outre “choisi la première option pour ne pas être dans la panade”). (Est-ce que le choix lors de l’install fait que j’ai ce problème ou est-ce juste ma méconnaissance - ce qui me paraît le plus raisonnable - ?).

PS : Je n’ai pas encore complété les /etc/apt/sources.list.

Le mieux aurait été de l’éditer dès le départ avec la commande visudo. Car là, j’ai l’impression que le echo a un peu abîmé le fichier. Tu peux essayer de supprimer sudo en le purgeant aptitude purge sudo, et rééditer le fichier /etc/sudoers.

Note : visudo doit s’éxécuter en tant que root, soit :

[code]su
***mot de passe ***

visudo[/code]

En plus ce que tu essayes de faire c’est donner tous les droits a la commande sudo. Ce n’est pas une bonne idee en general, y’a root pour ca.

Et la y’a un truc de bizarre, tu as tape directement echo “Alman ALL=(ALL) ALL” >> /etc/sudoers dans un terminal en root, ou tu as ouvert le fichier /etc/sudoers avec vim pour y ajouter la ligne echo “Alman ALL=(ALL) ALL” >> /etc/sudoers?

Ok, c’est bon, la purge a réglé le pb, merci.

Cependant je retrouve le problème initial (ou plutôt que je n’avais pas rencontré sur les précédentes install), lorsque je lance (en root) la commande visudo /etc/sudoers, la réponse est :

Y a pas : il faut que je lise le man… :089

Est-ce là la différence entre le troisième mode d’installation et les deux premiers ?

Oui j’en ai conscience. zx26 m’en a parlé et je cherche les commandes (et SURTOUT à comprendre les commandes) pouvant gérer les droits de l’utilisateur principal (i.e. moi-même). A ce titre, je ne sais pas si cela se gère au niveau du sudoers ou au niveau des permissions des fichiers/répertoires (“rw…” et l’exécution (me rappelle plus de la lettre)).

[quote=“Alman”]lorsque je lance (en root) la commande visudo /etc/sudoers, la réponse est :

Y a pas : il faut que je lise le man… :089
[/quote]
Terminal root => tu tapes visudo et rien d’autre.

[quote=“youki”][quote=“Alman”]
Enfin, je dis ça, mais j’ai quand même réussi à l’éditer via vim /etc/sudoers pour mettre :

[/quote]
Et la y’a un truc de bizarre, tu as tape directement echo “Alman ALL=(ALL) ALL” >> /etc/sudoers dans un terminal en root, ou tu as ouvert le fichier /etc/sudoers avec vim pour y ajouter la ligne echo “Alman ALL=(ALL) ALL” >> /etc/sudoers?[/quote]
Directement dans “vim /etc/sudoers”.

[quote=“youki”][quote=“Alman”]lorsque je lance (en root) la commande visudo /etc/sudoers, la réponse est :

Y a pas : il faut que je lise le man… :089
[/quote]
Terminal root => tu tapes visudo et rien d’autre.[/quote]
Ah ben en inscrivant uniquement “visudo” il atteint directement /etc/sudoers. Je ne savais pas ça…

Bon maintenant, je me suis manifestement planté dans la commande alors je recherche les pages internet.

Merci.

Je reposte en cas de difficulté mais je pense que cette fois ça devrait aller.

La commande visudo sert uniquement a editer le ficher /etc/sudoers. Et si il y a cette commande c’est bien parce qu’il faut eviter de faire n’importe quoi avec ce fichier. Mais quelques recherches sur visudo dans un moteur de recherche devraient (auraient du) t’en dire plus.

Le montage séparé de /usr /var /home /tmp (/boot est un cas à part) est de l’optimisation d’espace selon l’usage de la machine et aussi une manière de “ne pas mettre tous ses oeufs dans le même panier”.
il vaut mieux ne pas séparer /etc /bin /sbin de la racine /

Un manuel à consulter

$ man hier

Les montages séparés n’influent pas sur /etc/sudoers.

Décompose la commande :

$ echo “Alman ALL=(ALL) ALL” >> /etc/sudoers

echo = produire les caractères suivants
Alman ALL=(ALL) ALL
Guillemets " parceque le bash pourrait interpréter"()""="

= accoller, mettre à la suite de
/etc/sudoers
Problème : il faut avoir les droits de root pour pouvoir accoler ce fichier.
Il faut connaitre le mot de passe de root.
Autre problème : se familiariser avec vim, pas évident pour un premier contact
Initiation à vim
$ vimtutor

Scénario
$ su
mot de passe de root

vim /etc/sudoers

se placer en bas du texte MAj+g ou flèche bas
touche ESC , touche i comme insertion
ajouter Alman ALL=(ALL) ALL
ESC : w : enregistrer
ESC : q : quitter
ou

echo “Alman ALL=(ALL) ALL” >> /etc/sudoers

visudo, éditeur vim ou echo mais pas l’hybride "echo dans vim"
à moins d’être familier avec le mode shell de vim (:!shell)

@ youki : Oui, j’ai effectivement vu à droite à gauche sur le net que visudo permettait une vigilance sur la syntaxe. Je fais des recherches sur le net, youki. La difficulté étant qu’il y a beaucoup de choses à ingurgiter. Ne serait-ce que l’arborescence des répertoires et fichiers.
Où se trouve mon répertoire Alman par exemple. Ce n’est pas si évident que ça : c’est vraiment du basique de chez basique.
Ma présence sur Debian-fr.org a pour objectif de “m’imprégner” du vocabulaire et des problèmes et solutions rencontrés afin de me construire une représentation du système Debian adéquate.
Toujours est-il que j’ai complété (mais uniquement avec des ALL) le sudoers. J’ai encore du chemin…

@ etxeberrizahar : Merci pour ton intervention. La décomposition du message est très intéressante pour mieux saisir les commandes que j’entre (je sais qu’il y a une syntaxe précise mais ne la maîtrise pas encore).
Je te remercie particulièrement pour “l’hybride “echo dans vim”” : à force de recherches sur le net, j’avais eu ce pré-sentiment. Grâce à toi, une partie du flou vient de se dissiper. J’ai encore à regarder “man hier” mais tes premières explications m’indiquent une direction. Merci.

@ thuban : Merci pour la commande “purge” qui a résolu le problème. Je l’avais vu passer à deux - trois occasions sur le net sans trop savoir comment l’employer. Même si ça reste flou. Jusqu’à présent, soit je réinstallais le système, soit je tentais de désinstaller le logiciel. C’est une commande supplémentaire que j’emploierais dans pareilles circonstances sans faire de réinstall : je progresse.

Problème résolu.

Merci

Salut,

En posant une seule question précise par post tu améliorerais la qualité et la précision des réponses.

Fais un copié-collé des commandes que tu passes plutôt que de dire “j’ai fait”.

visudo est plus causant que de dire j’ai employé visudo pour éditer sudoers :slightly_smiling:

Ton dossier alman se trouve comme toud les dossiers utilisateurs sous /home :slightly_smiling:
La séparation des dossiers de la racine assure aussi une meilleure stabilité. Quand un dossier est plein le système ne refuse pas de fonctionner, ce qui permet d’agir :slightly_smiling:

PS. Pour mettre un post en résolu, tu as la coche verte en bas à droite :slightly_smiling:

Hihi, je trouve ca marrant, tu dis une chose et son contraire dans la meme phrase. :wink:

[quote]Toujours est-il que j’ai complété (mais uniquement avec des ALL) le sudoers. J’ai encore du chemin…
[/quote]
Oui, je comprends bien que ce n’est pas evident de tout assimiler d’un coup. Ceci dit, maintenant tu sais comment tu peux editer le fichier sudoers, tant mieux, mais quel interet de donner tous les droits a sudo quand tu peux utiliser root et que c’est plus sur? Ou alors essaye d’affiner les droits donnes a sudo, mis j’aurais tendance a dire qu’il vaudrait mieux se mettre a ca quand tu maitriseras deja d’autres choses plus utiles dans l’immediat. Mais a toi de voir, bon courage. :006

Salut,

Un copié-collé de ton sudoers nous aurait permis d’apprécier et éventuellement de l’améliorer en sécurité :blush:

Hihi, je trouve ca marrant, tu dis une chose et son contraire dans la meme phrase. :wink: [/quote]

Oui, c’est vrai :smiley:
Basique car ça concerne plus l’arborescence du PC (un truc que je ne suis pas sensé touché) et compliqué car chaque répertoire a une fonction bien précise (wiki.debian-facile.org/manuel:st … res-racine) : il s’agit de ne pas se mélanger les pinceaux.

[quote=“youki”][quote]Toujours est-il que j’ai complété (mais uniquement avec des ALL) le sudoers. J’ai encore du chemin…
[/quote]
Oui, je comprends bien que ce n’est pas evident de tout assimiler d’un coup. Ceci dit, maintenant tu sais comment tu peux editer le fichier sudoers, tant mieux, mais quel interet de donner tous les droits a sudo quand tu peux utiliser root et que c’est plus sur? Ou alors essaye d’affiner les droits donnes a sudo, mis j’aurais tendance a dire qu’il vaudrait mieux se mettre a ca quand tu maitriseras deja d’autres choses plus utiles dans l’immediat. Mais a toi de voir, bon courage. :006[/quote]
Parfaitement d’accord. C’est ainsi que

Defaults:alman timestamp_timeout=0

Ca me permet de ne pas rester en root et donc de ne pas faire de bêtises dans mes manipulations.

@ ggoodluck47 : Merci.

[quote=“ggoodluck47”]Salut,

Un copié-collé de ton sudoers nous aurait permis d’apprécier et éventuellement de l’améliorer en sécurité :blush:[/quote]

Si tu insistes

[code]# /etc/sudoers

This file MUST be edited with the ‘visudo’ command as root.

See the man page for details on how to write a sudoers file.

Defaults env_reset

Host alias specification

User alias specification

Cmnd alias specification

User privilege specification

root ALL=(ALL) ALL
alman ALL=(ALL) ALL

Uncomment to allow members of group sudo to not need a password

(Note that later entries override this, so you might need to move

it further down)

%sudo ALL=NOPASSWD: ALL

Defaults specification

Defaults:alman timestamp_timeout=0,tty_tickets[/code]

Je lis diverse pages dont Sécuriser sudo dans laquelle est évoqué tty_tickets, sudo = su -c ou sudo -l…

Re,

Moi, je n’en ai pas besoin, mais si tu avais eu ceci sous les yeux tu n’aurais pas eu besoin de nous !