Transferts jabber impossible avec pare-feu

Bonjour!
Je rencontre des soucis pour mes transferts jabber. En effet, ils sont impossible à faire. J’ai découvert que lorsque je désactivais mon pare-feu (ufw), cela fonctionnait à merveille! J’ai donc testé d’autre pare-feu (celui de T&A, firestarter…), mais le souci est le même.

J’ai mis du temps à me rendre compte que cela venait du pare-feu, je pensais plutot que le problème venait du client jabber, car en utilisant empathy, les transferts fonctionnaient malgré tout.

Comment selon vous je peux résoudre ce problème. Pour info j’utilise gajim.

Ah, et j’oubliais, le port 5222 est ouvert dans mon pare-feu.
voila, je ne sais pas comment faire. Surtout que sur le wiki jabber, ils disent bien qu’il n’y a pas à se préoccuper du pare-feu à priori, que le client saura se débrouiller :slightly_smiling: .

Merci d’avance.
Bonne journée! :smt006

Personne ne sait pourquoi ce problème est là?

Je ne connais pas le protocole utilisé par Jabber pour le transfert de fichier, mais si ça se passe comme avec IRC ou MSN alors il utilise des connexions séparées sur des ports différents du port principal (5222). L’émetteur ouvre un port local en écoute et le destinataire s’y connecte ou l’inverse. Il faut donc autoriser d’un côté les connexions sortantes et de l’autre côté les connexions entrantes sur ce port. Il y a peut-être moyen de fixer une plage de ports à cet usage dans la configuration du client Jabber.

C’est juste une idée. A défaut de connaître le protocole, il faudrait examiner les logs du pare-feu et faire une capture du trafic sur l’interface réseau pour voir ce qui passe et ce qui est bloqué.

Les transferts de fichiers sous Jabber se font par le port 7777.

J’ai ceci dans les paramètres de Pidgin pour le proxy de transfert :
proxy.jabber.org:7777

il me faudrait alors ouvrir le port 7777?
Mais franchement, à quoi sert un pare-feu si on doit ouvrir des ports?

@ François_29 :
Apparemment tes transferts de fichiers passent par un serveur proxy qui est accessible via le port 7777. En fonction du serveur proxy, ça pourrait être n’importe quel autre port.

@ thuban :
“Ouvrir un port” ne veut rien dire en soi, ou peut signifier plusieurs choses différentes. Généralement cela signifie autoriser les connexions entrantes vers ce port. Mais pour François_29, ce serait plutôt autoriser les connexions sortantes vers l’adresse du proxy sur ce port. Ce n’est nécessaire que si les connexions sortantes sont bloquées par défaut, ce qui est rarement le cas : généralement on autorise tout en sortie (si on fait confiance à sa machine) et au cas par cas en entrée en fonction des services qu’on veut rendre accessibles de l’extérieur.

Un pare-feu sert à limiter les types de communications autorisés. Pour cela il y a deux approches principales :

  • on bloque tout par défaut et on accepte au cas par cas (ce qu’on fait généralement en entrée)
  • on accepte tout par défaut et on bloque au cas par cas (ce qu’on fait généralement en sortie)

Merci pour les informations supplémentaires. Mais je continue à croire qu’utiliser un pare feu, pour ouvrir un port, ça revient à mettre une barrière avec une porte ouverte pour le pirate éventuel.

que me conseillez vous alors pour mon soucis de transfert? J’ai par ailleur retesté, ça ne marche pas à tous les coups, même en désactivant le pare-feu… je ne sais pas quoi y faire! Pourtant, gajim marche bien chez vous, non?

Personne ne peux m’expliquer pourquoi les choses fonctionnent avec empathy et pas avec gajim?

Peut-être parce que les deux ne font pas les transferts de fichiers de la même façon ?
Comme suggéré plus haut, une analyse du trafic pourrait en dire plus.

j’ai fouillé dans les options de gajim, et trouvé le port utilisé pour les transferts. J’ai donc adapté ufw en fonction, mais je n’ai pas encore testé.
Comment puis-je faire une analyse de traffic?
Là encore, même si ma manip fonctionne, je ne comprends pas pourquoi empathy parviens à enclencher les transferts et pas gajim.

bon, en changeant le port des transferts dans les options avancées de gajim, et en l’ouvrant avec le pare-feu, cela semble fonctionner.
Je n’ai cependant pas de réponses quand au fait que empathy fonctionne sans ça, et pas gajim.

ps : les transferts se font plus rapidement toutefois, peut-être parce que j’ai précisé un nouveau proxy?

Les plus connus :
En ligne de commande : tcpdump, tshark
En interface graphique : wireshark
Il y en a d’autres.

[quote=“thuban”]bon, en changeant le port des transferts dans les options avancées de gajim, et en l’ouvrant avec le pare-feu, cela semble fonctionner.
Je n’ai cependant pas de réponses quand au fait que empathy fonctionne sans ça, et pas gajim.

ps : les transferts se font plus rapidement toutefois, peut-être parce que j’ai précisé un nouveau proxy?[/quote]
Mon hypothèse est que les deux programmes ne fonctionnent pas de la même façon pour transférer un fichier : empathy passe par un proxy intermédiaire ce qui ne nécessite pas d’ouvrir un port local en entrée, alors que gajim utilise une connexion directe qui nécessite d’ouvrir un port en entrée. Avec une connexion directe sans proxy intermédiaire, le transfert est plus rapide, comme c’est le cas avec MSN.