XMPP file proxy with proxy65

At work, we use our own jabberd2 XMPP server instance to communicate with each other. Apart from one-to-one chats, we use the MUC plugin to get company-wide and project specific chat rooms.

The jabberd2 server directly reads user data from our mail server database (see XAMS patch, MySQL view for jabberd2 on the mail server DB). Our benefit in hosting our own jabber server is that we have absolute security by employing SSL connections that nobody can eavesdrop. Sensible data are only being sent over servers that we control.

One thing that did not work yet was file transfer. The idea is easy: Simply drop a file from your desktop of file manager onto the coworker in your XMPP roster (contact list) and the file is being sent to him. Sometimes it worked when both are in the internal network, but not always, and not with all clients. The solution here is either open ports in the company firewall or a file transfer proxy.

proxy65 is such a one; it is easy to setup and does what it says on the tin - even if the last release was nearly two years ago. Installation was easy:

After installation, you really should start proxy65 in debug mode:

twistd --nodaemon --logfile='-' proxy65 --secret=pass --proxyips= --rport=5347
specifies the jabberd2-internal router password
specifies the IP of the server your jabberd2 server is hosted on
jabberd2 router port

When everything is fine and running, you should see a new XMPP service in the service list: PSI service list

Now you may add that jabber ID ("proxy65" in our case") as file transfer proxy to your account settings. Please note that, although sometimes it looks like a FQDN like proxy.jabber.org, this is a Jabber ID! It took quite a while until I noticed that.

Written by Christian Weiske.

Comments? Please send an e-mail.