IRC+ IRCPlus.nlIRC resources & community

IRC Guides · Getting started

TLS certificates for IRC

Intermediate · about 15 min read

TLS (often still called SSL in IRC clients) encrypts traffic between your client and the server so passwords and messages are not sent in clear text on the network path.

As a user (client)

  • Prefer port 6697 (or the network’s published TLS port) over 6667
  • Enable “Use SSL/TLS” / “SSL” for that server entry
  • If the client warns about a certificate, check you have the correct hostname — do not blindly ignore errors on public networks

Example style settings (names vary by client):

Host: irc.example.org
Port: 6697
TLS:  enabled

Bouncers such as ZNC should also be reached over TLS when possible — see ZNC bouncer.

As a server admin (Let’s Encrypt)

For UnrealIRCd or a public ZNC host, use a real certificate (Let’s Encrypt is common):

sudo apt install certbot
sudo certbot certonly --standalone -d irc.example.org
# certificates typically under:
# /etc/letsencrypt/live/irc.example.org/fullchain.pem
# /etc/letsencrypt/live/irc.example.org/privkey.pem

Point UnrealIRCd’s listen/TLS blocks at those files (exact syntax depends on version — see upstream docs). Reload or restart after renewals; certbot renew hooks can rehash the IRCd.

Eggdrop

Modern Eggdrop can connect to IRC with TLS and protect botnet links. Generate certs during install (make sslcert) and enable TLS options in the config. Details: Enabling TLS on Eggdrop.