From af582eb30b76e9a3c0870fd197b8ea3ea5660400 Mon Sep 17 00:00:00 2001 From: MrBrass Date: Wed, 7 Oct 2015 18:55:54 -0400 Subject: [PATCH] Added feeds.ini and peering documentation --- doc/feeds.md | 130 ++++++++++++++++++++++++++++++++++++++++++++++++- doc/peering.md | 52 -------------------- 2 files changed, 128 insertions(+), 54 deletions(-) delete mode 100644 doc/peering.md diff --git a/doc/feeds.md b/doc/feeds.md index 7e7413e..73cedd2 100644 --- a/doc/feeds.md +++ b/doc/feeds.md @@ -1,3 +1,129 @@ -# feeds.ini +# feeds.ini # -todo: document this file +## Peering ## + +In order to actually be distributed, you need another person to sync posts with, otherwise what's the point right? + +Right now peering information is private, there is no link level authenticatio (yet) so everything is done via either a vpn tunnel or a tor hidden service. + +### Peering over tor ### + +Install tor + + apt-get install tor + +Make a tor hidden service point from outside port 119 to port 1199 +Add to /etc/tor/torrc: + + HiddenServiceDir /var/lib/tor/nntp_feed + HiddenServicePort 119 127.0.0.1:1199 + +restart/reload tor then + + cat /var/lib/tor/nntp_feed/hostname + +This is your in feed address + +Then to peer with someone over tor add this to you feeds.ini + + [feed-PeersOnionAddress.onion:119] + proxy-type=socks4a + proxy-host=127.0.0.1 + proxy-port=9050 + + [PeersOnionAddress.onion:119] + overchan=1 + ctl=1 + + +### Peering over cjdns ### + +Set up cjdns, read more [here](https://github.com/cjdelisle/cjdns/blob/master/doc/configure.md#connection-interfaces) + + git clone https://github.com/cjdelisle/cjdns + cd cjdns && ./do + ./cjdroute --genconf >> cjdroute.conf + ./cjdroute < cjdroute.conf + +Get your ipv6 address for cjdns + + ip addr show tun0 + +Edit srnd.ini to bind nntp on that ipv6 address, make sure to use the square brances `[` and `]` + + [nntp] + ... + bind=[xxxx:xxxx:xxxx:xxx:xx....]:1199 + + +Say you have 2 friends at fc33:3:3::aadd and fc03:9f:123::a3df. right now feeds.ini can't take raw ipv6 addresses so add them to `/etc/hosts` + + # add these lines to /etc/hosts + fc33:3:3::aadd bob + fc03:9f:123::a3df charlie + +Then add to feeds.ini the following: + + + [feed-bob] + proxy-type=none + + [bob] + overchan=1 + ctl=1 + + [feed-charlie] + proxy-type=none + + [charlie] + overchan=1 + ctl=1 + + +## Options ## + +#### You need one connection and one settings clock for each connection #### + +Here is an example entry in feeds.ini + + [feed-aabbccddeeff1122.onion:119] + proxy-type=socks4a + proxy-host=127.0.0.1 + proxy-port=9050 + + [aabbccddeeff1122.onion:119] + overchan=1 + ano.paste=0 + ctl=1 + +But what does it mean? + + [feed-aabbccddeeff1122.onion:119] + +Connection settings for a peer + + proxy-type=socks4a + proxy-host=127.0.0.1 + proxy-port=9050 + +Proxy settings, straight forward. Supported proxy types are `socks4a` and `none` + + [aabbccddeeff1122.onion:119] + +nntp synchronization settings + + overchan=1 + +Sync all boards, use + + overchan.bad=0 + +to prevent certain boards from syncing with certain peers. It can be used to keep bad boards out or keep exclusive boards in + + ano.paste=0 + +This WILL be the nntpchan pastebin, but it's not implimented yet + + ctl=1 + +Allows you to recieve moderation notifications from other boards, it's also used for decentralized moderation \ No newline at end of file diff --git a/doc/peering.md b/doc/peering.md deleted file mode 100644 index f794335..0000000 --- a/doc/peering.md +++ /dev/null @@ -1,52 +0,0 @@ -## peering with other nodes ## - -In order to actually be distributed, you need another person to sync posts with, otherwise what's the point right? - -Right now peering information is private, there is no link level authenticatio (yet) so everything is done via either a vpn tunnel or a tor hidden service. - -### Peering via cjdns vpn tunnel ### - -Set up cjdns, read more [here](https://github.com/cjdelisle/cjdns/blob/master/doc/configure.md#connection-interfaces) - - git clone https://github.com/cjdelisle/cjdns - cd cjdns && ./do - ./cjdroute --genconf >> cjdroute.conf - ./cjdroute < cjdroute.conf - -Get your ipv6 address for cjdns - - ip addr show tun0 - -Edit srnd.ini to bind nntp on that ipv6 address, make sure to use the square brances `[` and `]` - - [nntp] - ... - bind=[xxxx:xxxx:xxxx:xxx:xx....]:1199 - - -say you have 2 friends at fc33:3:3::aadd and fc03:9f:123::a3df. right now feeds.ini can't take raw ipv6 addresses so add them to `/etc/hosts` - - # add these lines to /etc/hosts - fc33:3:3::aadd bob - fc03:9f:123::a3df charlie - -then add to feeds.ini the following: - - - [feed-bob] - proxy-type=none - - [bob] - overchan.*=1 - ctl=1 - - [feed-charlie] - proxy-type=none - - [charlie] - overchan.*=1 - ctl=1 - -then restart srndv2 - -**TODO:** firewalling