#!/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@" echo " - La porta 22 è ora disponibile per i container SFTP" echo "" echo "Per verificare:" echo " ss -tlnp | grep sshd" echo ""