OpenVPN et Monitoring

Bonjour à tous,

J’ai récemment installé sur une squeeze une solution de monitoring Nagios + Centreon afin de monitorer plusieurs serveurs situés sur des sites distants. Ces serveurs sont accessibles par OpenVPN et que ce soit sous win ou sous linux, je parviens à me connecter à chaque site distant sans soucis.

Voilà le problème :
Je n’arrive pas à trouver la manière d’ouvrir de manière simultanée plusieurs connexions OpenVPN afin de pouvoir surveiller tous mes serveurs distants. J’ai essayé avec gopenvpn, kvpnc, j’ai également essayé avec mktun sans succès.

Connaissez-vous une solution simple (ou pas) pour pouvoir connecter un seul client OpenVPN sur plusieurs serveurs en même temps ?
Ou si vous avez une solution autre, je suis preneur :slightly_smiling: (n’étant pas un expert, je fais appel à des gens qui auraient eu ce type d’expérience)

N’hésitez pas si vous avez des questions sur les configurations :slightly_smiling:

Merci d’avance !

Bonjour,

Nous avions un besoin similaire (administration à distance de serveurs distribués) et nous l’avons résolu en établissant des vpn persistants (mode net-2-net) entre tous les sites distribués.
L’administration à distance peut se faire par une seule connection vpn (mode roadwarrior ou nomade en français) qui permet d’accéder à tous les serveurs connectés en mode net-2-net

Techniquement, le vpn entre les serveurs isolés (4 sites) se fait pas Ipsec IKEv2 (StrongSwann) et la connexion à ce réseau se fait par OpenVPN (1 seul serveur OpenVPN) et un client OpenVPN

Moscow <---- Ipsec IKEv2 ----> Bruxelles HQ <----- Ipsec IKEv2 ------> Lièges
…^.^…^
…|…|…|
Nijni Novogorod <----- Ipsec IKEv2- |…|…|–OpenVPN ----------- Desktop Nomade
…|
…|
Ekateringbourg <------ Ipsec IKEv2----l

Merci d’avoir pris le temps de répondre Sikkin :slightly_smiling:

Cette solution est intéressante, existe-t-il de la documentation là dessus ?
Toutefois j’ai un doute sur la faisabilité dans mon cas : les serveurs ne sont actuellement joignables que par une connexion OpenVPN avec la redirection des ports nécessaires du routeur vers la machine physique. Une fois connecté, on peut joindre le reste du réseau sans problème.

Est-ce que ta solution implique de modifier toute la configuration des serveurs distants ?

J’avoue que j’aimerais uniquement modifier la config de mon serveur nagios :unamused:

[quote=“heinrahll”]Merci d’avoir pris le temps de répondre Sikkin :slightly_smiling:

Cette solution est intéressante, existe-t-il de la documentation là dessus ?[/quote]
La documentation Ipsec (StrongSwaan) est à lire ici strongswan.org/

Dois-je avouer que je ne comprends pas. Si tous les serveurs se “voient”, alors, la connection OpenVPN en mode nomade “doit” aussi voir tous les serveurs …

[quote=“heinrahll”]Est-ce que ta solution implique de modifier toute la configuration des serveurs distants ?[/quote]Il faut installer StrongSwan sur tous les points de contact avec internet et ouvrir le port correspondant pour l’adresse IP donnée (mais celle dépend de l’architecture mise en œuvre : firewalls, etc.) pour qu’ils puissent communiquer entre eux.
Notre solution a consisté à installer StrongSwan sur le firewall de chacun des 5 sites et la connection VPN se fait de firewall à firewall, les différents serveurs où qu’ils se trouvent n’ont aucune connaissance du VPN qui relie les différents sites entre eux.

Je ne comprends pas le problème, il n’y a aucune difficulté à avoir plusieurs VPN en même temps sauf si chacun change les DNS et/ou la passerelle par defaut. Je fais ça couramment, le seul souci est quand les réseaux des VPNs sont identiques, dans ce cas il y a conflit. Je contourne ce cas en mettant plusieurs serveurs VPN sur une même machine…

Je me suis mal exprimé je crois ^^ Les serveurs ne se voient pas entre eux et n’ont pas à le faire.
Concrètement, voilà ce qu’on a à l’heure actuelle :

Mon ordinateur peut se connecter à un des serveurs, ça fonctionne.

Maintenant, voilà ce que je voudrais faire :

Je voudrais que mon nagios puisse ouvrir plusieurs connexions openvpn en même temps pour pouvoir ensuite interroger les serveurs (via des connexions persistantes je suppose) et ainsi avoir un “état des lieux” en temps réel :slightly_smiling:

Avec un schéma c’est p’tete plus simple, en tout cas pour moi qui suis visuel, c’est plus concret ^^ (et c’est réalisé avec Dia)

Justement, là c’est le client qui doit se connecter à plusieurs serveurs en même temps et je n’arrive pas à configurer mon client comme il se doit, il n’ouvre qu’une seule connexion à la fois… (mais merci de participer Fran.b :slightly_smiling: )

Tu peux ouvrir plusieurs clients, il suffit d’avoir autant de fichier .conf que de réseaux VPN dans ton répertoire /etc/openvpn. Tu peux en démarrer un, deux, tous, etc. Seule remarque il faut mettre en tête des fichiers de configuration «dev tap» ou «dev tun» au lieu de «dev tap0» ou «dev tun0» ou bien affecter des interfaces distinctes (tap0, tap1, tun0, tun1) pour éviter les collisions et faire attention aux recouvrement IP des réseaux. Comme je l’ai dit je fais ça très couramment (et ai même utilisé des connexions VPN à l’intérieur d’une connexion VPN)). Mais il y a peut être une contrainte qui m’échappe.

Je reviens à la charge après les vacances :smiley:

Au niveau des fichiers .conf, j’en ai effectivement un pour chacun de mes réseaux vpn (il y en a quand même une bonne vingtaine !), et les clés sont identiques pour tous.
J’ai modifié chaque fichier .conf en ajoutant un suffixe (tun14 par exemple) différent pour chaque connexion.
Le problème, c’est que j’ai l’impression que ces interfaces ne sont pas persistantes comme on peut le voir avec le client gui pour windows auquel on peut créer des virtual TAP adapters pour permettre plusieurs connexions simultanées.

Sur chaque serveur, j’ai également modifié les adresses pour obtenir par exemple 5.8.14.5 et 5.8.14.6 pour le tun14.

A présent, je ne sais pas comment faire pour lancer automatiquement les tun (si openvpn les crée à la volée ou quoi) et les .conf qui vont avec, et par extension comment les relancer si ça plante. Je peux les lancer dans un terminal mais si je dois avoir 20 terminaux ouverts en même temps, je ne vois plus l’intérêt…

Je ne sais pas si je suis clair mais je n’ai pas envie de faire un serveur de monitoring sous windows donc si vous avez la solution…

Merci à vous !

(ps : oui, je suis un noob :cry: )