From ParabolaWiki
Jump to: navigation, search
WeeChat is a highly extendable and feature rich IRC Client currently under heavy development.
This article provides a further tutorial about to use Weechat accessing Freenode via SSL with Tor.
IRC Channels

Weechat (Wee Enhanced Environment for Chat) is a free Internet Relay Chat client, which is designed to be light and fast. It is released under the terms of the GNU General Public License 3 and has been developed since 2003.

WeeChat comes with a default ncurses interface, but it is possible to use other interfaces (e.g. Glowing Bear, a web frontend). Wikipedia.

1 Installing

 # pacman -S weechat

2 Weechat through Tor proxy

2.1 Create a certificate

 $ openssl req -x509 -new -newkey rsa:8192 -sha512 -days 365 -nodes -out nickname.pem -keyout nickname.pem
Note: It doesn't required fill all fields, eg. you can put your nick when it asks it.
Note: nickname is the nick that you want to use.

2.2 Get the sha1sum's self-signed certificate

 $ openssl x509 -in nickname.pem -outform der | sha1sum -b | cut -d' ' -f1

2.3 Register your nickname

Note: you don't have to do this if you have already an account and just logue it

Enter in weechat

/server add freenode-ssl chat.freenode.net/6667 -ssl -nicks=nickname
/connect freenode
/msg NickServ REGISTER <password> <email>

You will receive a verification mail. You only must follow the instructions.

/msg NickServ identify <password>

2.4 Send sha1sum in your freenode account

/msg NickServ CERT ADD $fingerprint_sha1sum

2.5 Check if fingerprint was added in your account

/msg NickServ CERT LIST

2.6 Add the self-signed certificate to weechat

$ mkdir ~/.weechat/certs
$mv nickname.pem ~/.weechat/certs

2.7 Create the profile

/server add freenode-tor ajnvpgl6prmkb7yktvue6im5wiedlz2w32uhcwaamdiecdrfpwwgnlqd.onion/6697

Add proxy Tor:

/proxy add tor socks5 9050

2.8 Begin to configure

Edit the irc.conf located in ~/.weechat/irc.conf

$ nano ~/.weechat/irc.conf
action = ""
clientinfo = ""
finger = ""
ping = ""
source = ""
time = ""
userinfo = ""
version = ""

freenode-tor.proxy = "tor"
freenode-tor.ssl = on
freenode-tor.ssl_verify = off
freenode-tor.ssl_cert = "%h/certs/nickname.pem"
freenode-tor.sasl_mechanism = external
freenode-tor.sasl_username = "nickname"
freenode-tor.sasl_password = "password" 
freenode-tor.nicks = "nickname,nickname_,nickname__,nickname___,nickname____"
freenode-tor.nicks_alternate = on
freenode-tor.username = "YOURUSERNAME"
freenode-tor.autojoin = "#parabola,#freenode"
freenode-tor.msg_part = ""
freenode-tor.msg_quit = ""
Note: freenode-tor.ssl_verify = off is needed since .onion is not valid for Freenode's SSL cert, causing failure.

Save it and enter in Weechat to check if everything is configured correctly.

2.9 You can connect now through Tor

 /connect freenode-tor
Note: if you want autoconnect to the server you can change the variable autoconnect like this: freenode-tor.autoconnect = on.

3 See also