Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 03-07-2016 21:12:39

AbdelQahar
Membre
Lieu : Marmande
Distrib. : Jessie + Backports
Noyau : Linux 3.16.0-4-amd64
(G)UI : Xfce 4.10
Inscription : 14-08-2014

[Résolu avec sudo] Partager des fichiers de conf entre un user et root

@ tous : salut !

Petite question administration : Je voudrais savoir quelle est la solution la plus propre pour faire de sorte que l'utilisateur root ainsi que mon utilisateur courant utilisent communément certains fichier de configuration (vimrc, bashrc, inputrc...) ?

J'en ai marre de tout le temps faire

cp .bidule /root/

à chaque fois que je modifie un fichier de conf...

Dernière modification par AbdelQahar (08-07-2016 13:30:03)

Hors ligne

#2 03-07-2016 21:43:45

nIQnutn
Modérateur
Lieu : Lyon
Distrib. : Jessie
Noyau : Linux 3.16-amd64
(G)UI : XFCE
Inscription : 16-03-2012
Site Web

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

tu peux faire un lien

Hors ligne

#3 03-07-2016 22:30:46

AbdelQahar
Membre
Lieu : Marmande
Distrib. : Jessie + Backports
Noyau : Linux 3.16.0-4-amd64
(G)UI : Xfce 4.10
Inscription : 14-08-2014

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

Un lien symbolique ou un lien dur ?
Et au niveau des droits, c'est pas un peu sale comme méthode ?
Parce qu'on va se retrouver avec des fichiers appartenant à l'user dans le répertoire root. Ça met le bazar un peu non ?

Hors ligne

#4 03-07-2016 23:54:20

raleur
Membre
Inscription : 03-10-2014

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

Un lien dur ne peut être créé que si le lien et sa cible sont dans le même système de fichiers. Si /home est séparé de la racine, on ne peut créer qu'un lien symbolique.

Pour la sécurité, c'est une très mauvaise idée de permettre à l'utilisateur normal de modifier des fichiers de configuration utilisés par root. Fais plutôt l'inverse.

Dernière modification par raleur (03-07-2016 23:55:49)

Hors ligne

#5 04-07-2016 01:43:39

AbdelQahar
Membre
Lieu : Marmande
Distrib. : Jessie + Backports
Noyau : Linux 3.16.0-4-amd64
(G)UI : Xfce 4.10
Inscription : 14-08-2014

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

Mais à ce moment-là il va falloir que je modifie les fichiers en étant root. C'est super lourd, surtout que je modifie très régulièrement ces fichiers-là ! (plusieurs fois par jour parfois)

Je pense pas que je sois le seul à modifier mon .bahsrc ou mon .vimrc tout en voulant que root en profite. Comment font les autres ?

Hors ligne

#6 04-07-2016 07:46:37

sogal
Black Metal Modo
Distrib. : Debian Testing
Noyau : 4.7
(G)UI : Gnome
Inscription : 09-05-2013
Site Web

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

Salut,
Effectivement il n'y a pas 30 000 solutions. J'ai opté pour le cp car je modifie peu mes fichiers de conf à présent. Au pire tu fais un script qui vérifie si l'utilisateur a modifié l'un de ses fichiers de conf, si oui cp vers /root et tu lances ce script via la crontab root avec exécution une ou deux fois par jour en fonction des tes besoins.

Machine perso : Thinkpad x230 Debian Stretch | Machine pro : Thinpad T450 openSUSE Leap 42.2

Hors ligne

#7 04-07-2016 08:40:09

Lancelot du Lac
Membre
Lieu : France
Distrib. : Jessie | Stretch
Noyau : Linux 3.16.0-4-amd64 | 4.5.0-1-amd64
(G)UI : ZSH / LXDE, Openbox | KDE
Inscription : 22-02-2016

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

Pourquoi ne pas programmer un cron qui copiera très régulièrement tes fichiers de config, à l'aide de la commande rsync par exemple ?

[EDIT] Ah, je viens de voir que Sogal a proposé plus ou moins la même chose... hmm Désolé...

Dernière modification par Lancelot du Lac (04-07-2016 08:40:54)


Dell Inspiron 7500 series - Debian Stretch - KDE/openbox - ZSH
Samsung - Debian Jessie - LXDE/pas de graphique - ZSH

Hors ligne

#8 04-07-2016 08:48:43

sogal
Black Metal Modo
Distrib. : Debian Testing
Noyau : 4.7
(G)UI : Gnome
Inscription : 09-05-2013
Site Web

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

wink pas de soucis, plus il y a de solutions proposées mieux c'est !

Machine perso : Thinkpad x230 Debian Stretch | Machine pro : Thinpad T450 openSUSE Leap 42.2

Hors ligne

#9 04-07-2016 09:08:00

raleur
Membre
Inscription : 03-10-2014

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

AbdelQahar a écrit :

Mais à ce moment-là il va falloir que je modifie les fichiers en étant root.


Oui.

AbdelQahar a écrit :

C'est super lourd


Oui, la sécurité c'est super lourd. L'absence de sécurité, on a vu ce que ça a donné avec les versions de Windows où tout le monde a les droits admin.

sogal a écrit :

Au pire tu fais un script qui vérifie si l'utilisateur a modifié l'un de ses fichiers de conf, si oui cp vers /root et tu lances ce script via la crontab root


Du point de vue de la sécurité, c'est guère mieux que de donner à l'utilisateur la permission de modifier directement les fichiers de conf de root. Au final, les conséquences sont les mêmes.

Dernière modification par raleur (04-07-2016 09:09:43)

Hors ligne

#10 04-07-2016 11:19:20

AbdelQahar
Membre
Lieu : Marmande
Distrib. : Jessie + Backports
Noyau : Linux 3.16.0-4-amd64
(G)UI : Xfce 4.10
Inscription : 14-08-2014

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

Merci pour les idées.

J'ai pensé à une autre solution : modifié les fichiers de conf dans /etc

Hors ligne

#11 06-07-2016 21:44:20

AbdelQahar
Membre
Lieu : Marmande
Distrib. : Jessie + Backports
Noyau : Linux 3.16.0-4-amd64
(G)UI : Xfce 4.10
Inscription : 14-08-2014

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

Je viens de trouver une solution très intéressante :

https://unix.stackexchange.com/question … 516#263516

To get your usual dot files, make sure that sudo doesn't change the HOME environment variable. Whether this happens depends on the compile-time and run-time configuration of sudo. To preserve HOME, edit the sudoers file (run visudo, never edit this file directly!) and make sure that it contains

Defaults !always_set_home, !set_home
Defaults env_keep+=HOME

(Some of these may be unnecessary depending on compilation options.) And of course don't run sudo -i.

Do avoid doing too much as root though. For example, instead of running an editor as root, use sudoedit.


En gros : faire de sorte que sudo ne modifie pas la variable d'environnement HOME. Comme ça, les fichiers de conf utilisés seront ceux de l'user standart.
Pour ce faire :

visudo

Puis ajouter ces deux lignes au fichier :


Defaults !always_set_home, !set_home
Defaults env_keep+=HOME


Et aussi avoir recours à sudoedit plutôt que sudo vim ou sudo nano.

C'est très subtil !

Comment j'ai trouvé ça ? Je me suis rappelé que les fichiers de conf s'appellent "dotfiles" en anglais ("dot" pour point, car le nom de ces fichiers sont précédé pat un point, et sont par conséquent cachés).

Alors j'ai une recherche avec les mots-clés suivants : share dotfiles with root.

EDIT : pour faire cela de manière ponctuelle :

sudo -H reste_de_ligne_de_commande

L'option -H permet de préserver la variable HOME.

Dernière modification par AbdelQahar (06-07-2016 21:59:24)

Hors ligne

#12 07-07-2016 08:03:01

sogal
Black Metal Modo
Distrib. : Debian Testing
Noyau : 4.7
(G)UI : Gnome
Inscription : 09-05-2013
Site Web

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

Bien vu, c'est une bonne solution pour les utilisateurs de sudo en effet !

Machine perso : Thinkpad x230 Debian Stretch | Machine pro : Thinpad T450 openSUSE Leap 42.2

Hors ligne

#13 07-07-2016 09:40:29

raleur
Membre
Inscription : 03-10-2014

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

Mais avec les mêmes risques que de donner à un utilisateur normal la permission de modifier les fichiers de configuration de root.

Hors ligne

#14 07-07-2016 09:52:09

sogal
Black Metal Modo
Distrib. : Debian Testing
Noyau : 4.7
(G)UI : Gnome
Inscription : 09-05-2013
Site Web

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

raleur a écrit :

Mais avec les mêmes risques que de donner à un utilisateur normal la permission de modifier les fichiers de configuration de root.


De toute façon, quel que soit le moyen employé, dès qu'il y a élévation des privilèges, il y a risque potentiel. Je n'utilise pas sudo pour cela, préférant une stricte séparation des accès et des configs.
Mais dans le cadre de cette demande, cela me paraît représenter un moindre mal si sudo est bien configuré, que les fichiers de config ne contiennent pas de paramètres fantaisie et que l'utilisateur bénéficiant de l'élévation des privilèges est conscient de chacune des actions entreprises. Non ?


Machine perso : Thinkpad x230 Debian Stretch | Machine pro : Thinpad T450 openSUSE Leap 42.2

Hors ligne

#15 07-07-2016 12:05:53

phlinux
Membre
Lieu : S-M
Distrib. : Jessie
Noyau : 4.6
(G)UI : Openbox (+Rox+Feh)
Inscription : 10-05-2009

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

Il y a aussi la solution du "bind" des fichiers.

Dernière modification par phlinux (07-07-2016 12:24:02)


Pages perso : feh, omegat, udisks, sa station de travail comme passerelle

Hors ligne

#16 07-07-2016 23:28:29

AbdelQahar
Membre
Lieu : Marmande
Distrib. : Jessie + Backports
Noyau : Linux 3.16.0-4-amd64
(G)UI : Xfce 4.10
Inscription : 14-08-2014

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

phlinux a écrit :

Il y a aussi la solution du "bind" des fichiers.

C'est plus lourd à mettre en place je trouve. la tu rajoute juste deux ligne au /etc/sudoers pour ceux qui utilise sudo et c'est bon.

raleur a écrit :

Mais avec les mêmes risques que de donner à un utilisateur normal la permission de modifier les fichiers de configuration de root.

Pour ceux qui utilisent sudo, de toute façon le risque est déjà là à cause de la commande -H. Il suffit de le savoir.

Personnellement, après avoir délaisser Ubuntu, j'ai voulu me mettre à une admin "old-school' root/user plutôt que sudouser.

Mais je me suis rendu compte des avantages de sudo à cause de certains scripts que j'ai écris qui avaient besoin que certains parties soient utilisé avec des droits normaux et d'autres avec des droits élevés. Je voulais donc qu'ils soient lancés par un user normal, mais mettre su -c 'truc_muche' partout et devoir mettre son mot de passe à plusieurs reprise, c'est trop lourd. Je suis donc revenu à sudo sauf que je l'ai configuré de la manière suivante :

1 - mon user ne fait pas partie du groupe sudo, je l'ai simplement rajouté dans le fichier /etc/sudoers (c'est permets d'éviter à gksu de taper l'incruste dans toutes les applis graphique nécessitant les droits root, pkexec garde son rôle)
2 - j'ai rajouté l'option rootpw pour que ce soit le mot de passe de root qui soit demandé (ce que je trouve bien plus cohérent)

Parmi les avantages que je vois dans cette méthode :
* simple à mettre en place
* allège le dossier /root puisque il n'y a presque plus rien à mettre dedans au final
* ce ne sont pas les fichiers de root, ce sont les fichiers de l'user dont root se sert

Je passe en résolu tiens.

Dernière modification par AbdelQahar (08-07-2016 13:47:44)

Hors ligne

#17 08-07-2016 12:46:46

phlinux
Membre
Lieu : S-M
Distrib. : Jessie
Noyau : 4.6
(G)UI : Openbox (+Rox+Feh)
Inscription : 10-05-2009

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

Au final tu tapes une ligne de commande par fichiers ?

Pages perso : feh, omegat, udisks, sa station de travail comme passerelle

Hors ligne

#18 08-07-2016 13:22:39

AbdelQahar
Membre
Lieu : Marmande
Distrib. : Jessie + Backports
Noyau : Linux 3.16.0-4-amd64
(G)UI : Xfce 4.10
Inscription : 14-08-2014

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

phlinux a écrit :

Au final tu tapes une ligne de commande par fichiers ?

Je ne suis pas sûr d'avoir compris le sens de ta question...

En fait soit tu rajoute les deux lignes dans le /etc/sudoers via la commande visudo.

À ce moment-là, lorsque tu feras sudoedit ou sudo vim par exemple (ou sudo emacs), le fichier .vim (ou .emacs) utilisé sera celui de l'user avec lequel tu as utilisé sudo, pas celui de root.
De même si tu fais sudo -s, le fichier .bahsrc (ou .zshrc pour ceux qui utilisent zsh) sera celui de l'user.

Dans ces conditions, le répertoire /root peut très ne contenir ni .vimrc ni .bahsrc, il n'y a rien à faire de spécial avec les fichier de conf. Pas de ligne de commandes à lancer pour chaque fichier.

J'espère que ça répond à ta question.

Je vais mettre [Résolu avec sudo] plutôt.

Dernière modification par AbdelQahar (08-07-2016 13:48:03)

Hors ligne

#19 08-07-2016 20:49:47

phlinux
Membre
Lieu : S-M
Distrib. : Jessie
Noyau : 4.6
(G)UI : Openbox (+Rox+Feh)
Inscription : 10-05-2009

Re : [Résolu avec sudo] Partager des fichiers de conf entre un user et root

Ok, merci pour l'explication

Pages perso : feh, omegat, udisks, sa station de travail comme passerelle

Hors ligne

Pied de page des forums