summaryrefslogtreecommitdiffstats
path: root/retiolum/scripts
diff options
context:
space:
mode:
authorChinaman <root@chinaman>2011-09-06 19:47:58 +0200
committerChinaman <root@chinaman>2011-09-06 19:47:58 +0200
commit108f3616e3f4958752d881192ef29e5fc4c2b045 (patch)
tree3c67478c852265219b72e6e1b05467d7065b7ba8 /retiolum/scripts
parentb2d65500160bcdf7abb2bf985f7da582b810e25c (diff)
parentc3bc5a6d16868c121aca780f3109155797b51d76 (diff)
Merge branch 'master' of github.com:krebscode/painload
Diffstat (limited to 'retiolum/scripts')
-rw-r--r--retiolum/scripts/adv_graphgen/Makefile4
-rwxr-xr-xretiolum/scripts/adv_graphgen/parse.py4
-rwxr-xr-xretiolum/scripts/adv_graphgen/sanitize.sh23
-rw-r--r--retiolum/scripts/autostart/Makefile14
-rwxr-xr-xretiolum/scripts/autostart/create-startup.sh22
-rwxr-xr-xretiolum/scripts/tinc_setup/install.sh18
-rw-r--r--retiolum/scripts/tinc_setup/write_channel.py1
7 files changed, 53 insertions, 33 deletions
diff --git a/retiolum/scripts/adv_graphgen/Makefile b/retiolum/scripts/adv_graphgen/Makefile
new file mode 100644
index 00000000..fafac84e
--- /dev/null
+++ b/retiolum/scripts/adv_graphgen/Makefile
@@ -0,0 +1,4 @@
+install:
+ #punani install graphviz
+ echo "add this line to your tinc.conf if you dare:"
+ echo 'GraphDumpFile = |/krebs/retiolum/scripts/adv_graphgen /srv/http/tmp/graphs/'
diff --git a/retiolum/scripts/adv_graphgen/parse.py b/retiolum/scripts/adv_graphgen/parse.py
index 9c2dd051..0bcf42a0 100755
--- a/retiolum/scripts/adv_graphgen/parse.py
+++ b/retiolum/scripts/adv_graphgen/parse.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python2
+#!/usr/bin/python
# -*- coding: utf8 -*-
import sys
@@ -47,6 +47,7 @@ def write_node(k,v):
edges are weightet with the informations inside the nodes provided by
tinc
"""
+
node = " "+k+"[label=\""
node += k+"\\l"
node += "external:"+v['external-ip']+":"+v['external-port']+"\\l"
@@ -57,6 +58,7 @@ def write_node(k,v):
node +="\""
if v['external-ip'] == "MYSELF":
node += ",fillcolor=steelblue1"
+ node +=",group=\""+v['external-ip'].replace(".","")+"\""
node += "]"
print node
diff --git a/retiolum/scripts/adv_graphgen/sanitize.sh b/retiolum/scripts/adv_graphgen/sanitize.sh
index 2febc54c..1dc43bf4 100755
--- a/retiolum/scripts/adv_graphgen/sanitize.sh
+++ b/retiolum/scripts/adv_graphgen/sanitize.sh
@@ -1,17 +1,20 @@
+#!/bin/sh
+HERE=$(dirname `readlink -f $0`)
+TMP=/tmp
GRAPH_SETTER1=dot
GRAPH_SETTER2=circo
-GRAPH_SETTER3=neato
-GRAPH_SETTER3=sfdp
-LOG_FILE=/var/log/everything.log
+GRAPH_SETTER3='neato -Goverlap=prism '
+GRAPH_SETTER4=sfdp
+LOG_FILE=/var/log/syslog
OPENER=/bin/true
sudo pkill -USR2 tincd
sudo sed -n '/tinc.retiolum/{s/.*tinc.retiolum\[[0-9]*\]: //gp}' $LOG_FILE |\
- ./parse.py > retiolum.dot
+ $HERE/parse.py > $TMP/retiolum.dot
-$GRAPH_SETTER1 -Tpng -o $1retiolum_1.png retiolum.dot
-$GRAPH_SETTER2 -Tpng -o $1retiolum_2.png retiolum.dot
-$GRAPH_SETTER3 -Tpng -o $1retiolum_3.png retiolum.dot
-$GRAPH_SETTER4 -Tpng -o $1retiolum_4.png retiolum.dot
-$OPENER retiolum_1.png &>/dev/null
-#rm retiolum.dot
+$GRAPH_SETTER1 -Tpng -o $1/retiolum_1.png $TMP/retiolum.dot
+$GRAPH_SETTER2 -Tpng -o $1/retiolum_2.png $TMP/retiolum.dot
+$GRAPH_SETTER3 -Tpng -o $1/retiolum_3.png $TMP/retiolum.dot
+$GRAPH_SETTER4 -Tpng -o $1/retiolum_4.png $TMP/retiolum.dot
+$OPENER $HERE/retiolum_1.png &>/dev/null
+rm $TMP/retiolum.dot
diff --git a/retiolum/scripts/autostart/Makefile b/retiolum/scripts/autostart/Makefile
deleted file mode 100644
index aba6bd33..00000000
--- a/retiolum/scripts/autostart/Makefile
+++ /dev/null
@@ -1,14 +0,0 @@
-INIT_FOLDER=/etc/init.d
-.phony: all
-debian:
- #TODO change the tinc file before writing
- cp tinc /etc/init.d/tinc
- chmod +x /etc/init.d
- echo "retiolum" > /etc/tinc/nets.boot
- update-rc.d tinc defaults
-arch:
- @cp tinc /etc/rc.d
- @chmod +x /etc/rc.d/tinc
- @echo "add tinc to DAEMONS in /etc/rc.conf"
-
-
diff --git a/retiolum/scripts/autostart/create-startup.sh b/retiolum/scripts/autostart/create-startup.sh
new file mode 100755
index 00000000..37edb972
--- /dev/null
+++ b/retiolum/scripts/autostart/create-startup.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+if test "${nosudo-false}" != true -a `id -u` != 0; then
+ echo "we're going sudo..." >&2
+ exec sudo "$0" "$@"
+ exit 23 # go to hell
+fi
+
+readlink="`readlink -f "$0"`"
+dirname="`dirname "$0"`"
+cd "$dirname"
+
+if [ -e /etc/init.d ];then
+ INIT_FOLDER=/etc/init.d
+ update-rc.d tinc defaults #TODO debian specific
+else
+ INIT_FOLDER=/etc/rc.d
+ echo "add tinc to DAEMONS in /etc/rc.conf" #TODO archlinux specific
+fi
+
+echo "retiolum" > /etc/tinc/nets.boot
+cp -a tinc $INIT_FOLDER
diff --git a/retiolum/scripts/tinc_setup/install.sh b/retiolum/scripts/tinc_setup/install.sh
index 9df38df7..526dbe1f 100755
--- a/retiolum/scripts/tinc_setup/install.sh
+++ b/retiolum/scripts/tinc_setup/install.sh
@@ -1,11 +1,18 @@
#! /bin/sh
# USE WITH GREAT CAUTION
+set -eu
+
+if test "${nosudo-false}" != true -a `id -u` != 0; then
+ echo "we're going sudo..." >&2
+ exec sudo "$0" "$@"
+ exit 23 # go to hell
+fi
#make -C ../../ update
set -e
DIRNAME=`dirname $0`
CURR=`readlink -f ${DIRNAME}`
-MYBIN=../../bin
+MYBIN=${CURR}/../../bin
netname=retiolum
# create configuration directory for $netname
mkdir -p /etc/tinc/$netname/hosts
@@ -30,18 +37,13 @@ then
then
echo "select v4 subnet ip (1-255) :"
read v4num
- myipv4=10.7.7.$v4num
- if [ "$v4num" -gt 0 -a "$v4num" -lt "256" ];
- then
- echo "check"
- else
- echo "you are made of stupid. bailing out"
+ if ! $MYBIN/check-free-retiolum-v4 $v4num;then
exit 1
fi
fi
echo "Subnet = $myipv4" > hosts/$myname
- myipv6=`${CURR}/../../bin/fillxx 42:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx`/128
+ myipv6=`$MYBIN/fillxx 42:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx`/128
echo "Subnet = $myipv6" >> hosts/$myname
else
echo "own host file already exists! will not write again!"
diff --git a/retiolum/scripts/tinc_setup/write_channel.py b/retiolum/scripts/tinc_setup/write_channel.py
index a11d4605..ee28674f 100644
--- a/retiolum/scripts/tinc_setup/write_channel.py
+++ b/retiolum/scripts/tinc_setup/write_channel.py
@@ -12,6 +12,7 @@ FILE="/etc/tinc/retiolum/hosts/"+myname
PORT=6667
NICK= myname+"_"+str(random.randint(23,666))
+print "Connecting..."
sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
sock.connect((HOST,PORT))
print NICK