Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Configurazione Test Environment - Vagrant-SSH

Questo progetto configura un ambiente di test con due macchine virtuali CentOS 8 e comunicazione ssh utilizzando Vagrant, ciascuna con versioni diverse di Subversion (SVN) per testare la compatibilità e le funzionalità tra versioni.

Configurazione delle VM

VM 1: svn16-server

  • Sistema Operativo: CentOS 8
  • Indirizzo IP: 192.168.168.10
  • Versione SVN: 1.6.0 (compilata da sorgente)
  • Porta SSH: 2216 (port forwarding)
  • Memoria: 1536 MB
  • CPU: 1 core

VM 2: svn110-server

  • Sistema Operativo: CentOS 8
  • Indirizzo IP: 192.168.168.11
  • Versione SVN: 1.10.x (installata da repository)
  • Porta SSH: 2217 (port forwarding)
  • Memoria: 1536 MB
  • CPU: 1 core

Struttura del Progetto

.
├── Vagrantfile                 # Configurazione principale di Vagrant
├── scripts/
│   ├── setup_svn16.sh         # Script di provisioning per SVN 1.6
│   ├── setup_svn110.sh        # Script di provisioning per SVN 1.10
│   └── setup_ssh.sh           # Script per configurazione SSH
└── config_key.sh              # Script per configurazione chiavi SSH

Prerequisiti

  • Vagrant installato sul sistema host
  • VirtualBox come provider per le VM
  • Connessione internet per il download dei pacchetti

Installazione e Configurazione

1. Creazione delle VM

# Crea e avvia entrambe le VM
vagrant up

# Oppure avvia le VM singolarmente
vagrant up svn16
vagrant up svn110

2. Configurazione delle Chiavi SSH

Dopo aver creato le VM, è necessario configurare le chiavi SSH per permettere la comunicazione tra le macchine:

# Accedi alla prima VM
vagrant ssh svn16

# Esegui lo script di configurazione delle chiavi
sudo bash /vagrant/config_key.sh

Ripeti l'operazione per la seconda VM:

# Accedi alla seconda VM
vagrant ssh svn110

# Esegui lo script di configurazione delle chiavi
sudo bash /vagrant/config_key.sh

3. Scambio delle Chiavi Pubbliche

Per completare la configurazione SSH:

  1. Su svn16-server:

    vagrant ssh svn16
    cat ~/.ssh/id_rsa.pub  # Copia l'output
  2. Su svn110-server:

    vagrant ssh svn110
    echo 'CHIAVE_PUBBLICA_DI_SVN16' >> ~/.ssh/authorized_keys
    cat ~/.ssh/id_rsa.pub  # Copia l'output
  3. Torna su svn16-server:

    echo 'CHIAVE_PUBBLICA_DI_SVN110' >> ~/.ssh/authorized_keys

Funzionalità Configurate

SVN 1.6 Server (svn16-server)

  • SVN 1.6.0 compilato da sorgente e installato in /opt/svn-1.6/
  • PATH configurato per utilizzare la versione compilata
  • Repository di test creato in /svn/repos/repo16
  • Risoluzione dei problemi di repository CentOS 8 EOL

SVN 1.10 Server (svn110-server)

  • SVN 1.10.x installato tramite yum/dnf
  • Repository di test creato in /svn/repos/repo110
  • Configurazione ottimizzata per CentOS 8 EOL

Configurazioni Comuni

  • SSH: Configurato e abilitato su entrambe le VM
  • Firewall: Configurato per permettere connessioni SSH
  • Hosts file: Configurato per la risoluzione dei nomi tra VM
  • Locale: Impostato su en_US.UTF-8 per evitare warning
  • DNS: Configurato per utilizzare il resolver dell'host

Utilizzo

Accesso alle VM

# Accesso diretto tramite Vagrant
vagrant ssh svn16
vagrant ssh svn110

# Accesso tramite SSH (dall'host)
ssh -p 2216 vagrant@localhost  # svn16-server
ssh -p 2217 vagrant@localhost  # svn110-server

# Accesso tra VM (dopo configurazione chiavi)
ssh vagrant@192.168.168.11     # Da svn16 a svn110
ssh vagrant@192.168.168.10     # Da svn110 a svn16

Test delle Versioni SVN

# Su svn16-server
/opt/svn-1.6/bin/svn --version

# Su svn110-server
svn --version

Risoluzione dei Problemi

Problemi di Rete/DNS

Se si verificano problemi di connessione durante il provisioning:

  • Verificare la connessione internet dell'host
  • Controllare che VirtualBox abbia configurato correttamente il NAT
  • I script includono configurazioni per CentOS 8 EOL che reindirizzano a vault.centos.org

Problemi di Compilazione SVN 1.6

Se la compilazione di SVN 1.6 fallisce:

  • Controllare i log di errore nel terminale
  • Verificare che tutti i pacchetti di sviluppo siano installati
  • Assicurarsi che apr-devel e apr-util-devel siano disponibili

Comandi Utili

# Stato delle VM
vagrant status

# Riavvio delle VM
vagrant reload

# Riesecuzione del provisioning
vagrant provision

# Spegnimento delle VM
vagrant halt

# Distruzione delle VM
vagrant destroy

Note Tecniche

  • CentOS 8 EOL: Gli script gestiscono automaticamente la transizione a vault.centos.org
  • SVN 1.6: Versione legacy compilata da sorgente per compatibilità
  • Networking: Configurazione di rete privata per comunicazione inter-VM
  • Port Forwarding: Configurato per accesso SSH diretto dall'host

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages