Print which client uses already given public key

This commit is contained in:
Paul-Christian Volkmer 2022-12-25 20:37:17 +01:00
parent d47e1a1a23
commit 2fe5f14383

View File

@ -20,9 +20,11 @@ if [ -z $1 ]; then
CLIENT_PUB_KEY=$(echo $CLIENT_SEC_KEY | wg pubkey)
else
# Check if public key is already used
for key in $(cat $DEVICE.conf | grep "PublicKey = " | sed "s/PublicKey = \(.*\)$/\1/"); do
if [[ "$1" == "$key" ]]; then
echo "Key '$1' already used!"
clients=($(cat $DEVICE.conf | grep "# Client" | sed "s/# Client \([0-9]*\)$/\1/"))
keys=($(cat $DEVICE.conf | grep "PublicKey = " | sed "s/PublicKey = \(.*\)$/\1/"))
for i in "${!keys[@]}"; do
if [[ "$1" = "${keys[$i]}" ]]; then
echo "Key '$1' already used in 'Client ${clients[$i]}'"
exit 1
fi
done