init commit

This commit is contained in:
stubbfel
2018-05-16 22:43:33 +02:00
commit dab2114009
5 changed files with 89 additions and 0 deletions

3
git-wg Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/bash
COMMAND=$1
git-wg-$COMMAND "${@:2}"

30
git-wg-clone Executable file
View File

@@ -0,0 +1,30 @@
#!/bin/bash
URL=$1
NETWORK=$(basename "$URL")
IP_ADDR=$2
LPORT=${3:-$(((RANDOM % 5000) + 5000))}
if [ "$#" -ge 4 ]; then
EIP_ADDR=$4
else
EIP_ADDR=$(curl ipecho.net/plain ; echo)
fi
set -e
git clone $URL
cd "$NETWORK"
set +e
ip link add dev $NETWORK type wireguard
ip address add dev $NETWORK $IP_ADDR
#set -e
mkdir -p .wg
(umask 077 && wg genkey > .wg/private.key)
wg set $NETWORK private-key .wg/private.key listen-port $LPORT
(umask 077 && wg showconf $NETWORK > .wg/private.conf)
ME=$(wg pubkey < .wg/private.key)
git config user.name "$ME $NETWORK"
git config user.email "$ME@$NETWORK.wg"
git-wg-peer-add $ME $IP_ADDR "$EIP_ADDR:$LPORT"

30
git-wg-init Executable file
View File

@@ -0,0 +1,30 @@
#!/bin/bash
NETWORK=${PWD##*/}
IP_ADDR=$1
LPORT=${2:-$(((RANDOM % 5000) + 5000))}
if [ "$#" -ge 3 ]; then
EIP_ADDR=$3
else
EIP_ADDR=$(curl ipecho.net/plain ; echo)
fi
ip link add dev $NETWORK type wireguard
ip address add dev $NETWORK $IP_ADDR
set -e
mkdir -p .wg
echo $NETWORK > .network_name.wg
(umask 077 && wg genkey > .wg/private.key)
wg set $NETWORK private-key .wg/private.key listen-port $LPORT
(umask 077 && wg showconf $NETWORK > .wg/private.conf)
ME=$(wg pubkey < .wg/private.key)
git init
git config user.name "$ME $NETWORK"
git config user.email "$ME@$NETWORK.wg"
echo .wg > .gitignore
git add .
git commit -m "init $NETWORK"
git-wg-peer-add $ME $IP_ADDR "$EIP_ADDR:$LPORT"

3
git-wg-peer Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/bash
COMMAND=$1
git-wg-peer-$COMMAND "${@:2}"

23
git-wg-peer-add Executable file
View File

@@ -0,0 +1,23 @@
#!/bin/bash
PEER=$1
IP_ADDR=$2
EIP_ADDR=$3
FNAME=$(echo $PEER.wg | sed -e 's/[^A-Za-z0-9._-]/_/g')
COMMIT_MSG="add peer $PEER"
if [ -f "$FNAME" ]; then
COMMIT_MSG="update peer $PEER"
fi
echo "[Peer]
PublicKey = $PEER
AllowedIPs = $IP_ADDR" > "$FNAME"
if [ "$#" -ge 3 ]; then
echo "Endpoint = $EIP_ADDR" >> "$FNAME"
fi
git add .
git commit -m "$COMMIT_MSG"