Personal tools
You are here: Home GNU / Linux Debian Sarge Installation d'un réseau privé virtuel
Document Actions
  • Send this page to somebody
  • Print this page
  • Add Bookmarklet

Installation d'un réseau privé virtuel

by admin last modified 2007-11-27 10:38

OpenVPN est un logiciel permettant de créer des réseaux privés virtuels sans utiliser des technologies telles que PPtP (Microsoft) ou IPSec. Il est de plus disponibles sur de nombreux systèmes d'exploitation (Microsoft Windows, GNU / Linux, MacOS X, ...). C'est une solution simple pour gérer un réseau privé virtuel composé de machines hétéroclites dans un environnement n'autorisant pas IPSec.

Attention !

Cet article est obsolète, et je vous recommande de ne pas le suivre. Il est avantageusement remplacé par :

Installer et configurer OpenVPN sur Debian 4.0 Etch

Installation du logiciel

L'installation d'OpenVPN se fait simplement par la ligne de commande :

apt-get install openvpn openssl

Il nous faut aussi créer les fichiers spéciaux utilisés par le serveur et installer les pilotes nécessaires:

modprobe tun

mkdir /dev/net
mknod /dev/net/tun c 10 200

Création des clefs d'encryption

OpenVPN utilise OpenSSH pour crypter les connexions. L'identification des clients se base sur un mécanisme de clefs privés / clefs publiques. Ce mécanisme est au coeur du fonctionnement du réseau privé. Il vous faut donc préter la plus grande attention à sa configuration. Nous commençons par renseigner le nom de notre serveur :

OPENVPN_SERVER=vpn.landure.org

Initialisez ensuite la liste des clients que vous souhaitez créer. Cette liste doit être séparée par des espaces :

OPENVPN_CLIENTS="client1 client2 client3"

Choisissez ensuite la plage d'adresses IP assignées à votre VPN :

OPENVPN_IPRANGE=10.8.157

Attention : Veillez à ce que cette plage soit différente de celle de votre réseau local et des réseaux locals des machines clientes.

Puis choisissez le nom de domaine du réseau local de votre VPN :

OPENVPN_LOCALDOMAIN=landure.vpn

Enfin, initialisez les variables d'environnement suivantes en fonction de votre configuration. Elle fournirons les valeurs par défaut à utiliser lors de la création des clefs.

KEY_COUNTRY=FR
KEY_PROVINCE=75
KEY_CITY=PARIS
KEY_ORG="$OPENVPN_SERVER Virtual Private Network Server"
KEY_EMAIL=votre@email.org

Par défaut, la longueur des clefs créées est de 1024 bits. Si vous êtes légèrement paranoïaque, vous pouvez augmenter cette valeur au coût de moindres performances de votre VPN.

KEY_SIZE=2048

Installation des scripts easy-rsa

OpenVPN fournit des scripts pour faciliter la création des clefs d'encryption. Nous allons les copier de façon à ce que nous puissions les modifier à notre guise :

cp -r /usr/share/doc/openvpn/examples/easy-rsa/ /etc/openvpn
if [ -e /etc/openvpn/easy-rsa/openssl.cnf ]; then rm /etc/openvpn/easy-rsa/openssl.cnf; fi
gunzip /etc/openvpn/easy-rsa/openssl.cnf.gz
sed -i -e '/commonName[\t ]*=[\t ]*Common/a\
commonName_default\t\t= $ENV::KEY_COMMONNAME' \
/etc/openvpn/easy-rsa/openssl.cnf;

Nous allons maintenant mettre à jour le fichier de configuration des certificats en fonction de nos besoins. Exécutez ensuite les commandes suivantes pour mettre à jour le fichier de configuration d'easy-rsa.

if [ ! $KEY_SIZE ]; then KEY_SIZE=1024; fi
sed -i -e "s/\(export D=\).*/\1\"\/etc\/openvpn\"/" \
-e "s/\(export KEY_CONFIG=\).*/\1\"\/etc\/openvpn\/easy-rsa\/openssl.cnf\"/" \
-e "s/\(export KEY_SIZE=\).*/\1\"$KEY_SIZE\"/" \
-e "s/\(export KEY_COUNTRY=\).*/\1\"$KEY_COUNTRY\"/" \
-e "s/\(export KEY_PROVINCE=\).*/\1\"$KEY_PROVINCE\"/" \
-e "s/\(export KEY_CITY=\).*/\1\"$KEY_CITY\"/" \
-e "s/\(export KEY_ORG=\).*/\1\"$KEY_ORG\"/" \
-e "s/\(export KEY_EMAIL=\).*/\1\"$KEY_EMAIL\"/" \
/etc/openvpn/easy-rsa/vars
echo "export OPENVPN_SERVER=\"$OPENVPN_SERVER\"
export OPENVPN_CLIENTS=\"$OPENVPN_CLIENTS\"
export OPENVPN_IPRANGE=\"$OPENVPN_IPRANGE\"
export OPENVPN_LOCALDOMAIN=\"$OPENVPN_LOCALDOMAIN\"
" >> /etc/openvpn/easy-rsa/vars

Création d'une authorité de certification

Une autorité de certification est un ensemble clef privée / clef publique destiné à signer des clefs publiques. Pour créer votre authorité de certification, éxecutez les lignes de commandes suivantes :

source /etc/openvpn/easy-rsa/vars
export KEY_COMMONNAME="ca.$OPENVPN_SERVER"
/etc/openvpn/easy-rsa/clean-all
/etc/openvpn/easy-rsa/build-ca

Si vous avez correctement configuré easy-rsa, vous pouvez utiliser les valeurs par défaut.

Création du certificat du serveur

Nous allons maintenant créer le certificat d'encryption du serveur. Exécutez les commandes suivantes :

source /etc/openvpn/easy-rsa/vars
export KEY_COMMONNAME="$OPENVPN_SERVER"
/etc/openvpn/easy-rsa/build-key-server server

Ici encore, utilisez les valeurs par défaut. Enfin, le script vous demande de confirmer la signature du certificat. Répondez Oui aux deux questions.

Sign the certificate? [y/n]: y
1 out of 1 certificate requests certified, commit? [y/n] y

Création des certificats des clients

Nous créons enfin les certificats clients. Executez la commande suivante pour créer les certificats :

source /etc/openvpn/easy-rsa/vars
for OPENVPN_CLIENT in $OPENVPN_CLIENTS; do
export KEY_COMMONNAME="$OPENVPN_CLIENT.client.$OPENVPN_SERVER";
/etc/openvpn/easy-rsa/build-key $OPENVPN_CLIENT;
done

Lorsque le script vous pose des questions, utilisez les valeurs par défaut, mais faites bien attention de répondre y aux questions :

Sign the certificate? [y/n]: y
1 out of 1 certificate requests certified, commit? [y/n] y

Génération des paramètres de Diffie Hellman

Les paramètres de Diffie Hellman doivent être généré pour que votre configuration fonctionne. Cela se fait grâce aux lignes :

source /etc/openvpn/easy-rsa/vars
/etc/openvpn/easy-rsa/build-dh

Génération d'une clef TLS

Nous allons maintenant générer une clef qui nous protègera de certains types d'attaques. Elle va nous permettre de créer un pare-feu HSA :

openvpn --genkey --secret /etc/openvpn/keys/ta.key

Configuration du serveur

Pour créer la configuration du serveur VPN, nous allons nous basé sur le fichier d'exemple disponible :

cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/
gunzip /etc/openvpn/server.conf.gz

Nous allons ajuster ce fichier à nos besoins.

source /etc/openvpn/easy-rsa/vars
sed -i \
-e "s/^ca ca\.crt/ca \/etc\/openvpn\/keys\/ca\.crt/" \
-e "s/^cert server\.crt/cert \/etc\/openvpn\/keys\/server\.crt/" \
-e "s/^key server\.key/key \/etc\/openvpn\/keys\/server\.key/" \
-e "s/^dh[\t ]*dh1024.pem/dh \/etc\/openvpn\/keys\/dh$KEY_SIZE.pem/" \
-e "s/^server[\t ].*$/server $OPENVPN_IPRANGE\.0 255\.255\.255\.0/" \
-e 's/^;client-to-client/client-to-client/' \
-e 's/^;\(tls-auth \)\(ta.key.*\)$/\1\/etc\/openvpn\/keys\/\2/' \
-e 's/^;\(.*# Triple-DES\)$/\1/' \
-e 's/^\(status \).*/\1\/var\/log\/openvpn-status.log/' \
-e 's/^group[ \t]*nobody$/group nogroup/' \
/etc/openvpn/server.conf

Enfin, vous pouvez redémarrer votre serveur :

/etc/init.d/openvpn restart

Configuration des clients

Nous allons maintenant créer des archives contenant les clefs et fichiers de configurations à copier sur les différents clients. Nous commençons par créer les fichiers de configurations adaptés aux différents clients.

source /etc/openvpn/easy-rsa/vars
for OPENVPN_CLIENT in $OPENVPN_CLIENTS; do
cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/;
sed -i \
-e "s/^remote[\t ]*my-server-1[\t ].*/remote $OPENVPN_SERVER 1194/" \
-e 's/^group[ \t]*nobody$/group nogroup/' \
-e "s/^ca ca\.crt/ca \/etc\/openvpn\/keys\/ca\.crt/" \
-e "s/^cert client\.crt/cert \/etc\/openvpn\/keys\/$OPENVPN_CLIENT\.crt/" \
-e "s/^key client\.key/key \/etc\/openvpn\/keys\/$OPENVPN_CLIENT\.key/" \
-e "s/;\(ns-cert-type[\t ]*server.*\)/\1/" \
-e "s/;tls-auth[\t ]*ta.key[\t ]*1.*/tls-auth \/etc\/openvpn\/keys\/ta.key 1/" \
/etc/openvpn/client.conf;

egrep "^cipher " /etc/openvpn/server.conf \
>> /etc/openvpn/client.conf;

tar cf /etc/openvpn/$OPENVPN_CLIENT.tar /etc/openvpn/client.conf;
tar rf /etc/openvpn/$OPENVPN_CLIENT.tar /etc/openvpn/keys/ca.crt;
tar rf /etc/openvpn/$OPENVPN_CLIENT.tar /etc/openvpn/keys/$OPENVPN_CLIENT.crt;
tar rf /etc/openvpn/$OPENVPN_CLIENT.tar /etc/openvpn/keys/$OPENVPN_CLIENT.key;
tar rf /etc/openvpn/$OPENVPN_CLIENT.tar /etc/openvpn/keys/ta.key;

if [ -e /etc/openvpn/client.conf ]; then rm /etc/openvpn/client.conf; fi;
done

Vous disposez maintenant de plusieurs fichiers tar qu'il vous suffit de copier sur les machines clientes et de décompresser à l'aide de la commande :

tar --directory / -xf votre-fichier-client.tar

Enfin, il vous faut installer openvpn sur les machines clientes et / ou le redémarrer :

apt-get install openvpn
/etc/init.d/openvpn restart

Normallement, vous verrez apparaître un message vous signalant que tout s'est bien passé, La commande suivante vous permettra d'obtenir plus d'informations sur votre lien VPN :

ifconfig tun0

Pour aller plus loin

Le premier chapitre vous à permis de créer un réseau privé virtuel basique où les clients peuvent communiquer entre-eux et avec le serveur. C'est bien, mais dans la majorité des cas, ca ne suffit pas. Nous allons voir ici comment étoffer les fonctionnalités de votre VPN. La première êtape pour ce-faire est d'éxecuter les lignes de commandes suivantes :

mkdir /etc/openvpn/clients-configs
echo "
# Configurations avancées.
client-config-dir /etc/openvpn/clients-configs" \
>> /etc/openvpn/server.conf

Autoriser les clients VPN à accéder au réseau local du serveur

Si vous souhaitez accéder au réseau local de votre serveur VPN à partir des clients de votre VPN, vous devez d'abord vous assurez que les réseaux locaux de vos clients n'utilisent pas la même classe d'adresse IP que celui de votre serveur. Si tout va bien sur ce point, commencez par signaler aux clients quelle route utiliser pour accéder au réseau local de votre serveur :

ifconfig eth0 | grep inet | \
sed -e 's/.*:\([0-9\.]*\)[0-9]\{1,3\} .*:\([0-9\.]*\) .*:\([0-9\.]*\).*/push "route \10 \3"/g' \
>> /etc/openvpn/server.conf

Une fois ceci fait, nous allons jouer avec la configuration iptables pour faire de votre serveur VPN un routeur NAT. Oui, oui, j'ai bien dit NAT. J'ai vu passer plein de tutoriels compliqués pour mettre en place un routage complet entre les clients du VPN et le réseau local du serveur, mais je trouve que c'est complètement surdimensionné par rapport à la plupart des besoins.

En premier lieu, si vous ne l'avez pas déjà fait, nous allons installer le script init.d d'iptables. Ce script permet notamment de sauvegarder et de restaurer la configuration d'iptables. Executez la commande suivante :

gunzip --to-stdout /usr/share/doc/iptables/examples/oldinitdscript.gz > /etc/init.d/iptables
chmod +x /etc/init.d/iptables

Nous créons le dossier contenant la sauvegarde d'iptables :

mkdir /var/lib/iptables

Et enfin, nous configurons le script de démarrage d'iptables dans le rc.d.

update-rc.d iptables defaults

Nous autorisons le NAT sur le système :

sed -i -e 's/\(ip_forward=\).*/\1yes/g' /etc/network/options
echo 1 > /proc/sys/net/ipv4/ip_forward

Ensuite, nous mettons en place la configuration NAT pour notre réseau VPN :

iptables -t nat -A POSTROUTING -s $OPENVPN_IPRANGE.0/24 -o eth0 -j MASQUERADE

Et nous la sauvegardons :

/etc/init.d/iptables save active

Votre configuration iptables sera rechargée à chaque redémarrage par la suite.

Attribuer des adresses IP fixes aux clients du réseau privé virtuel

Il est possible d'attribuer une IP fixe à chacun des clients du réseau privé virtuel. Il vous est ainsi possible de vous connecter de manière sûre à une machine du réseau privé. Pour ce faire, éxecutez le script suivant qui fixera automatiquement l'adresse IP à assigner à chaque clients :

source /etc/openvpn/easy-rsa/vars
COUNTER=2
for OPENVPN_CLIENT in $OPENVPN_CLIENTS; do
KEY_COMMONNAME="$OPENVPN_CLIENT.client.$OPENVPN_SERVER"
if [ ! -e "/etc/openvpn/clients-configs/$KEY_COMMONNAME" ]; then
touch "/etc/openvpn/clients-configs/$KEY_COMMONNAME"
fi

SERVER_SIDE_IP=`perl -e "print ((4*$COUNTER)-3);"`
CLIENT_SIDE_IP=`perl -e "print ((4*$COUNTER)-2);"`

echo "ifconfig-push $OPENVPN_IPRANGE.$SERVER_SIDE_IP $OPENVPN_IPRANGE.$CLIENT_SIDE_IP" \
>> "/etc/openvpn/clients-configs/$KEY_COMMONNAME"

COUNTER=`perl -e "print ($COUNTER+1);"`
done

Configurer un serveur de nom pour votre VPN

Si vous avez choisi d'attribuer des adresses IP fixes aux clients de votre VPN, il est intéressant de disposer d'un serveur DNS pour diffuser simplement les associations nom de machine / adresse IP. Personnellement, j'utilise bind :

apt-get install bind9

Si vous dite que c'est utiliser une masse pour enfoncer un clou, vous avez certainement raison, mais j'avais envie de me former à Bind ;D (Rien ne vaut l'apprentissage par la pratique). Bref, nous allons maintenant ajouter les adresses IPs fixes de notre VPN à la configuration de Bind.

source /etc/openvpn/easy-rsa/vars
if [ ! -e /etc/bind/db.$OPENVPN_IPRANGE ]; then

touch /etc/bind/db.$OPENVPN_IPRANGE
REVERSE_IPRANGE=`echo $OPENVPN_IPRANGE | sed -e 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\3\.\2\.\1/'`
SERVER_BASENAME=`hostname | sed -e "s/^\([^\.]*\)\..*/\1/"`
echo "$REVERSE_IPRANGE.in-addr.arpa. IN SOA $(hostname). root.localhost. (
1; Serial
10800; refresh after 3 hours.
3600; Retry after 1 hour.
604800; expire after 1 week.
86400; Minimum TTL of 1 day.
);

;
; Name servers declaration.
;

$REVERSE_IPRANGE.in-addr.arpa. IN NS $(hostname).;

;
; Hostnames declaration.
;
1.$REVERSE_IPRANGE;in-addr.arpa. IN PTR $SERVER_BASENAME.$OPENVPN_LOCALDOMAIN.;
" >> /etc/bind/db.$OPENVPN_IPRANGE
fi

for OPENVPN_CLIENT in $OPENVPN_CLIENTS; do
KEY_COMMONNAME="$OPENVPN_CLIENT.client.$OPENVPN_SERVER"
if [ -e "/etc/openvpn/clients-configs/$KEY_COMMONNAME" ]; then

IP_LAST_DIGIT=`cat "/etc/openvpn/clients-configs/$KEY_COMMONNAME" | \
grep "ifconfig-push" | \
sed -e "s/ifconfig-push[ \t]*[0-9]*\.[0-9]*\.[0-9]*\.\([0-9]*\)[ \t]*.*/\1/"`

CLIENT_BASENAME=`echo $OPENVPN_CLIENT | sed -e "s/^\([^\.]*\)\..*/\1/"`

echo "$IP_LAST_DIGIT.$REVERSE_IPRANGE.in-addr.arpa. IN PTR $CLIENT_BASENAME.$OPENVPN_LOCALDOMAIN.;" \
>> /etc/bind/db.$OPENVPN_IPRANGE
fi
done

echo "
zone \"$REVERSE_IPRANGE.in-addr.arpa\" in {
type master;
file \"/etc/bind/db.$OPENVPN_IPRANGE\";
};" >> /etc/bind/named.conf.local

Exécutez ensuite les commandes suivantes :

if [ ! -e /etc/bind/db.$OPENVPN_LOCALDOMAIN ]; then

touch /etc/bind/db.$OPENVPN_LOCALDOMAIN
REVERSE_IPRANGE=`echo $OPENVPN_IPRANGE | sed -e 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\3\.\2\.\1/'`
SERVER_BASENAME=`hostname | sed -e "s/^\([^\.]*\)\..*/\1/"`
echo "$OPENVPN_LOCALDOMAIN. IN SOA $(hostname). root.localhost. (
1; Serial
10800; refresh after 3 hours.
3600; Retry after 1 hour.
604800; expire after 1 week.
86400; Minimum TTL of 1 day.
);

;
; Name servers declaration.
;

$OPENVPN_LOCALDOMAIN. IN NS $(hostname).;

;
; Hostnames declaration.
;
$SERVER_BASENAME.$OPENVPN_LOCALDOMAIN. IN A $OPENVPN_IPRANGE.1;
" >> /etc/bind/db.$OPENVPN_LOCALDOMAIN
fi

for OPENVPN_CLIENT in $OPENVPN_CLIENTS; do
KEY_COMMONNAME="$OPENVPN_CLIENT.client.$OPENVPN_SERVER"
if [ -e "/etc/openvpn/clients-configs/$KEY_COMMONNAME" ]; then

IP_LAST_DIGIT=`cat "/etc/openvpn/clients-configs/$KEY_COMMONNAME" | \
grep "ifconfig-push" | \
sed -e "s/ifconfig-push[ \t]*[0-9]*\.[0-9]*\.[0-9]*\.\([0-9]*\)[ \t]*.*/\1/"`

CLIENT_BASENAME=`echo $OPENVPN_CLIENT | sed -e "s/^\([^\.]*\)\..*/\1/"`

echo "$CLIENT_BASENAME.$OPENVPN_LOCALDOMAIN. IN A $OPENVPN_IPRANGE.$IP_LAST_DIGIT;" \
>> /etc/bind/db.$OPENVPN_LOCALDOMAIN
fi
done

echo "
zone \"$OPENVPN_LOCALDOMAIN\" in {
type master;
file \"/etc/bind/db.$OPENVPN_LOCALDOMAIN\";
};" >> /etc/bind/named.conf.local

Vous pouvez maintenant redémarrer bind :

/etc/init.d/bind9 restart

Il vous reste à configurer votre serveur VPN pour qu'il propage votre configuration DNS. Exécutez simplement la commande :

echo "
push \"dhcp-option DOMAIN $OPENVPN_LOCALDOMAIN\"
push \"dhcp-option DNS $OPENVPN_IPRANGE.1\"" \
>> /etc/openvpn/server.conf

Et redémarrez votre serveur VPN :

/etc/init.d/openvpn restart

Cette configuration fonctionnera automatiquement sur vos clients Microsoft Windows. Il faut effectuer une manipulation supplémentaire pour qu'elle fonctionne sur vos clients Linux. Téléchargez le fichier /etc/openvpn/client.up avec la commande suivante :

wget --output-document=/etc/openvpn/client.up http://howto.landure.fr/gnu-linux/debian-sarge/installation-dun-reseau-prive-virtuel/client.up

Exécutez ensuite les commandes :

chmod +x /etc/openvpn/client.up
echo "up /etc/openvpn/client.up
route-up /etc/openvpn/client.up
plugin /usr/lib/openvpn/openvpn-down-root.so \"script_type=down /etc/openvpn/client.up\"" >> /etc/openvpn/client.conf

Il vous suffit maintenant de redémarrer votre client VPN pour terminer la configuration :

/etc/init.d/openvpn restart

Remerciements

Je souhaite remercier les acteurs qui m'ont aidés lors de la rédaction de ce howto :

http://www.openvpn.net 
Le site officiel du logiciel OpenVPN, qui fournit un HOWTO très complet et très bien écrit. Si vous souhaitez plongez plus en avant dans l'univers du réseau privé virtuel, c'est la qu'il vous faut aller.
Charles Duffy 
C'est la personne qui a écrit le script /etc/openvpn/client.up. Sans lui, ce howto n'aurait jamais été complet ;D Merci à lui donc.
Attachments

client openvpn

Posted by antares at 2007-10-04 14:26
Bonjour ,

Quel est le client openvpn que vous allez utiliser sous linux Debian

Merci

Antares

Client Openvpn

Posted by lwolf at 2007-10-04 15:52
Bonjour,

Le logiciel openvpn fait à la fois office de serveur et de client.

apt-get install openvpn

Vous aurez ainsi tout ce qu'il vous faut pour vous connecter à un réseau openvpn.

Lwolf

client openvpn=interface graphique de connexion

Posted by antares at 2007-10-05 09:32
En fait je parle d'une interface graphique avec des champs pour l'ip du serveur, le certificat et la clé que l'on obtiendrait en cliquant sur une icone. Je recherche le paquet " .deb " qui contient l'icone et l'interface graphiq

Antares

client openvpn

Posted by antares at 2007-10-05 09:40
il n'y a pas d'icone qui s'installe pour se connecter avec openvpn seulement

Antares

OpenVpn n'est pas fait pour ca..;

Posted by lwolf at 2007-10-05 09:46
OpenVPN est destiné à mettre en place un VPN permanent, et non ponctuel. Ce que tu cherche ressemble plus à du pptp... Je n'ai pas connaissance d'une telle interface

openvpn-gui

Posted by antares at 2007-10-05 10:04
openvpn-gui n'existe pas
antares

openvpn-admin=GUI de openvpn

Posted by Antares at 2007-10-05 12:59
Merci j'ai trouvé ce paquet openvpn-admin de http://sourceforge.net/projects/openvpnadmin
Antares

Probleme pour spécialiste...

Posted by cantenac at 2007-10-24 15:46
Bonjour, je me suis inspiré de votre article sur openVPN pour configurer mon vpn et tout fonctionne à merveille ... mais j'aurais besoin de vos lumières sur un point que personne ne semble aborder dans openVPN :
je désire que le serveur qui héberge openvpn puisse "monter" un dossier d'un client dans son systeme samba lorsque le client se connecte.
La séquence idéale serait:
le client se connecte au serveur openVPN
le serveur lui attribu son IP VPN
Le serveur "détecte" que le client répond sur son ip VPN et ...
Le serveur lance un script de montage smbfs d'un dossier du client, via le tunnel VPN.

Il semblerait que tout les scripts côté serveur s'éxecutent avant que le client de soit en mesure de répondre à sa nouvelle ip sur le VPN. Toute commande "mount" via le vpn vers un de ses clients en cours de connexion échoue .

Comment faire pour automatiser cela?
Merci.

Pourquoi ne pas...

Posted by lwolf at 2007-10-24 18:09
J'ai pas vraiment de solution à votre problèmatique... Une solution serait de lancer le script de montage lors de la connexion du client, avec une boucle sur sleep 10 (ou la commande equivalente pour attendre 10s sans rien faire) jusqu'a ce que l'ip du client réponde au ping. Une fois que la machine répond au ping, vous pouvez lancer la commande mount. Ce n'est pas l'idéal, mais ca fera l'affaire. Bon courrage pour écrire un tel script.

merci

Posted by cantenac at 2007-10-24 21:28
Et bien au moins nous sommes deux à avoir pensé à cette solution. Votre réponse me conforte dans cette voie étant donné qu'il n'y a pas d'option de script client dans openvpn pour prévenir la serveur que le-dit client peut être joignable sur sa nouvelle ip. Encore merci.


Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards:

Wikio