Files
proxmox-ha-setup/change_vm_ssh_port.sh
2025-11-02 16:33:16 +01:00

71 lines
1.9 KiB
Bash
Executable File

#!/bin/bash
# Script per cambiare la porta SSH delle VM da 22 a 2222
# Questo permette ai container SFTP di usare la porta 22 standard
set -e
NEW_SSH_PORT=2222
SSH_CONFIG="/etc/ssh/sshd_config"
echo "================================================"
echo "Cambio porta SSH della VM da 22 a $NEW_SSH_PORT"
echo "================================================"
echo ""
# Backup della configurazione originale
if [ ! -f "${SSH_CONFIG}.backup" ]; then
echo "Creazione backup di $SSH_CONFIG..."
cp "$SSH_CONFIG" "${SSH_CONFIG}.backup"
echo "✓ Backup creato: ${SSH_CONFIG}.backup"
else
echo "✓ Backup già esistente: ${SSH_CONFIG}.backup"
fi
# Modifica la porta SSH
echo ""
echo "Modifica della porta SSH a $NEW_SSH_PORT..."
# Rimuovi eventuali configurazioni Port esistenti e aggiungi la nuova
grep -v "^Port " "$SSH_CONFIG" | grep -v "^#Port " > "${SSH_CONFIG}.tmp"
echo "Port $NEW_SSH_PORT" | cat - "${SSH_CONFIG}.tmp" > "$SSH_CONFIG"
rm "${SSH_CONFIG}.tmp"
echo "✓ Configurazione SSH aggiornata"
# Verifica la configurazione
echo ""
echo "Verifica della configurazione SSH..."
if sshd -t; then
echo "✓ Configurazione SSH valida"
else
echo "✗ ERRORE: Configurazione SSH non valida!"
echo "Ripristino del backup..."
cp "${SSH_CONFIG}.backup" "$SSH_CONFIG"
exit 1
fi
# Riavvia il servizio SSH
echo ""
echo "Riavvio del servizio SSH..."
systemctl restart sshd
echo "✓ Servizio SSH riavviato"
# Mostra lo status
echo ""
echo "Status del servizio SSH:"
systemctl status sshd --no-pager -l | head -10
echo ""
echo "================================================"
echo "✓ Porta SSH cambiata con successo!"
echo "================================================"
echo ""
echo "IMPORTANTE:"
echo " - SSH ora ascolta sulla porta $NEW_SSH_PORT"
echo " - Connettiti con: ssh -p $NEW_SSH_PORT root@<ip-vm>"
echo " - La porta 22 è ora disponibile per i container SFTP"
echo ""
echo "Per verificare:"
echo " ss -tlnp | grep sshd"
echo ""