m
This commit is contained in:
23
pct_public_key.sh
Normal file
23
pct_public_key.sh
Normal file
@@ -0,0 +1,23 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Define the public key to add
|
||||
PUBLIC_KEY="YOUR_PUBLIC_KEY_STRING_HERE" # <--- REPLACE THIS WITH YOUR ACTUAL PUBLIC KEY
|
||||
|
||||
# Define file paths
|
||||
SSH_DIR="$HOME/.ssh"
|
||||
AUTHORIZED_KEYS_FILE="$SSH_DIR/authorized_keys"
|
||||
|
||||
# Create .ssh directory and set permissions if it doesn't exist
|
||||
mkdir -p "$SSH_DIR" && chmod 700 "$SSH_DIR" || { echo "Error: Could not create or set permissions for $SSH_DIR. Exiting."; exit 1; }
|
||||
|
||||
# Create authorized_keys file and set permissions if it doesn't exist
|
||||
touch "$AUTHORIZED_KEYS_FILE" && chmod 600 "$AUTHORIZED_KEYS_FILE" || { echo "Error: Could not create or set permissions for $AUTHORIZED_KEYS_FILE. Exiting."; exit 1; }
|
||||
|
||||
# Check if the key already exists to prevent duplicates
|
||||
if grep -qF "$PUBLIC_KEY" "$AUTHORIZED_KEYS_FILE"; then
|
||||
echo "Key already exists in $AUTHORIZED_KEYS_FILE. No changes made."
|
||||
else
|
||||
# Add the key
|
||||
echo "$PUBLIC_KEY" >> "$AUTHORIZED_KEYS_FILE"
|
||||
echo "Key successfully added to $AUTHORIZED_KEYS_FILE."
|
||||
fi
|
||||
Reference in New Issue
Block a user