############################################################
#  Passerelle centale pour les tunnels vtun
#  Les établissements de la Guyane récupèrent de l'académie au moins:
#         Une adresse ip officielle.
#         Une route vers leur classe d'adresse.
#         Un nom de domaine. (mx)
############################################################
#
 
 
 

options {
  port 80;            # Listen on this port.
# passage a travers les pare feu (ou port 21)

  # Path to various programs
  ppp           /usr/sbin/pppd;
  ifconfig      /sbin/ifconfig;
  route         /sbin/route;
  firewall      /sbin/ipchains;
}

# Default host options
default {
  compress no;          # Compression is off by default
  speed 0;              # By default maximum speed, NO shaping
}

# merci à Bruno Bzeznik de l'Académie de Grenoble pour le script killtun

##################
# Collège Paul Kapel #
##################

#
 

clg--kapel{
  pass  azoc;
  type  tun;
  proto tcp;
#  comp  lzo:9;
  encr  yes;
  keepalive no;
  up {
        programm /usr/local/sbin/killtun "clg-kapel 10.207.22.2 %d" wait;
        ifconfig "%% 10.207.22.1 pointopoint 10.207.22.2 mtu 1450";
  };
}

##########################
#  Lycée Leon Gontran Damas  #
##########################
lycee-damas{
  pass  aoiuy;
  type  tun;
  proto tcp;
#  comp  lzo:9;
  encr  yes;
  keepalive no;
  up {
        programm /usr/local/sbin/killtun "lycee-damas 10.207.???.2 %d" wait;
        ifconfig "%% 10.207.???.1 pointopoint 10.207.???.2 mtu 1450";
  };
}
 
 

##################
CRDP de la Guyane  #
##################

crdp{
  pass  tfgdjgutool;
  type  tun;
  proto tcp;
#  comp  lzo:9;
  encr  yes;
  keepalive no;
  up {
        programm /usr/local/sbin/killtun "crdp 10.207.???.2 %d" wait;
        ifconfig "%% 10.207.???.1 pointopoint 10.207.???.2 mtu 1450";
  };
}
 

##################
Autre établissement  #
#################

autre-etablissement{
  pass  azoiyiykjhc;
  type  tun;
  proto tcp;
#  comp  lzo:9;
  encr  yes;
  keepalive no;
  up {
        programm /usr/local/sbin/killtun "autre-etablissement 10.207.???.2 %d" wait;
        ifconfig "%% 10.207.???.1 pointopoint 10.207.???.2 mtu 1450";
  };
}
 
 
 

Cette config fait appel à un script qui évite qu'un même tunnel soit ouvert plusieurs fois. Ce script /usr/local/sbin/killtun est le suivant:

#!/bin/bash
#
# killtun <user> <dest_ip> <current_tun_dev>
# Détruit le tunnel d'un user au moment de la montée d'un nouveau tunel
# pour ce même user. Ceci permet d'éviter de monter 2 fois le même tunel.
# Bruno Bzeznik - 10/2000

if [ $# = "3" ]
then
  logger -t killtun[$$] "trying to kill $1 $2 not in $3"
  PID=`ps awux |grep "$1 tun"|grep -v grep|grep -v $3|awk '{print $2}'`
  if [ "$PID" != "" ]
  then
    logger -t killtun[$$] "kill $PID"
    kill $PID
    wait $PID 2> /dev/null
    logger -t killtun[$$] "route del -host $2 gw 0.0.0.0"
    route del -host $2 gw 0.0.0.0 2> /dev/null
    exit 0
  else
    logger -t killtun[$$] "no tunnel to kill"
    exit 0
  fi
else
  logger -t killtun[$$] "usage: <user> <dest_ip> <current_tun_dev>"
  exit 1
fi