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 :

Automatiser une connexion à vpnbook


Sujet :

Shell et commandes GNU

  1. #21
    Nouveau membre du Club
    Homme Profil pro
    Développeur en alternance
    Inscrit en
    Décembre 2016
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur en alternance
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2016
    Messages : 112
    Points : 29
    Points
    29
    Par défaut
    Citation Envoyé par jack-ft Voir le message
    Déjà, je ne comprends pas pourquoi les messages d'erreur comportent des fautes d'orthographe!
    Aurais-tu trafiqué le kernel linux?
    Ou bien se pourrait-il que tu ne fasses pas de copier/coller pour insérer les messages d'erreur?
    La distribution Linux que j'utilise est sous virtual box et j'ai des problèmes avec l'installation des additions invités (mais ça c'est un autre problème ) ce qui m'empeche de faire des copier coller et donc je dois tout réecrire à la main, d'ou les fautes !

    Citation Envoyé par jack-ft Voir le message
    .
    Sinon, pourrais-tu nous dire précisément où se trouve ce fameux fichier startVPN? (j'espère que tu comprends la question!)
    En d'autres termes (qui sont la base de la base du shell), peux-tu nous donner le chemin complet de ce fichier?

    Une fois que tu as ce chemin, c'est cette valeur qu'il faut donner à la variable DAEMON, sinon le test -x "$DAEMON" (avec des guillemets, pliz) ne risque pas de passer!
    il est dans /usr/bin

  2. #22
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    Citation Envoyé par Java Ou Javapas Voir le message
    La distribution Linux que j'utilise est sous virtual box et j'ai des problèmes avec l'installation des additions invités (mais ça c'est un autre problème ) ce qui m'empeche de faire des copier coller et donc je dois tout réecrire à la main, d'ou les fautes !
    Ok! Je comprends mieux... et je compatis!

    J'ai eu travaillé avec VirtualBox sous Windoze... et j'ai aussi eu des problèmes avec l'installation des guest addons.
    Une fois le problème réglé (je ne sais plus comment (désolé)), ça améliore la vie, quand la souris marche correctement et le copier/coller aussi!

    il est dans /usr/bin
    Really?????

    Je te rappelle que tu as dit naguère (aux erreurs de recopie près ):

    Citation Envoyé par Java Ou Javapas Voir le message
    j'ai le droit à "impossible d'accedez à /usr/bin/startVPN : aucun fichier ou dossier de ce type"
    Au passage, la commande ls -ld /usr/bin/startVPN ne dépend pas du répertoire courant car le chemin testé est absolu (il commence par un "/").

    Donc, de 2 choses l'une:
    ou bien le fichier "/usr/bin/startVPN" n'existe pas, ce que semble confirmer le résultat de ls -ld /usr/bin/startVPN,
    ou bien le fichier "startVPN" n'est pas dans "/usr/bin", contrairement à ce que tu viens de dire précédemment,
    ou bien le fichier "startVPN" est dans "/usr/bin", mais il ne s'appelle pas "startVPN" (par exemple, il s'appelle "startVPN.sh" ou "startvpn" (car linux est un peu sensible à la casse)).

    À toi de voir... D'ici, je ne peux pas faire grand-chose!

    PS: il existe 3 types de gens: ceux qui savent compter et ceux qui ne savent pas compter...

  3. #23
    Nouveau membre du Club
    Homme Profil pro
    Développeur en alternance
    Inscrit en
    Décembre 2016
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur en alternance
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2016
    Messages : 112
    Points : 29
    Points
    29
    Par défaut
    Citation Envoyé par jack-ft Voir le message
    Au passage, la commande ls -ld /usr/bin/startVPN ne dépend pas du répertoire courant car le chemin testé est absolu (il commence par un "/").

    Donc, de 2 choses l'une:
    ou bien le fichier "/usr/bin/startVPN" n'existe pas, ce que semble confirmer le résultat de ls -ld /usr/bin/startVPN,
    ou bien le fichier "startVPN" n'est pas dans "/usr/bin", contrairement à ce que tu viens de dire précédemment,
    ou bien le fichier "startVPN" est dans "/usr/bin", mais il ne s'appelle pas "startVPN" (par exemple, il s'appelle "startVPN.sh" ou "startvpn" (car linux est un peu sensible à la casse)).

    À toi de voir... D'ici, je ne peux pas faire grand-chose!

    PS: il existe 3 types de gens: ceux qui savent compter et ceux qui ne savent pas compter...

    Bon ben encore une erreur de recopie sur ls -ld /usr/bin/startVPN j'avais pas mis le "/" la première fois mais je l'ai mis sur le deuxième et j'obtiens bien /usr/bin/startVPNmais le DAEMON ben il veut pas et la je comprends vraiment pas
    Il est toujours bloqué au test

  4. #24
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    Citation Envoyé par Java Ou Javapas Voir le message

    Bon ben encore une erreur de recopie sur ls -ld /usr/bin/startVPN
    Faudrait peut-être que tu règles d'abord tes problèmes de copier/coller: ça permettrait à ceux qui essaient de t'aider (gratuitement) de faire un meilleur usage de leur temps...

    j'avais pas mis le "/" la première fois
    Faudrait peut-être que tu apprennes la différence un chemin local et un chemin global, c'est vraiment la base!

    mais je l'ai mis sur le deuxième et j'obtiens bien /usr/bin/startVPNmais le DAEMON ben il veut pas et la je comprends vraiment pas
    Il est toujours bloqué au test
    Comme tu es manifestement (très) débutant et que tu ne peux probablement pas répondre à une (simple (pour la plupart des utilisateurs du shell)) question comme "ton script est-il bien exécutable?", j'ai pris la précaution de faire une demande précise en demandant le résultat de ls -ld /usr/bin/startVPN et non le résultat de ls /usr/bin/startVPN, notamment afin de vérifier les droits d'accès dudit fichier.

    Désolé, mais je commence à atteindre les limites de ma patience...

    Donc mes suggestions: soit tu lis un cours de débutant shell, soit tu règles tes problèmes de copier/coller afin de faciliter le dialogue, soit tu recopies le résultat complet de la commande (avec tes petites mains), soit tu ajoutes sans réfléchir les droits d'exécution qui manquent probablement (mais que nous n'avons pas encore pu vérifier, faute d'information suffisamment précise), par exemple en faisant un chmod +x sur ton fichier.

  5. #25
    Expert confirmé
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Points : 4 845
    Points
    4 845
    Par défaut
    Ou tu configures ta VM pour qu'elle ait accès au réseau et tu utilises un navigateur depuis la VM pour poster sur DVP ^^

  6. #26
    Nouveau membre du Club
    Homme Profil pro
    Développeur en alternance
    Inscrit en
    Décembre 2016
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur en alternance
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2016
    Messages : 112
    Points : 29
    Points
    29
    Par défaut
    Bien bien bien, ça y est j'ai enfin ma VM avec les additions invités et j'ai mis '-f' a la place de '-x' dans mon DAEMON dans /etc/init.d/ ce qui me donne (le -f permet de faire fonctionner le script)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    #!/bin/bash
     
    PATH=/bin:/usr/bin:/sbin:/usr/sbin
     
    DAEMON=/usr/bin/startVPN  #on met le programme ici
    echo "Automatisation début"
    test -f "$DAEMON" || exit 0
    echo "Automatisation début"
    case "$1" in
    	start)
    /usr/bin/startVPN
    	;;
    	stop)
    		killall
    	;;
    	force-reload|restart)
    	 $0 stop
    	 $0 start
    	;;
    	*)
    	echo "Usage : /etc/init.d/vpnstart {start|stop|restart|force-reload|status}"
    	exit 1
    	;;
    esac
     
    exit 0
    et ça pour mon script qui lance le vpn dans /usr/bin/
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    #!/bin/bash
    echo "je passe bien la"
    cd ~root/Documents
    sudo openvpn --config vpnbook-us1-udp25000.ovpn --auth-nocache
    par contre mon daemon ne se lance pas automatiquement au démarrage

  7. #27
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    Citation Envoyé par Java Ou Javapas Voir le message
    Bien bien bien, ça y est j'ai enfin ma VM avec les additions invités
    Chouette! Tu vas pouvoir faire des copier/coller!

    Et on va peut-être (enfin) avoir le résultat de ls -ld /usr/bin/startVPN...

    et j'ai mis '-f' a la place de '-x' dans mon DAEMON dans /etc/init.d/ ce qui me donne (le -f permet de faire fonctionner le script)
    Mauvaise idée!

    Le script "/usr/bin/startVPN" doit absolument être exécutable!!!
    sinon l'instruction de ta ligne 11 (cas "start") ne va pas fonctionner.

    J'ai d'ailleurs du mal à comprendre la cohérence entre:
    • la valuation du PATH, qui n'est utilisé nulle part sauf peut-être pour l'appel à killall. D'ailleurs que vient-il faire là, sans argument???
    • la déclaration de $DAEMON, qui n'est pas réutilisée à la ligne 11



    De plus, les lignes 17 et 18 font que le script est légèrement récursif.

    Si le traitement à faire était essentiellement récursif (comme la gestion d'un arbre), cela pourrait s'envisager, mais ici, ce n'est pas le cas.

    Il vaudrait mieux àmha passer par une fonction, par exemple quelque chose comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    #!/bin/bash
     
    # Constantes
     
    PATH=/bin:/usr/bin:/sbin:/usr/sbin
    DAEMON=/usr/bin/startVPN  #on met le programme ici
     
    # Fonctions
     
    function vpn_usage {
        echo "Usage : /etc/init.d/vpnstart {start|stop|restart|force-reload|status}" 1>&2
    }
     
    function vpn_start {
        "${DAEMON}"
    }
     
    function vpn_stop {
        killall # TODO: à vérifier...
    }
     
    function vpn_restart {
        # On appelle les 2 autres fonctions
        vpn_stop
        vpn_start
    }
     
    function vpn_do {
        case "$1" in
    	start) vpn_start ;;
    	stop)  vpn_stop ;;
    	force-reload|restart) vpn_restart ;;
            status) TODO ;;
    	*)  echo "Commande inconnue '$1'" 1>&2
                vpn_usage
    	    exit 1
    	    ;;
        esac
    }
     
    # ================================================================
    # Préconditions
     
    # Vérification environnement
     
    echo "Vérification de l'existence du script de démarrage"
     
    if ! test -f "${DAEMON}"
    then echo "Le script '${DAEMON}' n'existe pas"
         exit 1
    elif ! test -x "${DAEMON}"
    then echo "Le script '${DAEMON}' n'est pas exécutable"
         exit 1
    fi 1>&2
     
    # Vérification arguments
     
    echo "Vérification du nombre d'arguments"
     
    if test $# -ne 1
    then echo "Mauvais nombre d'arguments" 1>&2
         vpn_usage
         exit 1
    fi
     
    # ================================================================
    # Main
     
    echo "Automatisation début"
     
    vpn_do "$@"
     
    exit 0
    Ensuite, commence par vérifier que ton script fonctionne correctement lorsque tu le lances à la main.

  8. #28
    Nouveau membre du Club
    Homme Profil pro
    Développeur en alternance
    Inscrit en
    Décembre 2016
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur en alternance
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2016
    Messages : 112
    Points : 29
    Points
    29
    Par défaut
    Citation Envoyé par jack-ft Voir le message
    Chouette! Tu vas pouvoir faire des copier/coller!

    Et on va peut-être (enfin) avoir le résultat de ls -ld /usr/bin/startVPN...
    Le voici -rwxr-xr-x 1 root root 119 nov. 20 18:57 /usr/bin/startVPN
    Citation Envoyé par jack-ft Voir le message
    Ensuite, commence par vérifier que ton script fonctionne correctement lorsque tu le lances à la main.
    C'est fait je l'ai bien lancé et il exécute bien mon autre script

    Citation Envoyé par jack-ft Voir le message
    Mauvaise idée!
    Ah bon ? Pourquoi ?
    Citation Envoyé par jack-ft Voir le message
    Le script "/usr/bin/startVPN" doit absolument être exécutable!!!
    sinon l'instruction de ta ligne 11 (cas "start") ne va pas fonctionner.
    Il l'est
    Citation Envoyé par jack-ft Voir le message
    J'ai d'ailleurs du mal à comprendre la cohérence entre:
    la valuation du PATH, qui n'est utilisé nulle part sauf peut-être pour l'appel à killall. D'ailleurs que vient-il faire là, sans argument???
    la déclaration de $DAEMON, qui n'est pas réutilisée à la ligne 11



    De plus, les lignes 17 et 18 font que le script est légèrement récursif
    En effet

    Citation Envoyé par jack-ft Voir le message
    Il vaudrait mieux àmha passer par une fonction, par exemple quelque chose comme ça:
    Ah ouais il marche nickel !
    Par contre quand je reboot ma machine il ne se lance pas, pourtant il est bien dans /etc/init.d/

  9. #29
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    Citation Envoyé par Java Ou Javapas Voir le message
    Le voici -rwxr-xr-x 1 root root 119 nov. 20 18:57 /usr/bin/startVPN
    Yes! Le script existe et est bien exécutable!

    C'est fait je l'ai bien lancé et il exécute bien mon autre script
    Et le "stop" marche aussi? Avec un "killall" sans arguments?

    Sous un autre unix, j'obtiens ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $ killall -s
    usage: killall [-delmsvz] [-help]
                   [-u user] [-t tty] [-c cmd] [-SIGNAL] [cmd]...
    At least one option or argument to specify processes must be given.
    Par contre quand je reboot ma machine il ne se lance pas, pourtant il est bien dans /etc/init.d/
    As-tu fait le update-rc.d indiqué dans le premier lien (et bien d'autres) de cette recherche?

  10. #30
    Nouveau membre du Club
    Homme Profil pro
    Développeur en alternance
    Inscrit en
    Décembre 2016
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur en alternance
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2016
    Messages : 112
    Points : 29
    Points
    29
    Par défaut
    Je n'ai pas essayé le stop et oui j'avais déjà fait le update-rc.d sur mes scripts précédents mais à chaque fois la même erreur que voici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    root@kali:~# update-rc.d vpnstart defaultsnd overrides
    insserv: warning: script 'K01vpnstart' missing LSB tags a
    insserv: warning: script 'vpnstart' missing LSB tags and overrides
    J'ai donc rajouter ça au début de mon script (apres le #!/bin/bash)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ### BEGIN INIT INFO
    # Provides:          vpnstart
    # Required-Start:    $remote_fs $syslog
    # Required-Stop:     $remote_fs $syslog
    # Default-Start:     2 3 4 5
    # Default-Stop:      0 1 6
    # Short-Description: Start daemon at boot time
    # Description:       Enable service provided by daemon.
    ### END INIT INFO
    et j'ai refait update-rc.dil ne m'as mis aucune erreur (ni aucun texte d'ailleurs)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    root@kali:~# update-rc.d vpnstart defaults
    root@kali:~#
    et j'ai reboot ma machine mais toujours rien...

  11. #31
    Nouveau membre du Club
    Homme Profil pro
    Développeur en alternance
    Inscrit en
    Décembre 2016
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur en alternance
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2016
    Messages : 112
    Points : 29
    Points
    29
    Par défaut
    Quelqu'un aurait une idée, j'ai essayé pas mal de chose avec cette commande mais ça ne fait rien...
    EDIT :
    je suis allé voir dans le moniteur système et j'ai trouvé mon programme donc apparemment il se lance, mais j'ai quelque problème d'internet maintenant sur la VM...

  12. #32
    Nouveau membre du Club
    Homme Profil pro
    Développeur en alternance
    Inscrit en
    Décembre 2016
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur en alternance
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2016
    Messages : 112
    Points : 29
    Points
    29
    Par défaut
    Le problème de connexion à internet arrive lorsque je me connecte au vpn sudo openvpn --config vpnbook-us1-udp25000.ovpn --auth-nocache je rentre le bon user et le bon mdp (j'ai essayé avec plusieurs fichiers) et j'arrive a "Initialisation Sequence Complete" qui signifie que le vpn est bien connecté et c'est à partir de la que ma connexion internet ne marche plus, j'ai trouver de nombreux sujets qui conseillait de changer de fichier ce que j'ai fait mais toujours pas. Et certains disait que c'était peut-être à cause des règles de pare feu ou de choses comme ça mais je n'ai trouvé aucune résolution. Quelqu'un aurait une idée ? Merci

  13. #33
    Nouveau membre du Club
    Homme Profil pro
    Développeur en alternance
    Inscrit en
    Décembre 2016
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur en alternance
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2016
    Messages : 112
    Points : 29
    Points
    29
    Par défaut
    Bon 4ième post a la suite désolé mais il n'y a plus moyen d'éditer son message au bout d'un certain temps...
    j'ai finalement trouvé la solution il faut aller dans /etc/resolv.conf tout supprimer et mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    nameserver 8.8.8.8
    nameserver 8.8.4.4
    Hop résolu !

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Créer un cookie pour appeler une url
    Par scorplex dans le forum Web & réseau
    Réponses: 3
    Dernier message: 26/02/2008, 17h54
  2. Créer un script pour fermer une session Windows
    Par Olivierc dans le forum Windows
    Réponses: 2
    Dernier message: 24/08/2006, 13h40
  3. [Conception] Comment créer un lien pour effectuer une requete ?
    Par Poutchou dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 09/03/2006, 11h54
  4. Automatiser une connexion à un lecteur mappé
    Par Empty_body dans le forum Windows
    Réponses: 1
    Dernier message: 21/02/2006, 15h59
  5. Réponses: 7
    Dernier message: 21/10/2004, 09h13

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