Sudo HS [Réglé]

Etienne Membre non connecté
-
- Voir le profil du membre Etienne
- Inscrit le : 20/11/2008
- Site internet
- Groupes :
Décidément je me galère sur l'installation de Mageia 7 sur un nouvel ordinateur de récup.
Cette fois j'ai corrompu sudoers. Génial !
Toute tentative d'une commande en sudo me donne :
Code :
>>> /etc/sudoers: erreur de syntaxe near line 1 <<<
sudo: erreur d'analyse grammaticale dans /etc/sudoers aux environs de la ligne 1
sudo: aucune source sudoers valide n'a été trouvée, fin d'exécution
sudo: impossible d'initialiser le greffon de règles
En fait, j'ai voulu utiliser veracrypt sans entrer le mot de passe administrateur. Donc j'ai voulu ajouter une ligne à sudoers. Mais je ne comprenais rien à visudo (pas trouvé comment on écrit là-dedans, ni comment on sauvegarde. je crois que j'ai fini par comprendre à peu près mais franchement c'est fait pour être compliqué).
Donc j'ai voulu ouvrir sudoers en root avec kwrite comme j'ai toujours fait sans problème, en passant par un explorateur en root (krusader). Impossible d'ouvrir avec kwrite. Par contre ça s'est ouvert avec libreoffice. Ca c'est sans doute pas malin, d'autant plus que j'ai fait la modif et enregistré (en mode texte). Puis finalement après un tas de manips ça peut maintenant s'ouvrir avec kwrite. J'avais essayé de créer un fichier dans etc/sudoers.d, mais ça ne fonctionnait pas (veracrypt demandait quand même le mdp admin). Je l'ai supprimé.
Bref, je me retrouve avec un fichier sudoers comme suit :
Caché :
## Sudoers allows particular users to run various commands as
## the root user, without needing the root password.
##
## Examples are provided at the bottom of the file for collections
## of related commands, which can then be delegated out to particular
## users or groups.
##
## This file must be edited with the 'visudo' command.
## Host Aliases
## Groups of machines. You may prefer to use hostnames (perhaps using
## wildcards for entire domains) or IP addresses instead.
# Host_Alias FILESERVERS = fs1, fs2
# Host_Alias MAILSERVERS = smtp, smtp2
## User Aliases
## These aren't often necessary, as you can use regular groups
## (ie, from files, LDAP, NIS, etc) in this file - just use %groupname
## rather than USERALIAS
# User_Alias ADMINS = jsmith, mikem
## Command Aliases
## These are groups of related commands...
## Networking
# Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig, /bin/ping, /sbin/dhclient, /usr/bin/net, /sbin/iptables, /usr/bin/rfcomm, /usr/bin/wvdial, /sbin/iwconfig, /sbin/mii-tool
## Installation and management of software
# Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/up2date, /usr/bin/yum
## Services
# Cmnd_Alias SERVICES = /sbin/service, /sbin/chkconfig
## Updating the locate database
# Cmnd_Alias LOCATE = /usr/bin/updatedb
## Storage
# Cmnd_Alias STORAGE = /sbin/fdisk, /sbin/sfdisk, /sbin/parted, /sbin/partprobe, /bin/mount, /bin/umount
## Delegating permissions
# Cmnd_Alias DELEGATING = /usr/sbin/visudo, /bin/chown, /bin/chmod, /bin/chgrp
## Processes
# Cmnd_Alias PROCESSES = /bin/nice, /bin/kill, /usr/bin/kill, /usr/bin/killall
## Drivers
# Cmnd_Alias DRIVERS = /sbin/modprobe
# Defaults specification
#
# Refuse to run if unable to disable echo on the tty.
#
Defaults !visiblepw
Defaults env_reset
Defaults env_keep = "COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS"
Defaults env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
Defaults env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
Defaults env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
Defaults env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin
## Next comes the main part: which users can run what software on
## which machines (the sudoers file can be shared between multiple
## systems).
## Syntax:
##
## user MACHINE=COMMANDS
##
## The COMMANDS section may have other options added to it.
##
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
## Allows members of the 'sys' group to run networking, software,
## service management apps and more.
# %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
## Allows members of the users group to mount and unmount the
## cdrom as root
# %users ALL=/sbin/mount /mnt/cdrom, /sbin/umount /mnt/cdrom
## Allows members of the users group to shutdown this system
# %users localhost=/sbin/shutdown -h now
## Read drop-in files from /etc/sudoers.d (the # here does not mean a comment)
#includedir /etc/sudoers.d
## the root user, without needing the root password.
##
## Examples are provided at the bottom of the file for collections
## of related commands, which can then be delegated out to particular
## users or groups.
##
## This file must be edited with the 'visudo' command.
## Host Aliases
## Groups of machines. You may prefer to use hostnames (perhaps using
## wildcards for entire domains) or IP addresses instead.
# Host_Alias FILESERVERS = fs1, fs2
# Host_Alias MAILSERVERS = smtp, smtp2
## User Aliases
## These aren't often necessary, as you can use regular groups
## (ie, from files, LDAP, NIS, etc) in this file - just use %groupname
## rather than USERALIAS
# User_Alias ADMINS = jsmith, mikem
## Command Aliases
## These are groups of related commands...
## Networking
# Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig, /bin/ping, /sbin/dhclient, /usr/bin/net, /sbin/iptables, /usr/bin/rfcomm, /usr/bin/wvdial, /sbin/iwconfig, /sbin/mii-tool
## Installation and management of software
# Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/up2date, /usr/bin/yum
## Services
# Cmnd_Alias SERVICES = /sbin/service, /sbin/chkconfig
## Updating the locate database
# Cmnd_Alias LOCATE = /usr/bin/updatedb
## Storage
# Cmnd_Alias STORAGE = /sbin/fdisk, /sbin/sfdisk, /sbin/parted, /sbin/partprobe, /bin/mount, /bin/umount
## Delegating permissions
# Cmnd_Alias DELEGATING = /usr/sbin/visudo, /bin/chown, /bin/chmod, /bin/chgrp
## Processes
# Cmnd_Alias PROCESSES = /bin/nice, /bin/kill, /usr/bin/kill, /usr/bin/killall
## Drivers
# Cmnd_Alias DRIVERS = /sbin/modprobe
# Defaults specification
#
# Refuse to run if unable to disable echo on the tty.
#
Defaults !visiblepw
Defaults env_reset
Defaults env_keep = "COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS"
Defaults env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
Defaults env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
Defaults env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
Defaults env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin
## Next comes the main part: which users can run what software on
## which machines (the sudoers file can be shared between multiple
## systems).
## Syntax:
##
## user MACHINE=COMMANDS
##
## The COMMANDS section may have other options added to it.
##
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
## Allows members of the 'sys' group to run networking, software,
## service management apps and more.
# %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
## Allows members of the users group to mount and unmount the
## cdrom as root
# %users ALL=/sbin/mount /mnt/cdrom, /sbin/umount /mnt/cdrom
## Allows members of the users group to shutdown this system
# %users localhost=/sbin/shutdown -h now
## Read drop-in files from /etc/sudoers.d (the # here does not mean a comment)
#includedir /etc/sudoers.d
Ce qui a l'air normal (je ne vois pas ce qui clocherait en ligne 1).
Le fichier appartient bien à root, avec des permissions 440 (peut consulter, peut consulter, ne peut rien faire)
Il est de type "document texte brut". Est-ce que c'est pas là le problème ? Suite à l'enregistrement par libreoffice ? (le fichier sudoers.dist est de type "script/fonction MATLAB") Dans ce cas comment on change ça ?
Bref ça fait 3h que j'y suis et j'ai l'impression que je suis parti pour une réinstalle complète, non ...?
Merci à vous,
Etienne

nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Pourrait ce être un problème d' encodage du fichier ?
Chez moi, le fichier est de type
Code BASH :
#file /etc/sudoers /etc/sudoers: C source, ASCII text
Édité par nic80 Le 02/03/2020 à 00h33

Etienne Membre non connecté
-
- Voir le profil du membre Etienne
- Inscrit le : 20/11/2008
- Site internet
- Groupes :
Bon mais finalzement j'ai résolu au moins partiellement la question. Trois heures à me prendre la tête et c'est en postant sur MLO que me vient une dernière idée qui a l'air de fonctionner.
J'ai renommé sudoers en sudoers-old et j'ai fait une copie de sudoers.dist dans un nouveau sudoers. Ca fonctionne. Et histoire d'être sûr de retrouver le même sudo qu'avant, j'ai remplacé le contenu de ce nouveau sudoers par celui du sudoers-old.
Ce nouveau sudoers est de type "script/fonction MATLAB". C'est peut-être ça, ou effectivement une question d'encodage.
Au passage, si je ne pouvais pas ouvrir sudoers avec kwrite depuis krusader, c'est que je l'avais ouvert avec sudo et que kwrite ne s'ouvre plus avec sudo, tout comme dolphin. Sécurité sécurité. Si j'ai pu ensuite ouvrir mon sudoers avec kwrite, c'est que cette fois j'avais lancé krusader en su.
Je sais que je vais faire hurler les pros avec ce genre de manip anti-sécurité, mais bon, on bidouille comme on peut ...
Édité par Etienne Le 02/03/2020 à 00h46

Etienne Membre non connecté
-
- Voir le profil du membre Etienne
- Inscrit le : 20/11/2008
- Site internet
- Groupes :

Etienne Membre non connecté
-
- Voir le profil du membre Etienne
- Inscrit le : 20/11/2008
- Site internet
- Groupes :
Code :
# file /etc/sudoers
/etc/sudoers: C source, UTF-8 Unicode text
Par contre je n'ai pas essayé quand ça buggait.
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie