From 8d4bbda9453c66df3819d5cb5b3b5f850dfd9276 Mon Sep 17 00:00:00 2001 From: TudbuT Date: Sat, 26 Oct 2024 05:03:58 +0200 Subject: [PATCH] Basic scripts --- .gitignore | 1 + init.sh | 37 ++++++++++ pushkey.sh | 5 ++ read-msg.sh | 20 ++++++ recv-msg.sh | 6 ++ sign.sh | 5 ++ signer.pub | 195 ++++++++++++++++++++++++++++++++++++++++++++++++++++ verify.sh | 31 +++++++++ 8 files changed, 300 insertions(+) create mode 100644 .gitignore create mode 100644 init.sh create mode 100644 pushkey.sh create mode 100644 read-msg.sh create mode 100644 recv-msg.sh create mode 100644 sign.sh create mode 100644 signer.pub create mode 100644 verify.sh diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2ad9294 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +*.local diff --git a/init.sh b/init.sh new file mode 100644 index 0000000..910a0ea --- /dev/null +++ b/init.sh @@ -0,0 +1,37 @@ +#!/bin/sh + +echo "> Importing signer" +gpg --import signer.pub +gpg --edit-key tudbut@tudbut.de "trust" "quit" +echo done + +echo "> Setting up peers" +echo -n "This node: TudbuT.infra." +read name +echo "TudbuT.infra.$name" > name.local +echo -n "Router is TudbuT.infra.router.main? [Y/n] " +read yn +if [ "$yn" != "n" ] ; then + echo "TudbuT.infra.router.main" > router.local +else + echo -n "Router: TudbuT.infra." + read router + echo "TudbuT.infra.$router" > router.local +fi +echo -n "Router lives at domain: " +read domain +echo "$domain" > router.ip.local +echo "All set." + +echo "> Setting up GPG" +gpg --gen-key +echo "Please sign:" +gpg --export -a "TudbuT.infra.$name" +echo -n "Enter to confirm" +read +echo "Please give me the signed key:" +gpg --import +echo "Thank you!" + +echo "> Done." + diff --git a/pushkey.sh b/pushkey.sh new file mode 100644 index 0000000..ccf619a --- /dev/null +++ b/pushkey.sh @@ -0,0 +1,5 @@ +#!/bin/sh +name=$(cat name.local) + +echo key +gpg --export -a "$name" diff --git a/read-msg.sh b/read-msg.sh new file mode 100644 index 0000000..e543078 --- /dev/null +++ b/read-msg.sh @@ -0,0 +1,20 @@ +#!/bin/sh + +read todo + +if [ "$todo" = "" ] ; then + exit +fi + +if [ "$todo" = "push" ] ; then + read filename + cat > "$filename" + exit +fi + +if [ "$todo" = "exec" ] ; then + read command + exec bash -c "$command" +fi + +echo "invalid command: $todo" diff --git a/recv-msg.sh b/recv-msg.sh new file mode 100644 index 0000000..734cab5 --- /dev/null +++ b/recv-msg.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +data="$(bash verify.sh)" +c=$? +if [ $c != 0 ] ; then exit $c ; fi +bash read-msg.sh <<< "$data" || exit 1 diff --git a/sign.sh b/sign.sh new file mode 100644 index 0000000..62e82f2 --- /dev/null +++ b/sign.sh @@ -0,0 +1,5 @@ +#!/bin/sh +name=$(cat name.local) + +echo data +gpg --local-user "$name" --sign -a diff --git a/signer.pub b/signer.pub new file mode 100644 index 0000000..ff36aa7 --- /dev/null +++ b/signer.pub @@ -0,0 +1,195 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +=/9qg +-----END PGP PUBLIC KEY BLOCK----- diff --git a/verify.sh b/verify.sh new file mode 100644 index 0000000..cc2fd64 --- /dev/null +++ b/verify.sh @@ -0,0 +1,31 @@ +#!/bin/sh + +read mode + + +if [ "$mode" = "key" ] ; then + output="$( (exec gpg --import > /dev/null) 2>&1 )" + if [ "$?" = 0 ] ; then + echo recv ok > /dev/stderr + else + echo recv bad > /dev/stderr + exit 1 + fi + exit +fi + +if [ "$mode" = "data" ] ; then + + id=$! + stderr="$( (exec gpg -d > /tmp/$id.msg) 2>&1 )" + if [ $? = 0 ] && ! grep "WARNING" <<< "$stderr" > /dev/null ; then + echo recv sig ok > /dev/stderr + else + echo recv sig bad > /dev/stderr + exit 1 + fi + + cat /tmp/$id.msg + + exit +fi