IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Redirection sudo


Sujet :

Shell et commandes GNU

  1. #1
    Membre confirmé Avatar de AvySamaj
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 118
    Par défaut Redirection sudo
    Bonjour. Ma machine fonctionne sur Ubuntu 18.04.3, et bash 4.4.20.

    Je tente de m'inspirer d'un tutoriel pour créer plusieurs instances de Tor pour en faire un script .sh par la suite.
    Mais me voici bloqué par cette chose quand je test les commandes dans le terminal :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    (base) avy@machine:/etc/tor$ sudo -u root touch torrc5
    (base) avy@machine:/etc/tor$ sudo SOCKSPort 9150 >> torrc5
    bash: torrc5: Permission non accordée
    (base) avy@machine:/etc/tor$ ls -l
    total 24
    -rw-r--r-- 1 root root 10979 mai   23 15:52 torrc
    -rw-r--r-- 1 root root     0 août  29 21:33 torrc5
    -rw-r--r-- 1 root root  2087 août   4  2017 torsocks.conf
    J'ai beau regarder la doc, avoir comparer avec d'autres dossiers qui appartiennent à des programmes comme mongod, là je vois bien que ça appartient à root et pourtant il me refuse la permission d'écriture. Je ne comprends pas.
    C'est d'autant plus étrange que la commande (base) avy@machine:/etc/tor$ sudo nano torrc5 marche très bien et je peux écrire dedans .

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 694
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 694
    Par défaut
    Bonjour,

    c'est un problème connu : la redirection est effectuée dans le domaine de l'utilisateur, et pas dans le domaine du "sudoer".

    il y a plusieurs façon de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sudo commande | tee -a /chemin/fichierSudoer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sudo sh -c 'commande >> /chemin/fichierSudoer
    ...

    EDIT: note de modération : ne pas confondre Sujet et exposé préliminaire.
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Membre confirmé Avatar de AvySamaj
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 118
    Par défaut Comment ça marche ?
    Que font ces commandes dans le détail?
    Je sais que vous dîtes vrai pcq j'ai trouvé à de multiples reprises vos indications. Malgré tout j'aimerais comprendre ce que ça fait. J'ai beau avoir lu des pages sur le "sudoer", je n'arrive pas à savoir ce que font exactement vos commandes.
    Une simple curiosité avant de faire qqch pour ma part.

  4. #4
    Membre confirmé Avatar de AvySamaj
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 118
    Par défaut Problème annexe d'écriture
    Par ailleurs en essayant ceci le fichier reste malgré tout vide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    (base) avy@machine:/etc/tor$ su -
    Mot de passe*: 
    root@machine:~# touch torrc5
    root@machine:~# echo "SOCKSPort 9150" >> torrc5
    root@machine:~# exit
    déconnexion

  5. #5
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 694
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 694
    Par défaut
    le fichier reste malgré tout vide
    comment le sais-tu ?

    d'autrepart, touch n'est pas un préalable indispensable à la création de fichier. La simple redirection crée le ficihier.
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  6. #6
    Membre confirmé Avatar de AvySamaj
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 118
    Par défaut
    ah en effet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    root@machine:~# cat torrc5
    SOCKSPort 9150
    SOCKSPort 9150
    SOCKSPort 9150
    Pourtant en ouvrant le fichier en cliquant dessus rien n'apparaissait. J'imagine qu'en l'ouvrant en tant qu'utilisateur avy ça devait cacher ce qu'il y avait dedans. Ce que me confirme la commande suivante qui ne m'affiche rien:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    (base) avy@machine:/etc/tor$ sudo cat torrc5
    [sudo] Mot de passe de avy*: 
    (base) avy@machine:/etc/tor$
    Alors revenons en la question précédente, que font exactement les commandes que vous m'avez présenté histoire que je comprenne mieux ce que je fais.

  7. #7
    Membre confirmé Avatar de AvySamaj
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 118
    Par défaut
    En premier lieu je suis tombé sur ça et je vois pas le fichier /sudoer dans la commande indiquée. Donc j'ai fais exactement comme dit par ce topic du StackSuperUser.
    En seconde lieu, histoire que ça puisse aider d'autres au cas où.
    Dans le script .sh:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #!/bin/bash
    echo 'SOCKSPort 9250' | sudo tee -a torrc2
    Et ensuite lancer le script .sh avec sudo qui dure 15min connecté sans besoin de mot de passe à retaper:

  8. #8
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 298
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 298
    Par défaut
    Bonjour

    ah en effet


    sudo
    Normalement, sudo n'est pas fait pour l'utilisation que tu en fais. Il devrait être restreint à une ou deux commandes précises et délimitées.
    sudo permet d'utiliser la tondeuse de papa, sans être papa. Et encore moins avoir accès à ses magazines coquins.

    Tu es Avy. Tu n'es pas root. Tu peux utiliser une commande root par sudo. Mais tu ne peux pas accéder directement aux documents root. Par contre, le logiciel rooté peut accéder aux fichiers root. Est-ce clair ?

    La redirection ne marchera pas si c'est toi qui la fais.
    Mais si sudo exécute tee, alors tee a les droits root. Et tee peut écrire le fichier sur l'espace de root grâce à sudo.

    Pourquoi Avy voit /etc/torrc ? Car tout le monde a le droit de lecture sur le dossier (donc lister les fichiers)
    Pourquoi root voit /etc/torrc ? Idem
    Pourquoi root lit et modifie /etc/torrc ? Car c'est son fichier. Il a le droit de lecture et d'écriture.
    Pourquoi Avy ne lit pas et ne modifie pas /etc/torrc ? Car l'umask de root ne donne pas le droit de lecture et modification du fichier qu'il crée, aux inconnus.

    Je suis quand même surpris que tu n'aies pas un petit message d'erreur quand tu veux afficher un document sans avoir le droit.

  9. #9
    Membre confirmé Avatar de AvySamaj
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 118
    Par défaut
    Citation Envoyé par Flodelarab Voir le message
    Je suis quand même surpris que tu n'aies pas un petit message d'erreur quand tu veux afficher un document sans avoir le droit.
    Suggérez-vous que je dois d'avantage protéger ma machine?
    J'admets que c'est pratique pour ma part de circuler à travers les dossiers de la racine / pour voir ce qu'il y a dedans via l'explorateur de fichiers.Maintenant si vous me dîtes que ça peut vraiment être une faille de sécurité importante je peux revoir ça.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Redirection avec sudo
    Par gifffftane dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 20/01/2009, 10h49
  2. redirection de trames
    Par Fry dans le forum Développement
    Réponses: 2
    Dernier message: 06/01/2004, 14h31
  3. [VB.NET]Double redirection.
    Par CammCamm dans le forum ASP.NET
    Réponses: 9
    Dernier message: 24/11/2003, 16h11
  4. [VB6] probleme de redirection d'une commande DOS
    Par WriteLN dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 10/06/2003, 10h36
  5. [reseaux] redirection de flux
    Par Olive1808 dans le forum Programmation et administration système
    Réponses: 2
    Dernier message: 12/08/2002, 10h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo