Adding a Proxy Service

Hello everyone, I have tried searching for this information, but I haven’'t found anything that tells me what steps I need to do in order to configure external components such as proxy65 to work with Jive.

Right now, I am configuring and installing a Jabber Server for a small company. They have the need to send files from people outside their LAN to those inside it. From my best guess, this requires the use of a Proxy Server. Of course, security is a concern from their perspective, so the use of a public Proxy seems a bit of a bad choice. Thus, the first thing that struck my mind was of course to use proxy65. I haven’‘t used it at all before, and it took me a few moments to get it installed. After installation however, I am reading through the docs, and the configuration part is all for Jabberd. Jive messenger being the only server I have ever installed, I am quite unsure about the proper way to go about configuring proxy65 for use with Jive, or if it is even possible at all. I assume that it is, since Jive has a configuration section for “External Components” but I don’‘t understand how it all works, as there don’'t seem to be the equivalent “configuration steps” involved with Jive as there are in the docs.

Could anyone point me in the right direction for how to go about doing this and what I need to know?

Unfortunately, we don’‘t have any docs on configuring proxy65. However, a user is working on adding SOCKS5 support directly to the server. Until then, I would recommend using a client that can support in-band file transfer (it will send files directly through the XMPP stream). It should work just fine for sending files to people outside the LAN, although it’'s not as efficient as a SOCKS5 server.

Regards,

Matt

Okay, well, that’‘s not good. Then I have another question. Clients that support file transfers all seem to require some sort of ports be open in order to send files through a NAT. But I have more than one person behind the NAT that would want to transfer files with people outside the LAN, and I haven’'t seen any that support dynamically assigning ports and such with UPnP support, so how would I go about doing that with clients? Can you point me in the direction of some of the clients?

Is there an ETA for socks5 support?

Right now most of my users use Psi, Pandion, Exodus, and Kopete, but I know I may have a Tkabber user in there too.

setting up proxy 65 to work with messenger is very similar to setting it up to use with any of the other py transports. I don’‘t know what your level of familiarity is with python but I managed to get it setup in the matter of a few hours without knowing any python. It isn’'t the most pleasing implementation but it gets the job done.

The in-band file transfer Matt refered to makes an end run around the NAT problem because the file is actualy transfered via the xml stream that is used for jabber to send messanges, presences, and everything else. The issue that arries with it is that it is extremely taxing on the server if even a handful of users are sending files or a user decides to send a large file. There is no way currently in messenger to control file sizes that I am aware of or limit the amount of users that can transfer a file at once.

Another issue is off the clients mentioned I know only exodus can support the in-band method. Psi has out right refused to implement it becuase of the issues with the server that I refered to.

Alex

setting up proxy 65 to work with messenger is very

similar to setting it up to use with any of the other

py transports. I don’'t know what your level of

familiarity is with python but I managed to get it

setup in the matter of a few hours without knowing

any python. It isn’'t the most pleasing implementation

but it gets the job done.

Would you mind explaining it? I am really not familiar with the concept of how this all works, though I have been reading documentation for years. I read th documentation to get proxy65 installed, and it worked well, up to the configuration point. Right now I have everything installed, I think…at least, I went through the instructions and it seemed to be going just fine.

Right now, where I am stuck is on step 4 of the README file. “CONFIGURING PROXY65”. I don’‘t know what I am doing there. It says, “Next, update your server configuration,” but they cite the jabberd 1.4 xml file. I don’'t know what the equivalent to this is on Jive.

In further reading I note things like Secret Passphrases, and I assume that we are dealing with something in the “External Components” section, but I have no idea what I am doing, and I don’'t even know what I would do after that.

hey arcfide:

if you look under that section in the readme where it discusses configuring proxy65 you’'ll see this:

  1. mktap proxy65 --help

Usage: mktap

Options:

–jid= default: proxy65

–secret=

–rhost= default: 127.0.0.1

–rport= default: 6000

–proxyip=

–proxyport= default: 7777

–version

–help Display this help and exit.

after installing twisted and python, i should note that I could not get it working with the newest version of twisted so if you want that to happen I remember some messages a few months back about it on the jdev list.

the options are also described in more detail in the readme:

–jid The JID of your Proxy65 service, just as it is

in your jabber.xml file or other config.

–secret The secret password used between your Jabber

server and your Proxy65 component.

–rhost The IP address of your Jabber router (server).

–rport The port over which router-to-component traffic

will be sent.

–proxyip The IP address used for SOCKS5 communications.

–proxyport The port used for SOCKS5 communications.

the secret is if you look in the jive messenger admin console under the configuration for external components you will see a field for putting a secret -rhost is the ip of Messenger and -rport is the port you have configured in messenger for it to have to listen to external components. proxyip is the ip of the machine you have proxy65 running on and proxyport is the port with which you want it to listen on for data transfer requests from clients.

With that you have reached about the extent of my knowledge, if you have any more questions i would recomend contacting the jdev mailing list or peter st. andre directly as he is the current maintainer of the proxy65 project.

Alex