ShR3K a écrit 2 commentaires

  • # Solution

    Posté par  . En réponse au message Alternative Reverse SSH. Évalué à 0. Dernière modification le 14 mai 2014 à 20:49.

    J'ai finalement trouvé ce que je voulais. Sur chaque machine client je me sert de autossh : un programme permettant de relancer le tunnel en cas de perte de connexion :
    autossh -M 0 -q -N -oServerAliveInterval=120 -oServerAliveCountMax=3 -R 0:localhost:22 id_machine_n@mon_serveur

    Ensuite sur le serveur, j'ai fait un script auquel je renseigne mon identifiant machine et le tour est joué.
    Voici mon script :

    #!/bin/bash
    if [ $# -ne 1 ]; then
        echo "Vous devez renseigner l'identifiant de la machine en parametre"
        exit
    fi
    machine=$1
    listPorts=$(lsof -i -n | grep $machine | grep IPv4 | grep "\*:" | awk {'print $9'} | cut -d ':' -f2)
    lastPort=$(lsof -i -n | grep $machine | grep IPv4 | grep "\*:" | awk {'print $9'} | cut -d ':' -f2 | tail -1)
    numberPorts=$(lsof -i -n | grep $machine | grep IPv4 | grep "\*:" | awk {'print $9'} | cut -d ':' -f2 | wc -l)
    if [ $numberPorts -lt 1 ]; then
        echo "Aucun tunnel trouve, la connexion n'est pas etablie"
        exit
    fi
    echo "Liste des ports disponibles : "
    echo $listPorts
    echo "Connexion a la machine $machine sur le port $lastPort"
    ssh -p $lastPort $machine@localhost
  • [^] # Re: Conflit de port

    Posté par  . En réponse au message Alternative Reverse SSH. Évalué à -1.

    Je pensais qu'en mettant le nom d'utilisateur il allait savoir quel tunnel utiliser. N'existe - t - il pas des solutions (package deb) qui serait en mesure de faire ce que je veux ?