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

Linux Discussion :

Ping seulement pour root


Sujet :

Linux

  1. #1
    Membre habitué Avatar de TSalm
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    361
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 361
    Points : 177
    Points
    177
    Par défaut Ping seulement pour root
    Bonjour,

    J'ai écrit un programme qui envoi un ping.
    Seulement, j'ai une erreur à l'appel du ping comme quoi seulement Root peut pinger !?
    Y a t-il une solution pour que je puisse pinger sans être root ? D'autant que je n'ai pas ce problème si je fait un "ping" en ligne de commande.

    D'avance merci.
    -TSalm

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    Si tu regardes bien les droits du ping (le vrai), tu risques de voir un truc genre "r-sr-xr-x". Le premier caractère "s" est très important, c'est le setuid bit.

    Ce setuid bit indique au système que ce binaire s'exécute avec les droits du propriétaire du fichier et non pas les droits de l'utilisateur. Ping s'exécute donc en tant que "root".

    Le fonctionnement de ping fait qu'il utilise des raw socket. L'utilisation des raw socket n'est autorisée que pour l'utilisateur "root". Un utilisateur normal n'a pas le droit de faire du raw socket.

    Donc si ton programme veut avoir le droit de pinguer (je suppose que tu as réécrit la mécanique de ping en raw socket), il faut qu'il soit exécuté par root ou bien que le setuid bit soit positionné.
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  3. #3
    Membre habitué Avatar de TSalm
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    361
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 361
    Points : 177
    Points
    177
    Par défaut
    Merci pour ta réponse.
    Si je comprends bien, la meilleurs solution serait d'appeler directement la commande ping.

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

Discussions similaires

  1. modififier l'opacité seulement pour le background
    Par Jorus dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 15/08/2010, 16h18
  2. "access denied" pour root en réseau
    Par Chauve souris dans le forum Débuter
    Réponses: 1
    Dernier message: 18/04/2006, 18h21
  3. delete[] seulement pour des tableaux d'objets?
    Par Crisanar dans le forum C++
    Réponses: 7
    Dernier message: 22/10/2005, 19h50
  4. Dev C++ (Bien seulement pour les debutants)?
    Par Frazeks dans le forum Dev-C++
    Réponses: 3
    Dernier message: 20/09/2005, 13h41
  5. Réponses: 2
    Dernier message: 02/08/2005, 11h33

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