Znc is an advanced internet relay chat (IRC) bouncer/proxy/relay. Znc can be used to run irc as a service in the background so closing terminals, and restarting X do not result in join/part messages to IRC channels you're chatting in.
To add init.d scripts:
root # echo "net-irc/znc daemon" >> /etc/portage/package.use/znc
For sasl authentication:
root # echo "net-irc/znc sasl" >> /etc/portage/package.use/znc
root # emerge net-irc/znc
Run the emerge config command to setup znc.
root # emerge --config znc
Set your ssl certificates up, and set your irc client to accept self signed certificates. ie accept invalid certificates.
Set bind address to 0.0.0.0 so the system can access the web, and connect to real irc networks.
Set the address/domain to 127.0.0.1 and port to 45654.
Set the web interface module to load only. the web interface is located at the ip/domain & port specified, as in the irc proxy address & port. if using ssl its at https://127.0.0.1:45654 if not its http://127.0.0.1:45654
Use the web interface to set the client up.
SSL connections to upstream irc servers require the port number be prepended with a plus symbol.
eg Adding server [irc.freenode.net +6697]
for ssl auth see http://wiki.znc.in/Cert
To automatically be identified before joining channels requires either SSL auth certificates, or SASL. make sure you're using SSL before configuring SASL because it will send passwords in plain text if not.
Set the username, nickname, ident, and real name to your registered nick.
Possibly just tick the box & "set MyUsername pa$$w0rd"
root # rc-update add znc default root # rc
Connect to localhost as if its an irc network.