I still don’t know what happened with my ejabberd setup but the thing broke a week ago and I didn’t even notice 🤦♂️️. I tried messaging my book club group and when nobody responded for hours at end, that’s when I noticed that I can’t see anybody online and Dino was failing to add a matrix bridge. Quick check with Marc over fediverse confirmed that something was messed up as I could receive his message but he couldn’t see anything from me. And for the past week, I was focused on hardening up my server and nginx configuration. I didn’t even touch anything remotely related to ejabberd but here I was.
In an attempt to fix the issue quickly I tried stopping and starting the service and even rebooting my server. I dived into ejabberd logs too but it was all greek to me. What good is dumping everything that the program generates without any context? Perhaps a wiser person than me could make sense of what was being logged but I didn’t have any patience left by last night. So before going to bed, I made a mental note to nuke ejabberd and start fresh with Prosody in the morning. It’s much lighter than ejabberd and I wonder why didn’t I use that over ejabberd in the first place. Anyway, with Prosody there’s a configuration file I needed to edit with my server settings and open up two different ports than before. Same with ejabberd where I edit a YML file with the settings. While with ejabberd, I had to copy my SSL certificates over and keep it with the YML file location, Prosody has an import functionality to extract the certificates from its original location and also includes a flag for certbot to renew the certificates automatically. Handy!
After the configuration, all it took was to kill the running ejabberd service and startup Prosody service and I was back online. Hope this stays up forever. Both the applications use the same port to communicate and if the security measures I took on the server somehow affected the ports, it should have affected Prosody as well. Maybe there was some other way to find out what went down but I want stuff to work for me and not make me work for it.
Day 64 - Join Me in #100DaysToOffload