Forum Linux.debian/ubuntu openvpn et connexions entrantes

Posté par . Licence CC by-sa
Tags : aucun
1
7
mar.
2016

Salut à tous, je consulte assez souvent le forum mais n'avais jamais posté jusqu'à présent.

j'essaie en ce moment de modifier la config de mon raspberry pi sous raspbian pour pouvoir utiliser en même temps une connexion vpn vers un fournisseur type goldenfrog/vyprvpn tout en maintenant une connectivité via mon ip publique des services qui tournent sur le pi: serveur openvpn, http, etc… (les services sont accessibles depuis l’extérieur via des portforwarding configurés dans ma freebox).

En lançant la connexion client vers le serveur vyprvpn, du fait de la modification de la table de routage par cette connexion je perds l’accès à tous les services qui tournent sur le pi alors je me suis tourné vers un mix de routage et d'iptables pour contourner le problème et faire en sorte que tout le trafic sortant passe bien toujours par le vpn et que les connexions entrantes depuis internet permettent bien d’accéder aux différents services installés sur le pi.

J'ai donc regardé sur le net divers topics ayant trait à des problèmes similaires et j'en ai retiré ça au final que j'ai appliqué sur une debian pour tester ce que j'allais faire.

Par exemple pour le serveur apache:
-utilisation de la table mangle pour marquer les paquets selon le protocole et le port de destination
sudo iptables -t mangle -A PREROUTING -p tcp --dport 80 -j MARK --set-mark 2

-on ajoute une regle indiquant que ce qui a la marque 2 doit être assigné à la table de routage 2
sudo ip rule add fwmark 2 table 2

-on ajoute une règle indiquant que la gateway par défaut pour ce qui transite par la table 2 sur eth0 est la freebox
sudo ip route add default table 2 via 192.168.10.254 dev eth0 proto static

-on active le forward des paquets marqués
sysctl -w net.ipv4.tcp_fwmark_accept=1

Avec ces règles je retrouve bien un accès aux services qui tournent sur ma plateforme de test sous debian via mon ip publique même avec une connexion active vers vyprvpn et un "curl ifconfig.me" me renvoie bien l'adresse ip donnée par vyprvpn mais j'ai l'impression que la config est pas top et que j'ai peut être zappé quelque chose question sécurité.

Si quelqu'un a le temps de s’intéresser à ce cas de figure, j’apprécierais beaucoup les différentes suggestions que vous pourriez avoir.

  • # c'est joli

    Posté par . Évalué à 2.

    tu rentres en effet dans les limbes du multirouting, tu utilises le fwmark pour faire ressortir ce qui vient d'internet par internet, plutot que par le vpn.

    c'est correct.

    tu peux peut-etre aussi modifier la config de vyprvpn pour ne pas accepter les routes imposés par celui-ci et utiliser ta propre table de routage.

    c'est le cas avec openvpn si tu met un no route-push dans la config du client.

  • # Merci.

    Posté par . Évalué à 1.

    Merci pour le commentaire.

    J'avais aussi essayé en insérant l'option permettant de ne pas accepter les routes vyprvpn poussées par le serveur vers mon client mais après je me suis demandé si les routes que j'avais spécifiées en complément conservaient bien "l'anonymat" qu'on a via le vpn.
    La solution du marquage et routage m'a parue plus conforme au mode de fonctionnement attendu tant au niveau de la connexion vyprvpn que de l’accès aux services qui écoutent sur eth0.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.