How to connect to Libera.chat from DigitalOcean

Posted by Jan Henning Thorsen on 23. Dec, 2021.

Moving to DigitalOcean was quite painless for most of the users, since they had already made an account on the libera.chat server. Unfortunately, the Convos bot and I had not set up our accounts properly.

Already registered on libera.chat

Since my user was already registered I just had to replace my legacy "On-connect commands" with SASL setup in my connection settings. Here is a screenshot of my previous "On-connect commands":

Picture of example on connect command

And here is a screenshot of the SASL setup, found under "Authentication settings": (Username should be the nickname you have registered, which is the default since Convos v6.43)

Picture of example SASL setup

Register and connect to libera.chat

Note that the following steps has nothing to do with the bot really. It applies to any user.

The bot on the other hand was a bit more difficult, since it was not registered: Not being registered means that you cannot connect, meaning you cannot register, since those commands can only be run after you have successfully connected.

So to register, I started Convos (you can use any IRC client) locally on my personal computer, logged in to libera.chat and registered the bot nick:

  1. Made a new connection with these settings:

    Host and port:            irc.libera.chat:6697
    Nickname:                 convos_bot
    Secure connection (TLS):  Yes
    Verify certificate (TLS): Yes
  2. When successfully connected, I ran the command below to register:

    /msg NickServ REGISTER SUPERSECRETPASSWORD [email protected]

    And NickServ replied back:

    An email containing nickname activation instructions has been sent to [email protected]. Please check the address if you don't receive it. If it is incorrect, DROP then REGISTER again. If you do not complete registration within one day, your nickname will expire.

  3. The email contained a VERIFY command I had to enter in my IRC client (Convos). Something like this:

    /msg NickServ VERIFY REGISTER convos_bot SOME_VERIFICATION_CODE
  4. After getting a message back from NickServ that the nick was registered, I could disconnect and remove the temporarily connection from my computer, and then go back to the Convos instance running on DigitalOcean and follow the steps in "Already registered on libera.chat" above.

Using SASL External

Note that the following steps require Convos v6.44

If you prefer using SASL External then you have to setup CertFP. This is pretty easy, since Convos automatically generates unique TLS cert and key for every connection. This means that after you have connected, you can simply run the command below to add you certificate fingerprint:

/msg NickServ CERT ADD

Once that is done, you can go back to your connection settings and change "SASL authentication mechanism" to "External".

Picture of SASL external config

Conclusion

It's quite annoying that you have to create an account before connecting from a VPS (such as DigitalOcean Droplet). I don't understand how to make this user-friendly for new users. Got any ideas? Please contact us in the #convos channel on libera.chat.

References