Projet

Général

Profil

Anomalie #5412

Timeout à la création d'un compte

Ajouté par pitchum . il y a presque 3 ans. Mis à jour il y a plus de 2 ans.

Statut:
Fermé
Priorité:
Élevée
Assigné à:
Adrien Bourmault
Début:
26/05/2021
Echéance:
% réalisé:

0%

Temps estimé:
Difficulté:
2 Facile

Description

C'est un problème qui a été signalé aussi à plusieurs reprises sur le salon Chapril.
Et j'y ai été confronté récemment lorsque j'ai suggéré à quelqu'un de se créer un compte.
C'est peut-être spécifique à Gajim.

Ce soir, j'ai fait le test en activant la console XML dans Gajim. Et on voit que le timeout survient exactement 30 secondes après l'affichage du formulaire d'inscription. Et 30 secondes c'est très peu pour renseigner 4 champs, dont l'un correspond à la réponse au CAPTCHA qui n'est pas toujours facile à trouver rapidement.

<!-- Outgoing mer. 26 mai 2021 20:23:56 (Account Wizard) -->
<?xml version='1.0'?><stream:stream xmlns="jabber:client" version="1.0" xmlns:stream="http://etherx.jabber.org/streams" to="chapril.org" xml:lang="en">

<!-- Incoming mer. 26 mai 2021 20:23:56 (Account Wizard) -->
<stream id="3702780494144284545" version="1.0" xml:lang="en" xmlns:stream="http://etherx.jabber.org/streams" from="chapril.org" xmlns="jabber:client" />

<!-- Incoming mer. 26 mai 2021 20:23:56 (Account Wizard) -->
<features xmlns="http://etherx.jabber.org/streams">
  <mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl">
    <mechanism>PLAIN</mechanism>
    <mechanism>SCRAM-SHA-1</mechanism>
</mechanisms>
  <register xmlns="http://jabber.org/features/iq-register" />
</features>

<!-- Outgoing mer. 26 mai 2021 20:23:56 (Account Wizard) -->
<iq xmlns="jabber:client" to="chapril.org" type="get" id="e74edb90-86ad-4285-bb2d-60c4645bfa50">
  <query xmlns="jabber:iq:register" />
</iq>

<!-- Incoming mer. 26 mai 2021 20:23:56 (Account Wizard) -->
<iq xmlns="jabber:client" xml:lang="en" from="chapril.org" type="result" id="e74edb90-86ad-4285-bb2d-60c4645bfa50">
  <query xmlns="jabber:iq:register">
    <x type="form" xmlns="jabber:x:data">
      <instructions>Choose a username and password to register with this server</instructions>
      <field var="FORM_TYPE" type="hidden">
        <value>urn:xmpp:captcha</value>
</field>
      <field var="username" type="text-single" label="User">
        <required />
</field>
      <field var="password" type="text-private" label="Password">
        <required />
</field>
      <field var="captcha-fallback-text" type="fixed">
        <value>If you don't see the CAPTCHA image here, visit the web page.</value>
</field>
      <field var="captcha-fallback-url" type="text-single" label="CAPTCHA web page">
        <value>https://xmpp.chapril.org/captcha/12315660819247421377/image</value>
</field>
      <field var="from" type="hidden" label="Attribute 'to' of stanza that triggered challenge">
        <value>chapril.org</value>
</field>
      <field var="challenge" type="hidden" label="Challenge ID">
        <required />
        <value>12315660819247421377</value>
</field>
      <field var="sid" type="hidden" label="Stanza ID">
        <value>e74edb90-86ad-4285-bb2d-60c4645bfa50</value>
</field>
      <field var="ocr" type="text-single" label="Enter the text you see">
        <media xmlns="urn:xmpp:media-element">
          <uri type="image/png">cid:sha1+1ab3fc7166255b496e61f43d531dd2df24c30863@bob.xmpp.org</uri>
</media>
        <required />
</field>
</x>
    <data type="image/png" max-age="0" cid="sha1+1ab3fc7166255b496e61f43d531dd2df24c30863@bob.xmpp.org" xmlns="urn:xmpp:bob">iVBORw0KGgoAAAANSUhEUgAAASwAAABGEAQAAACM/L0[...]AAAAAElFTkSuQmCC</data>
    <instructions>You need a client that supports x:data and CAPTCHA to register</instructions>
</query>
</iq>

<!-- Incoming mer. 26 mai 2021 20:24:26 (Account Wizard) -->
<error xmlns="http://etherx.jabber.org/streams">
  <connection-timeout xmlns="urn:ietf:params:xml:ns:xmpp-streams" />
  <text xml:lang="en" xmlns="urn:ietf:params:xml:ns:xmpp-streams">Idle connection</text>
</error>

<!-- Outgoing mer. 26 mai 2021 20:24:26 (Account Wizard) -->
</stream:stream>

Historique

#1

Mis à jour par pitchum . il y a presque 3 ans

Je viens de modifier le paramètre registration_timeout de 30 à 300 secondes puis "reload_config" mais ça n'a rien changé.
Logique d'après la doc registration_timeout

J'ai toujours un timeout à si je ne finis pas le formulaire d'inscription en moins de 30 secondes... :(

#2

Mis à jour par pitchum . il y a presque 3 ans

Peut-être que c'était le bon paramètre mais que j'aurais dû faire un restart plutôt qu'un reload.

#3

Mis à jour par pitchum . il y a presque 3 ans

Avec registration_timeout: 300 on a toujours un timeout de 30 secondes à l'inscription. Le soucis est ailleurs...

#4

Mis à jour par pitchum . il y a presque 3 ans

Neox, si tu pouvais tester mod_register sur une instance ejabberd plus récente, avec et sans captcha activé.

#5

Mis à jour par pitchum . il y a presque 3 ans

  • Assigné à changé de pitchum . à Adrien Bourmault
#6

Mis à jour par pitchum . il y a plus de 2 ans

  • Statut changé de En cours de traitement à Résolu

Problème résolu. C'était le paramètre negotiation_timeout qu'il fallait définir.
Je l'ai configuré à 5 minutes.

C'est un paramètre générique, pas spécialement lié à mod_register. cf. la doc negotiation-timeout :

Time to wait for an XMPP stream negotiation to complete. When timeout occurs, the corresponding XMPP stream is closed. The default value is 30 seconds.

#7

Mis à jour par pitchum . il y a plus de 2 ans

  • Statut changé de Résolu à Fermé
#8

Mis à jour par Christian P. Momon il y a plus de 2 ans

  • Version cible changé de Backlog à Sprint 2021 été

Formats disponibles : Atom PDF