Signed SSL certificate
If you want to use your StartSSL web server certificate in ZNC, you need to put your private key and the your certificate into ~/.znc/znc.pem. The certificate now gets validated, but the validation fails, since the root certificate is properly not know on your machine (while most browser come built-in with the root certificate). So you either make the certificate known to your machine (and all your ZNC users) or your put the root cert into your znc.pem file like the following:
wget https://www.startssl.com/certs/sub.class1.server.ca.pem -O startssl.com.root.pem
cat startssl.com.root.pem >> znc.pem
It seems the order in your znc.pem must be "key", "own cert" and "root cert". If you get connection errors, make sure you done it right. You can test your certificate without connecting to znc with the following command:
openssl s_client -showcerts -connect domain.tld:6667
Change the domain and port to your domain and znc's listening port.
This is how I created a Positive SSL certificate for znc.
openssl req -nodes -newkey rsa:2048 -keyout myserver.key -out server.csr
- Submit server.csr to PositiveSSL
- Once you receive your SSL Bundle zip, uncompress
cat myserver.key > ~/.znc/znc.pem
cat host_domain_com.crt >> ~/.znc/znc.pem
cat PositiveSSLCA.crt >> ~/.znc/znc.pem
cat UTNAddTrustServerCA.crt >> ~/.znc/znc.pem
That should do it. Drop a note on my Wiki Page if you need any more help.
To use a PositiveSSL, this seemed to be the recipe