GestioneSSHCertificati

Da GazziNet.
Vai alla navigazione Vai alla ricerca

1. Generare la coppia di chiavi SSH sul nodo manager (manager01.gazzi.local):

   $ ssh-keygen -t ed25519 -C "manager01.gazzi.local" 

Premi INVIO per ogni domanda per usare i valori di default.


2. Copiare la chiave pubblica sulle macchine di destinazione:

  $ ssh-copy-id utente@host_remoto

Esempio:

  $ ssh-copy-id root@web01.gazzi.local

Questo comando:

- Inserisce la chiave pubblica nella macchina remota - Permette connessioni SSH senza inserire password

3. Testare la connessione:

  $ ssh utente@host_remoto

Non dovrebbe essere richiesta alcuna password. Note:

- Le chiavi vengono salvate in ~/.ssh/id_ed25519 (privata) e ~/.ssh/id_ed25519.pub (pubblica)
- Proteggi sempre la chiave privata (non copiarla, non condividerla)
vi setup_ssh_keys.sh
#!/bin/bash
# Script da lanciare su manager01.gazzi.local
# Genera una chiave SSH e la copia su una lista di host remoti
read -p "Inserisci il nome utente per le macchine remote: " REMOTE_USER
# Lista delle macchine a cui vuoi connetterti
HOSTS=("web01.gazzi.local" "db01.gazzi.local" "app01.gazzi.local")
# 1. Generazione della chiave SSH se non esiste
if [ ! -f "$HOME/.ssh/id_ed25519" ]; then
   echo "[INFO] Genero una nuova coppia di chiavi SSH..."
   ssh-keygen -t ed25519 -C "manager01.gazzi.local" -N "" -f "$HOME/.ssh/id_ed25519"
else
   echo "[INFO] Chiave SSH già esistente. Salto la generazione."
fi
# 2. Copia della chiave pubblica verso i target
for HOST in "${HOSTS[@]}"; do
   echo "[INFO] Copio la chiave SSH su $HOST..."
   ssh-copy-id "${REMOTE_USER}@${HOST}"
done
echo "[FINE] Configurazione completata. Puoi ora connetterti senza password."