Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[OpenVPN] Couper les connexions inutilisées (abandon)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
El_Goretto
Advocate
Advocate


Joined: 29 May 2004
Posts: 2881
Location: Paris

PostPosted: Mon Jan 08, 2007 9:07 am    Post subject: [OpenVPN] Couper les connexions inutilisées (abandon) Reply with quote

Bonjour,

Aujourd hui, une petite question du style "comment faire pour...".
Je voudrais provoquer une timeout sur des connexions "stalled", de type tunnel VPN qui ne serait plus utilisé. Mon objectif est de sécuriser un peu plus le tunnel en provoquant son timeout au bout de X temps sans transfert de données.

(NB: je parle de "connexion", mais c'est un terme abusif, sans distinguer TCP ou UDP).

Le VPN (OpenVPN) a une fonction (--tls-timeout) qui permet de détecter une rupture de tunnel, mais ne permet pas de faire directement le timeout. Du coup je cherchais à faire combo du côté d'iptables pour lui faire couper véritablement la connexion, qui provoquerait ensuite ce timout OpenVPN. Mais je ne trouve pas vraiment de module iptables qui permettrait de dire "si pas plus de X paquets ou octects pendant X secs, alors drop". Ya bien limit, mais je crois qu'il fait l'inverse de ce que je cherche.

Je suis passé à côté de quelque chose d'évident?
_________________
-PC: 2500K/P8Z68V, 8Go, R9-290, ARC1220+5xWD500RE3, M4 256Go
-Home servers (hardened): µ-serv N40L, 2Go ECC ; NF9D-2700, 4Go ; DS61, i3 2100T, 16Go
-Réseau: ERL-3 + 3x switches GS108Tv2
-NAS: RN312
http://boycottsystemd.org/


Last edited by El_Goretto on Fri Jan 12, 2007 3:52 pm; edited 2 times in total
Back to top
View user's profile Send private message
El_Goretto
Advocate
Advocate


Joined: 29 May 2004
Posts: 2881
Location: Paris

PostPosted: Tue Jan 09, 2007 9:31 am    Post subject: Reply with quote

Bon, je pensais m'en sortir comme çà, ayant mesuré qu'une connexion samba inutilisée (ainsi que les routine OpenVPN de test de connexion) générait ~50 paquets en 1 minute (une consultation samba fait littéralement exploser le compteur):

Code:
$IPTABLES -A INPUT  -s $IP_SOURCE  -i $IF_LAN  -p tcp  --dport $P_VPN  -m state --state NEW  -j ACCEPT
$IPTABLES -A INPUT  -s $IP_SOURCE  -i $IF_LAN  -p tcp  --dport $P_VPN  -m state --state ESTABLISHED,RELATED -m limit ! --limit 60/minute -j REJECT

$IPTABLES -A INPUT   -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT  -m state --state ESTABLISHED,RELATED -j ACCEPT


Mais malgré ce que dit la manpage:
Manpage iptables wrote:
limit
This module matches at a limited rate using a token bucket filter.
A rule using this extension will match until this limit is reached
(unless the ‘!’ flag is used). It can be used in combination with
the LOG target to give limited logging, for example.

J'obtiens cette erreur à l'exécution du script iptables (que le "!" soit avant ou après "--limit"):
Code:
iptables v1.3.5: limit does not support invert


Argh, une idée?
_________________
-PC: 2500K/P8Z68V, 8Go, R9-290, ARC1220+5xWD500RE3, M4 256Go
-Home servers (hardened): µ-serv N40L, 2Go ECC ; NF9D-2700, 4Go ; DS61, i3 2100T, 16Go
-Réseau: ERL-3 + 3x switches GS108Tv2
-NAS: RN312
http://boycottsystemd.org/


Last edited by El_Goretto on Tue Jan 09, 2007 2:36 pm; edited 1 time in total
Back to top
View user's profile Send private message
geekounet
Bodhisattva
Bodhisattva


Joined: 11 Oct 2004
Posts: 3756
Location: Lyon, France

PostPosted: Tue Jan 09, 2007 12:06 pm    Post subject: Reply with quote

Code:
# emerge sys-freebsd/freebsd-pf

:P
_________________
Google+ | Twitter
Back to top
View user's profile Send private message
kopp
Advocate
Advocate


Joined: 09 Apr 2004
Posts: 2869
Location: Grenoble, France

PostPosted: Tue Jan 09, 2007 1:07 pm    Post subject: Reply with quote

geekounet wrote:
Code:
# emerge sys-freebsd/freebsd-pf

:P

Encore une réponse utile pour faire savoir à ceux qui ne le sauraient pas encore que tu utilises Gentoo/FreeBSD ... Vu le nombre de fois où tu l'as déjà clamé, je pense que tout le monde est au courant maintenant.

Enfin, je dis ça, je dis rien.
Back to top
View user's profile Send private message
geekounet
Bodhisattva
Bodhisattva


Joined: 11 Oct 2004
Posts: 3756
Location: Lyon, France

PostPosted: Tue Jan 09, 2007 1:08 pm    Post subject: Reply with quote

kopp wrote:
geekounet wrote:
Code:
# emerge sys-freebsd/freebsd-pf

:P

Encore une réponse utile pour faire savoir à ceux qui ne le sauraient pas encore que tu utilises Gentoo/FreeBSD ... Vu le nombre de fois où tu l'as déjà clamé, je pense que tout le monde est au courant maintenant.

Enfin, je dis ça, je dis rien.

Non, juste pour dire (troller ?) que PF est meilleur qu'iptables ;)
_________________
Google+ | Twitter
Back to top
View user's profile Send private message
kopp
Advocate
Advocate


Joined: 09 Apr 2004
Posts: 2869
Location: Grenoble, France

PostPosted: Tue Jan 09, 2007 1:10 pm    Post subject: Reply with quote

geekounet wrote:
Non, juste pour dire (troller ?) que PF est meilleur qu'iptables ;)

Troller est le mot. C'était pas du tout constructif comme réponse vu que pf ne s'utilise pas sous Linux, que je sache.
Back to top
View user's profile Send private message
_droop_
l33t
l33t


Joined: 30 May 2004
Posts: 957

PostPosted: Tue Jan 09, 2007 2:23 pm    Post subject: Reply with quote

Salut,

Si j'ai bien compris tu veux qu'au bout d'un certain temps la règle :
Code:
IPTABLES -A INPUT  -m state --state ESTABLISHED,RELATED

ne s'applique plus, afin de simuler un time out du client.

Peut être qu'en jouant sur le time out du "conntrack" on peut définir ce temps. (ca doit se trouvet dans /proc/sys/net mais j'ai la flemme de chercher). Après ca risque d'influencer les autres services...

Sinon j'ai aussi vu un patch iptables qui pourrait faire ceci (modifier le time out conntrack).
Back to top
View user's profile Send private message
El_Goretto
Advocate
Advocate


Joined: 29 May 2004
Posts: 2881
Location: Paris

PostPosted: Tue Jan 09, 2007 2:35 pm    Post subject: Reply with quote

Ouaip, effectivement, c'est moyen l'impact sur les autres services :), surtout que je risque de laisser la machine en l'état passé cette semaine...

Merci quand même droop :)
_________________
-PC: 2500K/P8Z68V, 8Go, R9-290, ARC1220+5xWD500RE3, M4 256Go
-Home servers (hardened): µ-serv N40L, 2Go ECC ; NF9D-2700, 4Go ; DS61, i3 2100T, 16Go
-Réseau: ERL-3 + 3x switches GS108Tv2
-NAS: RN312
http://boycottsystemd.org/
Back to top
View user's profile Send private message
truc
Advocate
Advocate


Joined: 25 Jul 2005
Posts: 3199

PostPosted: Wed Jan 10, 2007 10:28 am    Post subject: Reply with quote

http://openvpn.net/man-beta.html openvpn-2.1
Quote:
--inactive n [bytes]
Causes OpenVPN to exit after n seconds of inactivity on the TUN/TAP device. The time length of inactivity is measured since the last incoming tunnel packet.
If the optional bytes parameter is included, exit after n seconds of activity on tun/tap device produces a combined in/out byte count that is less than bytes.


et pour openvpn-2.0.x, c'est la même chose sans l'optionnel argument [bytes]

Ca ne fait pas ce que tu veux ça?
_________________
The End of the Internet!
Back to top
View user's profile Send private message
El_Goretto
Advocate
Advocate


Joined: 29 May 2004
Posts: 2881
Location: Paris

PostPosted: Fri Jan 12, 2007 3:25 pm    Post subject: Reply with quote

Arrgh, je l'avais pas vu cette option (je n'avais d'ailleurs pas vu ta réponse, les bermudes ont encore frappé). C'est ce que je cherchais mais je ne sais pas si j'aurais le temps de l'implémenter et de la valider d'ici ce soir...
Je travaille avec une "vieille" version d'OpenVPN marqué stable sur alpha, c'est peut etre pour çà que je ne l'ai pas repéré (mauvais foi? moi? :))


En tout cas, en théorie, on considère le point comme résolu :)

Merci truc (pour ton dévouement et ton PM :)).
_________________
-PC: 2500K/P8Z68V, 8Go, R9-290, ARC1220+5xWD500RE3, M4 256Go
-Home servers (hardened): µ-serv N40L, 2Go ECC ; NF9D-2700, 4Go ; DS61, i3 2100T, 16Go
-Réseau: ERL-3 + 3x switches GS108Tv2
-NAS: RN312
http://boycottsystemd.org/
Back to top
View user's profile Send private message
El_Goretto
Advocate
Advocate


Joined: 29 May 2004
Posts: 2881
Location: Paris

PostPosted: Fri Jan 12, 2007 3:51 pm    Post subject: Reply with quote

Erf, çà marche...
Mais le client OpenVPN est trop malin et relance la connexion dès que le serveur la coupe.

Donc c'est pas encore çà.
_________________
-PC: 2500K/P8Z68V, 8Go, R9-290, ARC1220+5xWD500RE3, M4 256Go
-Home servers (hardened): µ-serv N40L, 2Go ECC ; NF9D-2700, 4Go ; DS61, i3 2100T, 16Go
-Réseau: ERL-3 + 3x switches GS108Tv2
-NAS: RN312
http://boycottsystemd.org/
Back to top
View user's profile Send private message
truc
Advocate
Advocate


Joined: 25 Jul 2005
Posts: 3199

PostPosted: Fri Jan 12, 2007 5:26 pm    Post subject: Reply with quote

El_Goretto wrote:
Erf, çà marche...
Mais le client OpenVPN est trop malin et relance la connexion dès que le serveur la coupe.

Donc c'est pas encore çà.


Et en mettant l'option chez le client également ça ne fait rien? :?:
_________________
The End of the Internet!
Back to top
View user's profile Send private message
El_Goretto
Advocate
Advocate


Joined: 29 May 2004
Posts: 2881
Location: Paris

PostPosted: Fri Jan 12, 2007 6:20 pm    Post subject: Reply with quote

Désolé, mais partant du principe de ne jamais faire confiance au client (parano, mais presque), je n'ai absolument pas pensé à voir si l'option pouvait se mettre sur le client...
Et surtout je devais "rendre" la machine ce soir, donc je n'ai pas eu le temps de creuser cet aspect qui n'était plus prioritaire.

Merci encore, pour la culture j'essaierai chez moi un jour ^^.
_________________
-PC: 2500K/P8Z68V, 8Go, R9-290, ARC1220+5xWD500RE3, M4 256Go
-Home servers (hardened): µ-serv N40L, 2Go ECC ; NF9D-2700, 4Go ; DS61, i3 2100T, 16Go
-Réseau: ERL-3 + 3x switches GS108Tv2
-NAS: RN312
http://boycottsystemd.org/
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum