38 lines
1007 B
Bash
Executable File
38 lines
1007 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
public_key="/opt/rustdesk/id_ed25519.pub"
|
|
private_key="/opt/rustdesk/id_ed25519"
|
|
|
|
function genNewKeys() {
|
|
echo "Generatiing a new key pair"
|
|
KEY_PAIR=$(/opt/rustdesk/rustdesk-utils genkeypair )
|
|
PUBLIC_KEY=$(echo "${KEY_PAIR}"|head -1 |awk '{print $3}')
|
|
PRIVATE_KEY=$(echo "${KEY_PAIR}"|tail -1 |awk '{print $3}')
|
|
echo -n "${PUBLIC_KEY}" > "${public_key}"
|
|
echo -n "${PRIVATE_KEY}" > "${private_key}"
|
|
}
|
|
|
|
function validateNewKeys() {
|
|
PUBLIC_KEY=$(cat "${public_key}" 2>/dev/null)
|
|
PRIVATE_KEY=$(cat "${private_key}" 2>/dev/null )
|
|
/opt/rustdesk/rustdesk-utils validatekeypair "${PUBLIC_KEY}" "${PRIVATE_KEY}"
|
|
}
|
|
|
|
stat "${public_key}" >/dev/null 2>&1
|
|
stat "${private_key}" >/dev/null 2>&1
|
|
|
|
valid_key_pair="0"
|
|
|
|
while [[ "$valid_key_pair" != "1" ]]; do
|
|
validateNewKeys | grep "^Key pair is VALID" >/dev/null
|
|
if [ "$?" -eq "0" ];then
|
|
echo "Foudn the keys to be VALID"
|
|
valid_key_pair="1"
|
|
else
|
|
echo "Found the keys to be invalid"
|
|
valid_key_pair="0"
|
|
genNewKeys
|
|
fi
|
|
|
|
done
|