diff options
Diffstat (limited to 'contrib/peer2anonet')
-rw-r--r-- | contrib/peer2anonet/README.html (renamed from contrib/peer2anonet/README) | 73 | ||||
-rwxr-xr-x | contrib/peer2anonet/peer2anonet | 101 |
2 files changed, 122 insertions, 52 deletions
diff --git a/contrib/peer2anonet/README b/contrib/peer2anonet/README.html index 1693e7c..b536411 100644 --- a/contrib/peer2anonet/README +++ b/contrib/peer2anonet/README.html @@ -1,27 +1,30 @@ -DESCRIPTION: +<html><body bgcolor="#000000"><font color="white"> +<pre> +<b>DESCRIPTION:</b> peer2anonet is an autoconfiguration utility for setting up core services on AnoNet2. Enjoy :-). -DEPENDS ON: +<b>DEPENDS ON:</b> - quicktun, bird, daemontools(non-deb), bash + quicktun, bird, bash for now. it also installs some cool shit + that you'll use later. -AUTHOR: +<b>AUTHOR:</b> - d3v11 from www.d3v11.ano somtimes, maybe, dunno. + d3v11 from <a href="http://www.d3v11.ano/">www.d3v11.ano</a>, somtimes, maybe, dunno. - REPORT BULLSHIT TO: + <b>REPORT BULLSHIT TO:</b> - IRC: + <b>IRC:</b> /relayhell/d3v11 - EMAIL: + <b>EMAIL:</b> d3v11@d3v11.ano -USAGE: +<b>USAGE:</b> ./contrib/peer2anonet/peer2anonet --configure generate a new local configuration and exit @@ -39,58 +42,66 @@ USAGE: ./contrib/peer2anonet/peer2anonet --configure-dns configures dnscache and tinydns zones -RTFM: + ./contrib/peer2anonet/peer2anonet --update-dns updates tinydns-ano zone - CONFIGURE: +<b>RTFM:</b> + + <b>CONFIGURE:</b> I highly recommend that before you use peer2anonet you ./configure resdb with tinydns support. ./contrib/peer2anonet/peer2anonet --configure - EXAMPLES: + <b>EXAMPLES:</b> Enter your AnoNet subnet: 1.2.3.0 Enter your AnoNet router: 1.2.3.1 Enter your peering ip: 1.2.3.4 Enter your AnoNet asn: 1234 - CONFIGURE PEER: + <b>CONFIGURE PEER:</b> ./contrib/peer2anonet/peer2anonet --configure-peer - KEY PAIRS: + <b>KEY PAIRS:</b> before running peer2anonet to configure peers you can use quicktun to generate keypairs: - quicktun.keypair</dev/random - - CLIENT PORT: - - peer2anonet uses '20' plus the first four digits of your peer's asn - as the `clientport'. + quicktun.keypair < /dev/random - LOCAL_PORT=20${PEERASN:0:4} - - EXAMPLES: + <b>EXAMPLES:</b> Enter your peer's name: d3v11 Enter your peer's remote ip: 11.11.55.1 Enter your peer's peering ip: 1.1.5.2 - Enter your peer's remote port: 201150 + Enter your peer's remote port: 21150 + Enter your local port: 61150 Enter your peer's asn: 1150 Enter your peer's public key: * see KEY PAIRS above * Enter your private key: * see KEY PAIRS above * - RUN CHANGES: + <b>RUN CHANGES:</b> peer2anonet exports the /service/$PEER/run file to /etc/peer2anonet/peers/$PEER/run. If you need to create customizations for peerings then make adjustments to that file. - CONFIGURE DNS: + <b>CONFIGURATION FILES:</b> + + /etc/peer2anonet/peers/$PEER/* contains: + + asn local_port peering_ip pubkey remote_ip remote_port run seckey + + In the event you want to reconfigure a peer's tunnel you can alter the run + file and do `--update', rm run and modify the above files then use `--update', + or reconfigure the peering tunnel altogether with --configure-peer and choose + that peer's name. If you think this is absurd then you're probably right! I + plan on doing something with these files later. + + <b>CONFIGURE DNS:</b> If you did not ./configure resdb with tinydns support then you need to do that before using this function. @@ -101,7 +112,13 @@ RTFM: ./contrib/peer2anonet/peer2anonet --configure-dns - COMPLAIN: + <b>UPDATE DNS:</b> + + After a successful `--configure-dns', you can now + enjoy to use `--update-dns' to bring your AnoNet + domains up to speed. + + <b>COMPLAIN:</b> If this README doesn't tell you what you need to know you can head over to www.d3v11.ano/peering. If that @@ -109,5 +126,5 @@ RTFM: me or shoot both of us in the face. - +</pre></font></body></html> diff --git a/contrib/peer2anonet/peer2anonet b/contrib/peer2anonet/peer2anonet index 4e6aad3..bfa671b 100755 --- a/contrib/peer2anonet/peer2anonet +++ b/contrib/peer2anonet/peer2anonet @@ -21,7 +21,8 @@ USAGE(){ echo -e '\n ./contrib/peer2anonet/peer2anonet --install-daemontools installs daemontools' echo -e '\n ./contrib/peer2anonet/peer2anonet --install-ucspi-tcp installs ucspi-tcp' echo -e '\n ./contrib/peer2anonet/peer2anonet --install-djbdns installs djbdns' - echo -e '\n ./contrib/peer2anonet/peer2anonet --configure-dns configures dnscache and tinydns zones\n' + echo -e '\n ./contrib/peer2anonet/peer2anonet --configure-dns configures dnscache and tinydns zones' + echo -e '\n ./contrib/peer2anonet/peer2anonet --update-dns updates tinydns-ano zone\n' exit 0 } @@ -399,9 +400,13 @@ CONFIGURE_DNS(){ tar cf /etc/peer2anonet/tinydns-root.tar tinydns-root ) fi - (cd /service ; svc -d dnscache tinydns tinydns-ano tinydns-root) - (cd /service ; rm -f dnscache tinydns tinydns-ano tinydns-root) - (cd /services ; rm -rf dnscache tinydns tinydns-ano tinydns-root) + ( + cd /service + svc -d dnscache tinydns tinydns-ano tinydns-root + rm -f dnscache tinydns tinydns-ano tinydns-root + cd /services + rm -rf dnscache tinydns tinydns-ano tinydns-root + ) echo -e '\nCONFIGURE DNS:\n' NICK=`cat conf/git_name` @@ -443,22 +448,13 @@ CONFIGURE_DNS(){ tinydns-conf Gtinydns Gdnslog /services/tinydns $TINYDNS_IP - #echo ".$NICK.ano:$TINYDNS_IP:a:259200" > /services/tinydns/root/data - #echo "=www.$NICK.ano:$GIT_IP:86400" >> /services/tinydns/root/data - #echo "+git.$NICK.ano:$GIT_IP:86400" >> /services/tinydns/root/data - #echo "+$NICK.ano:$GIT_IP:86400" >> /services/tinydns/root/data - #echo "+$TINYDNS_ANO_DOMAIN:$TINYDNS_ANO_IP:3600" >> /services/tinydns/root/data - #echo ".1.in-addr.arpa::$TINYDNS_ANO_DOMAIN" >> /services/tinydns/root/data - #echo ".2.in-addr.arpa::$TINYDNS_ANO_DOMAIN" >> /services/tinydns/root/data - #echo ".ano::$TINYDNS_ANO_DOMAIN" >> /services/tinydns/root/data - #echo ".ntwrk::$TINYDNS_ANO_DOMAIN" >> /services/tinydns/root/data ( - cd /services/tinydns/root - ./add-ns $NICK.ano $TINYDNS_IP - ./add-alias $GIT_DOMAIN $GIT_IP - ./add-alias $TINYDNS_ROOT_DOMAIN $TINYDNS_ROOT_IP - ./add-alias $TINYDNS_ANO_DOMAIN $TINYDNS_ANO_IP - make + cd /services/tinydns/root + ./add-ns $NICK.ano $TINYDNS_IP + ./add-alias $GIT_DOMAIN $GIT_IP + ./add-alias $TINYDNS_ROOT_DOMAIN $TINYDNS_ROOT_IP + ./add-alias $TINYDNS_ANO_DOMAIN $TINYDNS_ANO_IP + make ) tinydns-conf Gtinydns Gdnslog /services/tinydns-root $TINYDNS_ROOT_IP @@ -469,11 +465,66 @@ CONFIGURE_DNS(){ ./scripts/nameserver_autogen/tinydns_tld_datafile > /services/tinydns-ano/root/data ( cd /services/tinydns-ano/root ; make ) - ( cd / ; ln -s /services/dnscache /service/dnscache ) - ( cd / ; ln -s /services/tinydns /service/tinydns ) - ( cd / ; ln -s /services/tinydns-ano /service/tinydns-ano ) - ( cd / ; ln -s /services/tinydns-root /service/tinydns-root ) - ( cd /service ; sleep 5 ; svc -t dnscache tinydns tinydns-ano tinydns-root ) + ( + cd / + ln -s /services/dnscache /service/dnscache + ln -s /services/tinydns /service/tinydns + ln -s /services/tinydns-ano /service/tinydns-ano + ln -s /services/tinydns-root /service/tinydns-root + cd /service ; sleep 5 ; svc -t dnscache tinydns tinydns-ano tinydns-root + ) + } + +INSTALL_DJBDNS(){ + echo -e '\nINSTALL DJBDNS:\n' + [[ $(echo X`which gcc`) == X ]] && echo ' fatal error: cannot find gcc' + [[ $(echo X`which gcc`) == X ]] && exit 1 + [[ $(echo X`which make`) == X ]] && echo ' fatal error: cannot find make' + [[ $(echo X`which make`) == X ]] && exit 1 + [[ $(echo X`which tcpserver`) == X ]] && echo ' fatal error: needs ./contrib/peer2anonet/peer2nonet --install-ucspi-tcp' + [[ $(echo X`which tcpserver`) == X ]] && exit 1 + [[ $(echo X`which svscanboot`) == X ]] && echo ' fatal error: needs ./contrib/peer2anonet/peer2nonet --install-daemontools' + [[ $(echo X`which svscanboot`) == X ]] && exit 1 + cd /usr/local/src + wget http://cr.yp.to/djbdns/djbdns-1.05.tar.gz + gunzip djbdns-1.05.tar + tar -xf djbdns-1.05.tar + cd djbdns-1.05 + echo gcc -O2 -include /usr/include/errno.h > conf-cc + make + make setup check + } + +UPDATE_DNS(){ + if [ -e /etc/peer2anonet/p2a.conf ]; then + source /etc/peer2anonet/p2a.conf + else + CONFIGURE + exit 0 + fi + + [[ $(echo X`which tcpserver`) == X ]] && echo ' fatal error: needs ./contrib/peer2anonet/peer2nonet --install-ucspi-tcp' + [[ $(echo X`which tcpserver`) == X ]] && exit 1 + [[ $(echo X`which svscanboot`) == X ]] && echo ' fatal error: needs ./contrib/peer2anonet/peer2nonet --install-daemontools' + [[ $(echo X`which svscanboot`) == X ]] && exit 1 + + if [ -e /services/tinydns-ano ]; then + ( + cd /services + echo "creating /etc/peer2anonet/tinydns-ano.tar backup" + tar cf /etc/peer2anonet/tinydns-ano.tar tinydns-ano + ) + fi + + echo -e '\nUPDATE DNS:\n' + ./scripts/nameserver_autogen/tinydns_tld_datafile > /services/tinydns-ano/root/data + ( cd /services/tinydns-ano/root ; make ) + + ( + cd /service + sleep 5 + svc -t dnscache tinydns tinydns-ano tinydns-root + ) } @@ -495,6 +546,8 @@ elif [ "$1" == '--install-djbdns' ]; then INSTALL_DJBDNS elif [ "$1" == '--configure-dns' ]; then CONFIGURE_DNS +elif [ "$1" == '--update-dns' ]; then + UPDATE_DNS else USAGE fi |