Tunnel SSH permanent

Le simple script suivant lancé dans un screen fera parfaitement l’affaire (et propose même du logging pour savoir quand la connexion tombe et/ou est relancée)

#!/bin/sh

while true
do
#establish a ssh tunnel between localhost port 5555 and distant 2424
#tunnel enabled
  echo -n "connection restart : " >> tunnel.log
  date --rfc-3339=seconds >> tunnel.log
  ssh -L 5555:localhost:2424 user@host
#connection dropped, logging, wait (socket issue if not) and restart
  echo -n "connection dropped : " >> tunnel.log
  date --rfc-3339=seconds >> tunnel.log
#after a short sleep and try again ;-)
  sleep 10
done

Nul besoin de dire qu’il faut des clés ssh pour pouvoir se connecter sans mdp sur un serveur distant et que il est approprié de n’offrir aucun droit sur le serveur ou presque à l’utilisateur qui se connecte en utilisant cette clé. Juste du port forwarding, ni plus ni moins.

Posted in Au quotidien at January 10th, 2012. Comments Off on Tunnel SSH permanent.