xmppo / node-xmpp-bosh

An XMPP BOSH & WebSocket server (connection manager) written on node.js using Javascript
https://github.com/xmppo/node-xmpp-bosh
263 stars 85 forks source link

"connection-disallowed-by-firewall-rules" #90

Closed gshergill closed 11 years ago

gshergill commented 11 years ago

Hi dhruvbird,

Thanks for the great bosh.

Having a slight issue with my setup - seeing an error when trying to connect as xmpp user.

"RECV: "

Set logging to debug and see the following:

[2013-09-24 11:14:30.052] [DEBUG] [http-server.js:_unwrapped_on_end_callback:137] - RECD: [2013-09-24 11:14:30.055] [DEBUG] [xmpp-proxy.js:XMPPProxy._close_connection:338] - 91ad9eee-889b-4190-a3fb-e12d67b8eb62 e655cbe5-a4a6-41a3-b6a2-8abba934e105 error: connection-disallowed-by-firewall-rules [2013-09-24 11:14:30.057] [DEBUG] [xmpp-proxy-connector.js:Object._on_xmpp_proxy_close:72] - 91ad9eee-889b-4190-a3fb-e12d67b8eb62 e655cbe5-a4a6-41a3-b6a2-8abba934e105 - terminate stream [2013-09-24 11:14:30.058] [DEBUG] [session.js:Object.send_terminate_response:606] - 91ad9eee-889b-4190-a3fb-e12d67b8eb62 send_terminate_response - ro: true, condition: connection-disallowed-by-firewall-rules [2013-09-24 11:14:30.061] [DEBUG] [response.js:Object.send_response:87] - 91ad9eee-889b-4190-a3fb-e12d67b8eb62 SENT(631408135): [2013-09-24 11:14:30.062] [WARN] [session.js:Object.send_creation_response:619] - 91ad9eee-889b-4190-a3fb-e12d67b8eb62 send_creation_response - No response object to send creation response for stream: e655cbe5-a4a6-41a3-b6a2-8abba934e105

This is all local on a single machine, Ubuntu 12.04, with no firewall enabled. Not sure where this issue is coming from.

Have you seen this before? Can't find anything to do with it on google and it's not even in the XMPP spec as an error.

Thank you.

Kind Regards,

Gary Shergill

dhruvbird commented 11 years ago

@gshergill Can you post some logs? Where do you see this error? On the bosh server or the client endpoint?

gshergill commented 11 years ago

Hi dhruvbird,

Seeing this in bosh.err when I try to make a connection. I'm using strophejs's basic.html example to test, but also seeing the same in the live html deployment.

It's working with Openfire's built in BOSH, but would prefer to have node-xmpp-bosh running (to keep it consistent throughout our deployments).

Set logging to debug and see the following:

[2013-09-24 11:14:30.052] [DEBUG] [http-server.js:_unwrapped_on_end_callback:137] - RECD: <body rid="631408135" xmlns="http://jabber.org/protocol/httpbind" to="strophetest" xml:lang="en" wait="60" hold="1" content="text/xml; charset=utf-8" ver="1.6" xmpp:version="1.0" xmlns:xmpp="urn:xmpp:xbosh"/>
[2013-09-24 11:14:30.055] [DEBUG] [xmpp-proxy.js:XMPPProxy._close_connection:338] - 91ad9eee-889b-4190-a3fb-e12d67b8eb62 e655cbe5-a4a6-41a3-b6a2-8abba934e105 error: connection-disallowed-by-firewall-rules
[2013-09-24 11:14:30.057] [DEBUG] [xmpp-proxy-connector.js:Object._on_xmpp_proxy_close:72] - 91ad9eee-889b-4190-a3fb-e12d67b8eb62 e655cbe5-a4a6-41a3-b6a2-8abba934e105 - terminate stream
[2013-09-24 11:14:30.058] [DEBUG] [session.js:Object.send_terminate_response:606] - 91ad9eee-889b-4190-a3fb-e12d67b8eb62 send_terminate_response - ro: true, condition: connection-disallowed-by-firewall-rules
[2013-09-24 11:14:30.061] [DEBUG] [response.js:Object.send_response:87] - 91ad9eee-889b-4190-a3fb-e12d67b8eb62 SENT(631408135): <body xmlns="http://jabber.org/protocol/httpbind" condition="connection-disallowed-by-firewall-rules" type="terminate"/>
[2013-09-24 11:14:30.062] [WARN] [session.js:Object.send_creation_response:619] - 91ad9eee-889b-4190-a3fb-e12d67b8eb62 send_creation_response - No response object to send creation response for stream: e655cbe5-a4a6-41a3-b6a2-8abba934e105

Thank you.

Kind Regards,

Gary Shergill

dhruvbird commented 11 years ago

@gshergill Do you have some firewall settings configured in your config file?

gshergill commented 11 years ago

Hi dhruvbird,

Sorry, which config do you mean? I've not edited any config files.

Do you mean bosh.js.conf?

Thank you.

Kind Regards,

Gary Shergill

gshergill commented 11 years ago

Hi dhruvbird,

Looks like there was a firewall setting in bosh.js.conf. Commented it out and it's working now.

Not seen this setting before, it's not in the conf file of any of my other servers running bosh. Is it an addition to 0.7.7?

Thank you.

Kind Regards,

Gary Shergill

dhruvbird commented 11 years ago

@gshergill It was added in 0.7.5 - though the defaults allow everything and disallow no one. I wonder how you got an entry in the file...

gshergill commented 11 years ago

Hi dhruvbird,

For reference, it had the following:

    firewall: {
          allow: [ /* 'jabber.org', /(.*\.)?jappix.com$/ */ ],
          deny:  [ /* 'gmail.com' */ ]
    },

Thank you.

Kind Regards,

Gary Shergill

dhruvbird commented 11 years ago

Thanks - will look into it - might be a bug.

dhruvbird commented 11 years ago

Fixed by 74f7c9246179b1a71d1b971cf4f558274c9a5580 This was a problem with the default config. file and the docs. around it.