Upgrade Openfire from 3.3 to 3.7

We are adding about 100+ users to our openfire server (the clients are using jabber) and before we do so I want to make sure that we are running the most recent verison. What are the steps involved and is there anything I should be weary of? I did an upgrade a while ago from 2.5 to a 3.x version while ago and it did not go so smoothly so I am trying to avoid that this time around. Thanks.

Well, i don’t think there should be more issues doing 3.3 to 3.7 (3.7.1 actually). What operating system and database? In any case, you should do a backup, so you can easily revert to the working version. As i use the embedded database, i usually just backup the whole openfire folder.

I am pretty sure we are using the embedded database, under “database and version” it shows “HSQL Database Engine 1.8.0” (was not setup by me) but how can I double check? The OS is server 2003 SP2

As for backing up and upgrading, Can I just copy the openfire folder to another location and then download and install the 3.7.1 over the current version?

It looks like you are using the embedded database. Check the C:\Program Files\Openfire folder. You should find the embedded-db folder there with 4 files in there. I suggest to do a backup (copy to another location) with Openfire turned off, so every cached information would be written into a database. Yes, i think you can just run the installer and install on top. Installer script should run all the needed database upgrade scripts to match the 3.7.1 scheme.

It looks as if this was an upgarade from wildfire as the directory I have is “C:\Program Files\Wildfire\embedded-db” but that should not matter right?

If it does work properly all the settings and users will be retained? Also if not, how would I go about restoring it from the backup folder, just in case.

Thanks for your help.

I thought 3.3 was already Openfire. What does it say on the Admin Console page “Openfire” or “Wildfire”? Maybe it is just the folder with the old name. Then you may just upgrade on top. If it is not, then this is tricky. You can still try upgrading on top, but maybe it will install beside the older folder as a fresh installation. Then you can copy your files into new installation, then try to run it and hope that Openfire will upgrade your database. Files to copy would be /conf/wildfire.xml (rename to openfire.xml and copy to the new folder overwriting the fresh openfire.xml if it is there, then edit this file and replace all org.jivesoftware.wildfire with org.jivesoftware.openfire); /embedded-db folder (rename all 4 files to have openfire instead of wildfire). I can’t say whether any of this solutions will work.

Backup restore: wiping Wildfire (and Openfire) folder after you have messed with it and restoring/copying old Wildfire folder back from your backup copy.

It is currently running Openfire 3.3 but it was originally upgraded from wildfire. Not sure if that made a difference or not because the folder name still says wildfire and not openfire. When I run the installer for 3.71 and it prompts me for the location I will just choose the current folder? I am going to try next week to install over the current setup after backing up the current folder and I will let you know how it goes, thanks for the help!

Yes, you can try the current folder. Wonder, maybe it will suggest it itself.

ran the installer but it said that the service was still running. Prior to that I exited the openfire icon out of the system tray. I also tried running the C:\programfiles\wildfire\bin> openfire-service /stop but it says it cannot be stopped (cannot start it either). Maybe I need to reboot? Is there another way to stop the service? I do not see a service with wildfire or openfire in the name…

If you can’t stop it from the services.msc either, then i say reboot is the only option.

I have another question if you have a sec. I setup openfire on an SBS 2011 box using the embedded DB and it went smooth. I tried installing mairand IM on one client machine to connect it to make sure it was working. It would let me register new users and through the admin page I would see the newly created user but I could not get their status “online” I made sure the client firewall was off and I made sure ports 5232 and 5333 were open. I also tried SSL, etc… but I could not get it to work on any client computers. It would allow me to register new user but could not get them online. However on my laptop which I use at any different client I decided to connect to it and it worked right off the bat. Not sure what the difference is, I tried commapring the settings but everything looked the same.

You don’t have to open 5232, it’s an obsolete port. You only need 5222 port for secured and non-secured connections. But you only need to open it on the server. Client is using various ports, so actually you should unblock whole Miranda client on the client, to let it freely go to the network. Can’t think of anything else. You can also try disabling the requirements of SSL for the clients (Server Settings > Security Settings > Custom).

That was a typo, I meant 5222. Actually looking at other environments I have that are similar, on the server I went one step furthere and made a custom firewall rule for openfire.exe that it was allowed on all ports for TCP and UDP but the client machine would still not go online. I even added the same custom firewall rule on the client PC. Maybe I’ll check the firewall and see if there’s anything in there that would be stopping it but I’m running out of places to check lol.

My laptop was on the wifi and it went right online after I registered myself.

Here is the network log from that client PC:

[14:10:55 JABBER_1] SetAwayMsg called, wParam=40072 lParam=Yep, I’m here.

[14:10:55 JABBER_1] PS_SETSTATUS( 40072 )

[14:10:55 JABBER_1] Thread started: type=0

[14:10:55 JABBER_1] _xmpp-client._tcp.BE-SERVER.benezralaw.com not resolved

[14:10:55 JABBER_1] Connection request to BE-SERVER.benezralaw.com:5222 (Flags 0)…

[14:10:55 JABBER_1] (03F91C58) Connecting to server BE-SERVER.benezralaw.com:5222

[14:10:55 JABBER_1] (460) Connected to BE-SERVER.benezralaw.com:5222

[14:10:55 JABBER_1] Thread type=0 server=‘BE-SERVER.benezralaw.com’ port=‘5222’

[14:10:55 JABBER_1] Local IP = 192.168.128.185

[14:10:55 JABBER_1] Stream is initializing after connect

[14:10:55 JABBER_1] (03F91C58:460) Data sent

<?xml version="1.0" encoding="UTF-8"?><stream:stream xmlns=“jabber:client” to=“BE-SERVER.benezralaw.com” xmlns:stream=“http://etherx.jabber.org/streams” xml:lang=“en” version=“1.0”>

[14:10:55 JABBER_1] Entering main recv loop

[14:10:55 JABBER_1] (03F91C58:460) Data received

<?xml version='1.0' encoding='UTF-8'?><stream:stream xmlns:stream=“http://etherx.jabber.org/streams” xmlns=“jabber:client” from=“be-server” id=“e0601fc” xml:lang=“en” version=“1.0”>

[14:10:55 JABBER_1] recvResult = 181

[14:10:55 JABBER_1] bytesParsed = 181

[14:10:55 JABBER_1] (03F91C58:460) Data received

stream:featuresDIGEST-MD5PLAINANONYMOUSCRAM-MD5</mech anism>zlib</stream:features>

[14:10:55 JABBER_1] recvResult = 486

[14:10:55 JABBER_1] bytesParsed = 486

[14:10:55 JABBER_1] Requesting TLS

[14:10:55 JABBER_1] (03F91C58:460) Data sent

[14:10:55 JABBER_1] (03F91C58:460) Data received

[14:10:55 JABBER_1] recvResult = 50

[14:10:55 JABBER_1] bytesParsed = 50

[14:10:55 JABBER_1] Starting TLS…

[14:10:55 JABBER_1] (460 BE-SERVER.benezralaw.com) Starting SSL negotiation

[14:10:56 JABBER_1] (460 BE-SERVER.benezralaw.com) SSL negotiation successful

[14:10:56 JABBER_1] Stream will be initialized after successful StartTLS

[14:10:56 JABBER_1] Stream is initializing after successful StartTLS

[14:10:56 JABBER_1] (03F91C58:460) Data sent

<?xml version="1.0" encoding="UTF-8"?><stream:stream xmlns=“jabber:client” to=“BE-SERVER.benezralaw.com” xmlns:stream=“http://etherx.jabber.org/streams” xml:lang=“en” version=“1.0”>

[14:10:56 JABBER_1] (03F91C58:460) Data received

<?xml version='1.0' encoding='UTF-8'?><stream:stream xmlns:stream=“http://etherx.jabber.org/streams” xmlns=“jabber:client” from=“be-server” id=“e0601fc” xml:lang=“en” version=“1.0”>stream:featuresDIGEST-MD5PLAINANONYMOUSCRAM-MD5</mech anism>zlib</stream:features>

[14:10:56 JABBER_1] recvResult = 606

[14:10:56 JABBER_1] bytesParsed = 181

[14:10:56 JABBER_1] bytesParsed = 425

[14:10:56 JABBER_1] Server compression available

[14:10:56 JABBER_1] Zlib init…

[14:10:56 JABBER_1] Requesting Zlib compression

[14:10:56 JABBER_1] (03F91C58:460) Data sent

zlib

[14:10:56 JABBER_1] (03F91C58:460) Data received

<compressed xmlns='http://jabber.org/protocol/compress’/>

[14:10:56 JABBER_1] recvResult = 57

[14:10:56 JABBER_1] bytesParsed = 57

[14:10:56 JABBER_1] Compression confirmed

[14:10:56 JABBER_1] Starting Zlib stream compression…

[14:10:56 JABBER_1] Stream will be initialized after successful Zlib init

[14:10:56 JABBER_1] Stream is initializing after successful Zlib init

[14:10:56 JABBER_1] Deflate: Z_OK

[14:10:56 JABBER_1] (ZLIB) Data sent

<?xml version="1.0" encoding="UTF-8"?><stream:stream xmlns=“jabber:client” to=“BE-SERVER.benezralaw.com” xmlns:stream=“http://etherx.jabber.org/streams” xml:lang=“en” version=“1.0”>

===OUT: 181(143) bytes

[14:10:56 JABBER_1] Inflate: Z_OK

[14:10:56 JABBER_1] (ZLIB) Data received

<?xml version='1.0' encoding='UTF-8'?><stream:stream xmlns:stream=“http://etherx.jabber.org/streams” xmlns=“jabber:client” from=“be-server” id=“e0601fc” xml:lang=“en” version=“1.0”>stream:featuresDIGEST-MD5PLAINANONYMOUSCRAM-MD5</mech anism></stream:features>

===IN: 514(269) bytes

[14:10:56 JABBER_1] recvResult = 514

[14:10:56 JABBER_1] bytesParsed = 181

[14:10:56 JABBER_1] bytesParsed = 333

[14:10:56 JABBER_1] Deflate: Z_OK

[14:10:56 JABBER_1] (ZLIB) Data sent

===OUT: 71(65) bytes

[14:10:56 JABBER_1] Inflate: Z_OK

[14:10:56 JABBER_1] (ZLIB) Data received

cmVhbG09ImJlLXNlcnZlciIsbm9uY2U9IjkxZ2 ZzdWUwcUxxTTBkeFRDTU93cVQybXhUM2ZUUWdkakFrcEt3QWsiLHFvcD0iYXV0aCIsY2hhcnNldD11dG YtOCxhbGdvcml0aG09bWQ1LXNlc3M=

===IN: 212(159) bytes

[14:10:56 JABBER_1] recvResult = 212

[14:10:56 JABBER_1] bytesParsed = 212

[14:10:56 JABBER_1] Deflate: Z_OK

[14:10:56 JABBER_1] (ZLIB) Data sent

dXNlcm5hbWU9IlN0ZXBoYW5pZS5MeW9ucyIscm VhbG09ImJlLXNlcnZlciIsbm9uY2U9IjkxZ2ZzdWUwcUxxTTBkeFRDTU93cVQybXhUM2ZUUWdkakFrcE t3QWsiLGNub25jZT0iOGEzM2FhZTJlMDM2YmExNDVhM2MxNTVmOWM0YjJmYzAiLG5jPTAwMDAwMDAxLH FvcD1hdXRoLGRpZ2VzdC11cmk9InhtcHAvQkUtU0VSVkVSLmJlbmV6cmFsYXcuY29tIixjaGFyc2V0PX V0Zi04LHJlc3BvbnNlPTkyNThhZjg3OGIwZDBhZGEzMzk4NzNiODQwZWI3Yjk1

===OUT: 402(303) bytes

[14:10:56 JABBER_1] Inflate: Z_OK

[14:10:56 JABBER_1] (ZLIB) Data received

===IN: 77(33) bytes

[14:10:56 JABBER_1] recvResult = 77

[14:10:56 JABBER_1] bytesParsed = 77

[14:10:56 JABBER_1] Deflate: Z_OK

[14:10:56 JABBER_1] (ZLIB) Data sent

AFN0ZXBoYW5pZS5MeW9ucwBiZW5lenJh

===OUT: 104(37) bytes

[14:10:56 JABBER_1] Inflate: Z_OK

[14:10:56 JABBER_1] (ZLIB) Data received

===IN: 77(9) bytes

[14:10:56 JABBER_1] recvResult = 77

[14:10:56 JABBER_1] bytesParsed = 77

[14:10:56 JABBER_1] Deflate: Z_OK

[14:10:56 JABBER_1] (ZLIB) Data sent

U3RlcGhhbmllLkx5b25zQEJFLVNFUlZFUi5iZW5lenJhbGF3LmNvbQBTdGVwa GFuaWUuTHlvbnMAYmVuZXpyYQ==

===OUT: 160(90) bytes

[14:10:56 JABBER_1] Inflate: Z_OK

[14:10:56 JABBER_1] (ZLIB) Data received

===IN: 77(9) bytes

[14:10:56 JABBER_1] recvResult = 77

[14:10:56 JABBER_1] bytesParsed = 77

[14:10:56 JABBER_1] IqAdd id=1, proc=0, func=0x1263dbba

[14:10:56 JABBER_1] Deflate: Z_OK

[14:10:56 JABBER_1] (ZLIB) Data sent

Stephanie.Lyons

===OUT: 105(81) bytes

[14:10:56 (NULL)] SSL failure recieving data (10053)

[14:10:56 JABBER_1] Netlib_Recv() failed, error=10053

[14:10:56 JABBER_1] recvResult = 0

[14:10:56 JABBER_1] Thread ended: type=0 server=‘BE-SERVER.benezralaw.com

[14:10:56 JABBER_1] (03F91C58:460) Connection closed internal

[14:10:56 JABBER_1] (03F91C58:4294967295) Connection closed

[14:10:56 JABBER_1] Exiting ServerThread

[14:10:57 JABBER_1] SetAwayMsg called, wParam=40072 lParam=Yep, I’m here.

[14:11:01 (NULL)] A service function ‘ICQ/AddServerContact’ was abnormally deleted because module ‘C:\Program Files\Miranda IM\Plugins\icq.dll’ didn’t released it

[14:11:01 (NULL)] A service function ‘ICQ/ReqAuth’ was abnormally deleted because module ‘C:\Program Files\Miranda IM\Plugins\icq.dll’ didn’t released it

[14:11:01 (NULL)] A service function ‘ICQ/GrantAuth’ was abnormally deleted because module ‘C:\Program Files\Miranda IM\Plugins\icq.dll’ didn’t released it

[14:11:01 (NULL)] A service function ‘ICQ/RevokeAuth’ was abnormally deleted because module ‘C:\Program Files\Miranda IM\Plugins\icq.dll’ didn’t released it

[14:11:01 (NULL)] A service function ‘ICQ/ShowXStatusDetails’ was abnormally deleted because module ‘C:\Program Files\Miranda IM\Plugins\icq.dll’ didn’t released it

Try disabling firewall to check whether it works that way.

Both client and server firelwalls are disabled and I also added the rules to allow miranda on any port for the PC and to allow openfire on the server for any port. That’s why I’m confused.

However I just noticed this in the log "[14:10:55 JABBER_1] _xmpp-client._tcp.BE-SERVER.benezralaw.com not resolved"

Maybe tonight I will remote inot the client and either add teh server FQDN to the hosts file or use the IP to see if that works. ****


I also tried getting the client online using the IP but that did not work either.