Once weechat is install, launch it.
$ weechat
Add a Freenode server
Add a freenode server without SSL, we enable it later.
/server add freenode chat.freenode.net/6667 -autoconnect
Change the nickname by default, it’s used by freenode to create your account…
/set irc.server.freenode.nicks ninja
Connect to freenode…
/connect freenode
Create your freenode account
You have to create an account, this is a restriction to use TOR. And yes, anonyma is take a hit…
You can create a password with pwgen
like this: pwgen -sy 24 1
.
/msg NickServ REGISTER password ninja@ninja.co
You will receive in your mail box, a command line to enter bellow like:
/msg NickServ VERIFY REGISTER ninja ijgimopaoijv
Next, to enable TOR, we will using the SASL
method.
Enable SASL authentication
Create the new key. ref
$ mkdir ~/.weechat/certs
$ cd ~/.weechat/certs
$ openssl ecparam -genkey -name prime256v1 -out ~/.weechat/certs/ecdsa.pem
Find the fingerprint.
$ openssl ec -noout -text -conv_form compressed -in ~/.weechat/certs/ecdsa.pem | grep '^pub:' -A 3 | tail -n 3 | tr -d ' \n:' | xxd -r -p | base64
e084219c214d391a8fd75cdbb891b5b966515db7
Into weechat, we enable SASL.
/msg nickserv set pubkey e084219c214d391a8fd75cdbb891b5b966515db7
/set irc.server.freenode.sasl_mechanism ecdsa-nist256p-challenge
/set irc.server.freenode.sasl_username "ninja"
/set irc.server.freenode.sasl_key "%h/certs/ecdsa.pem"
/reconnect freenode
You should be reconnect with your username.
Tor
Finally, to use tor. (tor should run) ref
/set irc.server.freenode.addresses "ajnvpgl6prmkb7yktvue6im5wiedlz2w32uhcwaamdiecdrfpwwgnlqd.onion"
/proxy add tor socks5 127.0.0.1 9050
/set irc.server.freenode.proxy "tor"
You have to disable ssl_verify
who doesn’t work with TOR.
/set irc.server.freenode.ssl_verify off
/reconnect freenode
Enhance your privacy
Add somes settings bellow to weechat. detail from faq
/set irc.server_default.msg_part ""
/set irc.server_default.msg_quit ""
/set irc.ctcp.clientinfo ""
/set irc.ctcp.finger ""
/set irc.ctcp.source ""
/set irc.ctcp.time ""
/set irc.ctcp.userinfo ""
/set irc.ctcp.version ""
/set irc.ctcp.ping ""
/plugin unload xfer
/set weechat.plugin.autoload "*,!xfer"
And save all our works:
/save
Reconnect to freenode as a ninja :)
/reconnect freenode
Troubleshooting
Please, post an issue to github.