batchupdate/authorize-server

20 lines
772 B
Bash

#!/bin/bash
# Read the server list from the specified file
SERVER_LIST_FILE="servers.conf"
while IFS= read -r SERVER || [ -n "$SERVER" ]; do
SERVER_LIST+=("$SERVER")
done < "$SERVER_LIST_FILE"
# Read the public SSH key from the update server
UPDATE_SERVER="10.0.3.77" # replace with your update server IP address
PUBLIC_KEY=$(ssh root@${UPDATE_SERVER} "cat ~/.ssh/id_rsa.pub")
# Loop through the server list and add the public key to the authorized_keys file of each server
for SERVER in "${SERVER_LIST[@]}"
do
# Establish SSH connection to remote server and add the public key to the authorized_keys file
ssh root@${SERVER} "mkdir -p ~/.ssh && echo '${PUBLIC_KEY}' >> ~/.ssh/authorized_keys"
echo "Public key added to authorized_keys on server ${SERVER}"
done