Files
dotfiles/.local/bin/setup/ssh
2021-04-16 00:29:01 +01:00

33 lines
827 B
Bash
Executable File

#!/bin/bash
LABS=$(enpasscli -vault="$HOME/Documents/Enpass/Vaults/primary" -sort show "Scarif: Labs" 2>&1)
LABSUN=$(echo "$LABS" | grep -Po "(?<=login: )\w+")
LABSPW=$(echo "$LABS" | grep -Po "(?<=pass : ).+(?=\")")
SSHPATH="$HOME/.ssh/id_ed25519"
ssh-keygen -t ed25519 -f "$SSHPATH" -N "" -q
generate_post_data() {
cat <<EOF
{
"key": "$(cat "$SSHPATH.pub")",
"read_only": false,
"title": "$USER@$(cat /etc/hostname)"
}
EOF
}
CREDENTIALS="$LABSUN:$LABSPW"
KEYS=$(curl -X GET -s --url "https://$CREDENTIALS@labs.scarif.space/api/v1/users/$LABSUN/keys")
echo $KEYS | jq '.[].title'
curl --request POST \
-s \
-H "Accept: application/json" \
-H "Content-Type:application/json" \
--data "$(generate_post_data)" \
--url "https://$CREDENTIALS@labs.scarif.space/api/v1/users/$LABSUN/keys"