mtve / xmpp2tor

P2P instant messaging over TOR from any Jabber client

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

P2P instant messaging over TOR, available from any jabber client

it's a single user (but multiple clients are ok) jabber server, that
transparently communicates with other such servers.

it's written in perl and requires AnyEvent.

xmpp server is based on in.jabberd from inetdxtra by R. Rawson-Tetley

how-to use:
- plan your tcp ports, or use default 5222 for xmpp and 5221 for tor service
- create tor hidden service with torrc additional configuration like this:
     HiddenServiceDir </path/>
     HiddenServicePort 5221 <tor_service_addr>:<tor_service_port>
- edit xmpp2tor.conf parameters tor_socks_port, tor_service_name
- run this program like this:
     ./xmpp2tor.pl xmpp2tor.conf &
- connect with your jabber client, usually to 127.0.0.1 with user/pass
- add test contact xaeznmlsmpldjqrq.onion and drop a message
- please report version of your jabber client and any issues

TOR service sequence diagram for https://www.websequencediagrams.com/

 A->B: connect to b_addr.onion:5221
 A->B: "XMPP2TOR CALLME a_addr.onion key1 key2" CR LF
 B->A: disconnect
 B->A: connect to a_addr.onion:5221
 B->A: "XMPP2TOR CALLBACK b_addr.onion key1" CR LF
 A->B: "OK key2" CR LF
 B->A: "OK" CR LF
 A<->B: XMPP messages as netstrings

About

P2P instant messaging over TOR from any Jabber client


Languages

Language:Perl 100.0%