## Preparare il sistema operativo

Una volta completata l'installazione di JeOS e la macchina virtuale è in attesa, è necessario preparare il sistema operativo per accogliere l'applicazione. È utile fare uno "snapshot" dell'immagine VMWare in modo che, se viene commesso un errore, è possibile recuperare il tutto senza doverlo reinstallare.

La prima cosa da fare dopo l'installazione del sistema è controllare che sia aggiornato. Questo viene fatto eseguendo:

    sudo apt-get update && sudo apt-get upgrade

### Installare i VMware Tools

"VMWare Tools" consente all'ambiente VMWare di avere un miglior controllo delle applicazioni; è quindi una buona idea installarlo.

- Per prima cosa impostare l'ambiente installando gli strumenti di generazione:

      sudo aptitude install build-essential linux-headers-$(uname -r)

- Montare il "VMWare Tools CD" facendo clic su "VM > Install VMware Tools…" dal menù di VMWare Server.

- Montare il CD-ROM:

      mount /media/cdrom0

- Copiare gli strumenti nella directory tmp e decomprimerli:

      sudo cp -a /media/cdrom0/VMwareTools*.gz /tmp/
      cd /tmp/
      sudo tar -xzvf VMwareTools*.gz

- Eseguire lo script vmware-install.pl accettando tutti i valori predefiniti:

      cd vmware-tools-distrib/
      sudo ./vmware-install.pl

Per VMWare è disponibile anche il pacchetto open-vm-tools, un'implementazione open source di VMWare Tools. Se si utilizza KVM, attualmente non esiste un pacchetto equivalente.

Per installare open-vm-tools, da un terminale digitare:

    sudo apt-get install open-vm-tools

### Installare i pacchetti richiesti

In questo esempio viene installata una semplice applicazione composta da una pagina web che accede a un database MySQL. Il sistema operativo avrà quindi bisogno di:

- Apache

- PHP

- MySQL

Tutti i componenti basilari di un'installazione LAMP che è possibile configurare con un semplice comando apt-get:

    sudo tasksel install lamp-server

A questo punto è possibile installare qualsiasi pacchetto addizionale necessario, come per esempio l'utilità a riga di comando aptitude.

Una volta installati i pacchetti base, è utile creare uno snapshot della macchina virtuale. È anche possibile salvare i passi intermedi creando una copia completa della macchina virtuale eseguendo il seguente comando direttamente dall'host dopo averlo spento:

    cp -rf /var/lib/vmware/Virtual\ Machines/JeOS /var/lib/vmware/Virtual\ Machines/JeOS-basePackages/

### Considerazioni sulla sicurezza

- OpenSSH

  Un altro strumento utile è OpenSSH che consente di fornire accesso remoto all'applicazione agli amministratori. Mettere in produzione un applicativo con un versione pre-installata del server OpenSSH è un rischio per la sicurezza, dato che tutti questi server condivideranno la stessa chiave segreta, facilitando così il lavoro di malintenzionati che con gli strumenti adatti potrebbero entrare nel server. Per la password utente viene usato uno script che installa OpenSSH al primo accesso, cosicché la chiave generata sarà diversa per ogni applicativo.

  Potrebbe comunque essere più semplice, durante la configurazione, accedere all'applicativo utilizzando SSH. Viene installato ora, ma è necessario assicurarsi di rimuoverlo quando l'applicativo verrà messo in produzione, come descritto alla fine della guida. Per installarlo, eseguire:

      sudo apt-get install openssh-server

- MySQL

  Quando è stato eseguito apt-get per installare il server LAMP, è stato chiesto solamente di fornire una password predefinita per MySQL. Non è un buona scelta usare la stessa password per tutti gli applicativi ed è quindi necessario farla cambiare al primo accesso di un utente.

Installare JeOS |  | Installare e mantenere l'applicativo