dotfiles/bin/setupWireguard
2020-10-14 10:52:24 +02:00

20 lines
707 B
Bash
Executable File

#!/bin/bash
set -aeou pipefail
keepassdb="$HOME/Nextcloud/passwords/Passwords.kdbx"
type wg >/dev/null 2>&1 || { printf "wireguard is not installed\n" >&2; exit 1; }
type keepassxc-cli >/dev/null 2>&1 || { printf "KeepassXC is not installed\n" >&2; exit 1; }
printf "Enter password for %s: " "$keepassdb":
read -s -r password
printf "\n"
networks=$(echo "$password" | keepassxc-cli ls "$keepassdb" /Wireguard/"$HOSTNAME")
umask 077
for network in $networks;do
echo "configuring /etc/wireguard/${network}.conf"
echo "$password" | keepassxc-cli show -q --attributes Notes "$keepassdb" /Wireguard/"$HOSTNAME"/"$network" | sudo tee /etc/wireguard/"${network}".conf > /dev/null
done
unset password