7b20 IRC - Telecomix Crypto Munitions Bureau

IRC

From Telecomix Crypto Munitions Bureau

Jump to: navigation, search

IRC is an ancient protocol. It is mainly described in RFC1459. Also RFC2810, RFC2811, RFC2812 and RFC2813 exists. But they are just requests for comments, not actual protocol definitions. So they are often not followed. each IRC network follows its own protocols.

The IRC protocol is from 1988, and is simple. The "routing protocol" for messages allows only for tree-shaped networks, so no loops may exist. This results in netsplits, when servers fail.

Contents

[edit] IRC servers

[edit] Telecomix IRC network

More information can be found here.

The following is slightly outdated. Use irc.telecomix.org for automagical success.

  • irc.telecomix.org (round robin)
  • marmot.irc.telecomix.org
  • solarworks.irc.telecomix.org
  • chameleon.irc.telecomix.org
  • weasel.irc.telecomix.org
  • irc.datalove.me

also

  • irc.telecomix.i2p
  • 7q7oxh5x3hfvi2e5.onion
  • weoq7a4exzcyaasj.onion
  • 23grsgpne2xxljzw.onion
  • ckdat4ftkiskrojq.onion:7001 (points to irc.telecomix.i2p)

also

  • Crayfish - telecomix 100% cipher-only IRC (mostly separate network)

Rules

laws

1. Do Not Obey
0. GOTO LINE 3
EOF

policies

  • No one is allowed to attach an IRC server to the network without first meeting with other oper AFK.
  • Servers should be put at locations that are somewhat physically secure. No VPSes or cloud-solutions.
  • Never identify anyone unless they themselves ask for it.
  • There seems to be no other policies.

recommendations

Telecomix quirks

  • Runs ngircd, future versions
  • Most (all?) servers has mandatory hostmask cloak

[edit] Nice IRC clients

[edit] TOR & IRC

  • irssi with TOR

tor+irssi+ssl+socat+irc.telecomix.org (easiest way)

This method is simple and requires once command to get connected over tor with ssl (not including starting irssi).

Open Two terminals. In terminal one we will use socat to open port 4242 on the localhost (127.0.0.1) which will point at irc.telecomix.org on port 6697 over your tor router running on localhost port 9050 (I swear this is the easiest way).

In terminal One:

:~$ socat TCP4-LISTEN:4242,fork SOCKS4A:localhost:irc.telecomix.org:6697,socksport=9050


In terminal Two:

:~$ irssi

Now, in terminal Two, you have irssi started. to connect to telecomix irc (over SSL) type:

[[Status]] /connect -ssl localhost 4242

BAM! You are connected to irc.telecomix.org over SSL over tor with irssi (: If you are connecting to the .onion address (instead of irc.telecomix.org) use the .onion address instead of irc.telecomix.org in the above socat command.

Note: Anytime you use irssi (or socat) you should probably use screen so that you do not need to leave the terminals open and so that you can get back to the terminals when you close them. Google screen, or ask in irc, for more about screen.

torify or proxychains with irssi

Since IRC over TOR is a hidden service, and thus there is no exit node to deal with, SSL encryption, though possible, is not necessary. It is easy to connect to IRC over TOR using the address above. For example, if you are using Linux and the TOR server is running on your localhost, you can open irssi over a TOR connection by typing the following into terminal:

:~$ torify irssi

Then in irssi, connect to the IRC server the way you normally would using the above TOR address:

[[Status]] /server 7q7oxh5x3hfvi2e5.onion 

Note: SSL is available for IRC when using the above TOR address, however, irssi has trouble handling the SSL certificate when used with torify. Torify and irssi can be made to work with extra configurations which are not covered here. If you are using irssi and you are connecting to the above TOR address over a TOR transparent proxy you should have no problem using SSL encryption with the -ssl flag. Again, SSL is not required for an IRC server running as a hidden service on TOR.

TOR+irssi+SSL+irc.telecomix.org (another way):

Here we use Proxychains with tor, this will not work with the .onion address. Proxychains can be used instead of torify in the above example. For Linux users, proxychains is available in most package repositories, i.e., the Ubuntu universe repository. Once you have proxychains installed, you can run the following commands in terminal to connect to irc.telecomix.org over TOR using an SSL connection:

:~$ proxychains irssi

Then in irssi:

[[Status]] /server -ssl irc.telecomix.org

Note: The above proxychains example assumes the TOR router is on the localhost (127.0.0.1). If you are using a TOR relay that is not on your localhost host, you need to add the IP address of your TOR relay to /etc/proxychains.conf.

Erroneous nickname Error:

If irssi fails to connect because of a "Erroneous nickname", this usually means that your nick is too long. By default, irssi sets your nick to the username of computer. You can change the default nickname to whatever you wish by editing ~/.irssi/config. You will find the following near the bottom of the /home/username/irssi/config file:

core = {
    real_name = "What";
    user_name = "Ever";
    nick = "New_Nick";
  };

Note You will not be able to login if the nick above is too long. The max length is nine characters.


TOR+irssi+SSL+socat OpenBSD

Use dsocks, the SOCKS client wrapper for BSD; when using irssi on the same host that runs tor, first run:

socat TCP4-LISTEN:4243,fork SOCKS4A:localhost:irc.telecomix.org:9999,socksport=9050 &

Start irssi with dsocks:

dsocks-torify.sh irssi

Point irssi to the appropriate address and port:

/connect -SSL localhost 4243


  • xchat with TOR

Using xchat to connect to the above TOR address is very easy. First you need to tell xchat to use your TOR server. You can do this using the drop down menu, click on Settings>PreferenceNetwork>Network setup. You will then see the Under Proxy Server settings, configure as followed:

Hostname:      TOR server      (localhost or TOR Relay address)
Port:          TOR server port (i.e., 9050)
Type:          Socket5         (or Socket4 if you do not have Socket5 setup)
Use proxy for: All Connections (this will work with 'IRC server only')

You can then connect to the IRC server the way you normally would using the above TOR address above, i.e, using the Network list or the /server command. You can also tell xchat to use SSL and to accept the SSL certificate for more encryption if desired.

[edit] I2P & IRC

You need to have already i2p running, if it's not the case, check https://cryptoanarchy.org/wiki/I2P#Installing_i2p

Now we need to create a tunnel to go on the IRC through i2p, so go on this page http://127.0.0.1:7657/i2ptunnel/ and edit the tunnel for IRC (or create a new one). Check that the port is 6668 and you can access it through 127.0.0.1 and put as destination

.ogLZQpnNgs514P0hp-vwPU3iHhKUymyotVxyX7fC8-a4dFAUXx~HUR0ezvkb3RVI3Snvh~yl7QJHzs3hIy2jjZmo~rlZLmtpEVgu1IvrMYusR3KQZ-1Tdfr3JftxA~dr3vmmro3hIhR18xRWA87A~y2VyEGGw4how-EEYS~VT6hnxoJ4FQztvQF0in2A70fCQ1obVYD3lBL~Jn9VV-~tgjohOZHSkIA4yCD80~QfhHa0g4GqJRgQry5fEjAvc1h5owsNyQ8siU3NfldvTd4Tj~dRuD3F91Svk6Wepp~IbPyIKgWPDGWW3RQWFoyDyHjwLI8IdPg0Io8Q4oRgTcA4JJaaHop2WzV7E-thM41h8evo~jO-XDzfW0DFtFTRRK7use5cYLbNlRXVlHQCe7qHALYi3JkH6wBsW5o8irHFMiGYe-YmGEwVRRQ0p2j-tRVJC4jYEOTSTO2Fr~hAUxramtah9wKOd05bSIOYxQxb0~0fGsw3gDMBCZW8PrhFUn3LAAAA

Then go on irssi and type

 /connect localhost 6668

You should have

 Irssi v0.8.15 - http://www.irssi.org
12:49:08 -!- - For any questions, join #telecomix!
12:49:08 -!- -
12:49:08 -!- - ###################################################
12:49:08 -!- - ###################################################
12:49:08 -!- - ###            #####################            ###
12:49:08 -!- - ###         ###########################         ###
12:49:08 -!- - ###       ###########         ###########       ###
12:49:08 -!- - ###     ##########               ##########     ###
12:49:08 -!- - ###    #########       #####       #########    ###
12:49:08 -!- - ###   ########       #########       ########   ###
12:49:08 -!- - ###  ########       ###     ###       ########  ###
12:49:08 -!- - ### #######        ###       ###        ####### ###
12:49:08 -!- - ##########        ###    #    ###        ##########
12:49:08 -!- - #########         ###  #####  ###         #########
12:49:08 -!- - ########         ####   ###   ####         ########
12:49:08 -!- - ########         ####  #   #  ####         ########
12:49:08 -!- - #######           ###         ###           #######
12:49:08 -!- - #######           ###         ###           #######
12:49:08 -!- - #######            ###       ###            #######
12:49:08 -!- - ######              ####   ####              ######
12:49:08 -!- - ######          #    ###   ###    #          ######
12:49:08 -!- - ######          ########   ########          ######
12:49:08 -!- - #####           ########   ########           #####
12:49:08 -!- - #####   ######           #           ######   #####
12:49:08 -!- - ######     ######       ###       ######     ######
12:49:08 -!- - ######   ######        #####        ######   ######
12:49:08 -!- - ######       #######  #######  #######       ######
12:49:08 -!- - ####### #####        #########        ##### #######
12:49:08 -!- - #######  ########   ###########   ########  #######
12:49:08 -!- - #######     #####  #############  #####     #######
12:49:08 -!- - ########          ###############          ########
12:49:08 -!- - ########  #####                     #####  ########
12:49:08 -!- - #########    ######   ##   ##   ######    #########
12:49:08 -!- - ##########           ##     ##           ##########
12:49:08 -!- - ### #######       ####       ####       ####### ###
12:49:08 -!- - ###  ########    ###           ###    ########  ###
12:49:08 -!- - ###   ########  ###             ###  ########   ###
12:49:08 -!- - ###    #########                   #########    ###
12:49:08 -!- - ###     ##########               ##########     ###
12:49:08 -!- - ###       ###########         ###########       ###
12:49:08 -!- - ###         ###########################         ###
12:49:08 -!- - ###            #####################            ###
12:49:08 -!- - ###################################################
12:49:08 -!- - ###################################################
12:49:08 -!- -
12:49:08 -!- - This is cthulhu, hosted in the house of R'lyeh.
12:49:08 -!- -    _--------.
12:49:08 -!- -   /    ~~~~~~\
12:49:08 -!- -  (_   ~~~@~~@|    Ph'nglui mglw'nafh Cthulhu
12:49:08 -!- -   \   ~~//|\\\  | R'lyeh wgah'nagl fhtagn
12:49:08 -!- -    \   \|||/\\\_/
12:49:08 -!- -    /   /|//_/|/__
12:49:08 -!- -   /    \_\ \|\|
12:49:08 -!- -

12:49:08 -!- - Win! You're all ciphered up!
12:49:08 -!- End of MOTD command
12:49:09 -!- Mode change [+i] for user {your_user_name}

Check also http://www.i2p2.de/debian

[edit] netcat & IRC

To debug stuff or just be happy in your terminal, use netcat! :D -- it also works with telnet

to connect: nc osiris.irc.telecomix.org 6667

To login, you need to send two commands. NICK and USER.

NICK haxxor
USER dkw 8 d :ahweawt

You can type pretty much whatever you want. The USER command needs some number (8) and flags (d), then a space followed by a colon, followed by the "your real name". Notice that the number and flag i used here is 100% fucked up. But it works :)

[edit] typing commands into nc

WHAT?!?!                      What to type
joining channel               JOIN #channel
saying something in channel   PRIVMSG #channel :something
send private message to user  PRIVMSG user :private message :) hai hai
fuck with people              PRIVMSG #channel :^AVERSION                  (^A is 0x01)
oldschool communication       NOTICE #channel :hai hai

Consult the RFCs for moar commands. Also notice that most of the time you dont need to be inside a channel to type stuff into it.

[edit] IRC commands

they look something like this:

:osiris.irc.telecomix.org 376 netcat :End of MOTD command    - server messages sometimes start with colon
:user!username@hostname PRIVMSG #channel :message            - user send "message" to #channel
PING :osiris.irc.telecomix.org                               - YOU NEED TO RESPOND TO MESSAGES LIKE THIS
PONG osiris.irc.telecomix.org                                - this is what your response should look like
ERROR :Ping timeout: 120 seconds                             - you failed.

[edit] Ping timeout?

You occasionally need to respond to the servers PING requests. You should probably just write PONG followed by whatever followed the PING and hit enter. If you do not do that, the server will think that your TCP connection has died and drop the connection. In some few cases you will also have to reply with the number that comes with PING. Figure it out yourself :P

[edit] Logs

The likehood that someone is logging a public chat room increases with the number of participants.

Memorable logs:

Personal tools
< 7 /html> 0