powered by Jive Software

Expose Openfire to internet for outside connections, what ports needed?


I am writing a little web client that is supposed to connect to an Openfire server hosted on one of my machines. For this, I think, I need to expose openfire on this machine “to the internet”. My gateway is a cable modem/router, and the machine sits behind this.

What ports do I need to forward in this gateway to my local machine?

So far, I have forwarded TCP port 5222 of the gateway to 5222 on the server machine. However, I can’t connect to the server, using for example, Xabber, on my android phone.

What I can do, is connect to the server from within the local network the server is on.

For example, the server is a-PC, so, if I want to use Xabber on my network, I use username@a-PC as the jid and I can connect.

However, if I try to connect from a phone that is not on the local network, using username@, where would be my gateway’s global ip, i cant connect, even though Ive forwarded port 5222 of the gateway to 5222 of a-PC. Other services, such as the bosh service, ARE available from outside at, however I dont think I need to use my own bosh here as I am using this one http://bosh.metajack.im:5280/xmpp-httpbind in my app at the moment.

What else do I need to do to expose the server running on a-PC to the internet, so I can connect from outside my network?

Thanks for any help and input!



In Xabber try putting only username into User and into Server field. It only works for me when connecting inside the network (on Wifi) to my local server. Though i think it was working also by specifying real server’s name in the Host field, but now it doesn’t work so i have disabled Host field. You can also try some other client, like Yaxim (here you can specify username@ as JabberID). There is also probably a way to test whether a port is open. I know people are using telnet to test if connection can be established, but i haven’t tried myself.

5222 should be enough for a remote client to connect. Also check if some firewall isn’t blocking connections.