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

C Discussion :

Recuperer les utilisateurs et les noms de machine


Sujet :

C

  1. #1
    Membre éclairé
    Avatar de genova
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 487
    Points : 790
    Points
    790
    Par défaut Recuperer les utilisateurs et les noms de machine
    Bonjour,

    j'aimerai pouvoir lister les hosts d'un reseau unix ainsi que tous les utilisateurs disponible, mais je n'ai aucune idee des fonctions en C qui pourraient m'aider a le faire.

    Mon but final etant de faire une completion (sur un shell) qui puisse completer par exemple ~login ou bien scp utilisateur@host

    Merci d'avanace
    Testez le forum Fire Soft Board, un forum libre, gratuit et français.

    Système de template de phpBB - Lisez la FAQ PHP avant toute question si vous débuttez en PHP.

  2. #2
    Rédacteur

    Avatar de gege2061
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2004
    Messages
    5 840
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2004
    Messages : 5 840
    Points : 11 625
    Points
    11 625
    Par défaut Re: Recuperer les utilisateurs et les noms de machine
    Bonjour,
    Citation Envoyé par dark_genova
    ~login ou bien scp utilisateur@host
    je croi que ce genre d'info se trouve dans les variables d'environnement, dans ce cas, utilise la fonction getenv. Sinon, il va falloir te tourner vers des fonctions non standard (POSIX).

  3. #3
    Membre éclairé
    Avatar de genova
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 487
    Points : 790
    Points
    790
    Par défaut
    Les variables d'environement USER et HOST contiennent uniquement les donnees de la machine locale et de la session actuelle.

    Par contre j'ai trouve une pseudo solution, executer des scommandes shell et rediriger le resultat dans un fichier, puis lire celui ci.
    Pour les hosts : ns_hwho | cut -f1 -d ' ' > /tmp/.get_hosts
    Pour les utilisateurs : ypcat passwd | cut -f1 -d ':' > /tmp/.get_users

    Malheuresement ce n'est pas ce qu'il y a de plus leger et de plus propre mais pas grave ^^
    Testez le forum Fire Soft Board, un forum libre, gratuit et français.

    Système de template de phpBB - Lisez la FAQ PHP avant toute question si vous débuttez en PHP.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2004
    Messages : 66
    Points : 90
    Points
    90
    Par défaut
    En C plutôt qu'en shell tu peux :
    - pinger chaque machine du subnet et voir lesquelles sont présentes
    - sur chaque machine, lire les process, voir qui possède le shell (celui qui est logged-in), et trouver son nom à partir de son ID
    - Je suis fascine par l'air. Si on enlevait l'air du ciel, tous les oiseaux tomberaient par terre....Et les avions aussi....
    - Si tu travailles avec un marteau-piqueur pendant un tremblement de terre, désynchronise-toi, sinon tu travailles pour rien.
    JC Vandamme.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par DavG
    En C plutôt qu'en shell tu peux :
    - pinger chaque machine du subnet et voir lesquelles sont présentes
    - sur chaque machine, lire les process, voir qui possède le shell (celui qui est logged-in), et trouver son nom à partir de son ID
    C'est non fiable, c'est pas parce qu'un ping repond pas que ya pas de machines au bout.

    dark_genova: Je crois que tu t'es repondu toi meme Les utilitaires que tu as mentionne sont probablement open source, donc tu pourrait y jeter un oeuil.

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2004
    Messages : 66
    Points : 90
    Points
    90
    Par défaut
    Citation Envoyé par voider
    C'est non fiable, c'est pas parce qu'un ping repond pas que ya pas de machines au bout.
    Dans un réseau local il n'y a aucune raison de bloquer les réponses aux ping par craine d'une attaque
    - Je suis fascine par l'air. Si on enlevait l'air du ciel, tous les oiseaux tomberaient par terre....Et les avions aussi....
    - Si tu travailles avec un marteau-piqueur pendant un tremblement de terre, désynchronise-toi, sinon tu travailles pour rien.
    JC Vandamme.

  7. #7
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par DavG
    Citation Envoyé par voider
    C'est non fiable, c'est pas parce qu'un ping repond pas que ya pas de machines au bout.
    Dans un réseau local il n'y a aucune raison de bloquer les réponses aux ping par craine d'une attaque
    Why not? Toutes mes machines ne repondent pas aux ping, et pas juste a cela. Sans mentionner que plus de personnes qu'avant utilisent maintenant des firewall, qui proposent souvent ce genre de protection. Pas qu'un ping soit dangeureux en soi, mais c'est une methode pour laisser penser qu'il n'y a pas d'ordinateur a l'adresse en question (sans necessairement etre oblige de bloquer tout les messages supporte par icmp, echo est suffisant pour ce cas).

    De toute facon, je ne voulais pas justifier une telle pratique, mais seulement qu'il se peux que ca arrive, et que donc cette methode de detection est moyenne.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/01/2012, 10h03
  2. Réponses: 4
    Dernier message: 22/09/2008, 12h01
  3. Réponses: 7
    Dernier message: 14/11/2007, 13h36
  4. Réponses: 4
    Dernier message: 11/09/2006, 16h55

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