L'installatore ha provveduto a copiare lo script di avvio di VMware Server nel percorso predefinito del sistema e anche nel menu di avvio delle applicazioni. Dalla shell potremo dunque eseguire il comando:
vmware
oppure potremmo portarci alla voce nel menu Applicazioni / Strumenti di sistema.
È possibile ora selezionare il tipo di Virtual machine da creare (RAM, HD, ecc), tramite wizard, ed infine inserire il CD di installazione del sistema operativo scelto. Tutto qui.
Poniamo quindi, per il proseguimento della guida, di possedere due sistemi operativi guest Debian creati con il nostro VMware Server (uno sarà il "copia-incolla" dell'altro), avviabili sempre dallo stesso VMWare Server Console.
Per questa sezione, un ringraziamento per i preziosi suggerimenti va ad Habanero e billiejoex del Forum di Html.it
L'obiettivo è di avere:
- un sistema host minimale, ma potente in termini di capacità di calcolo, in una sorta di pseudo-zona delimitarizzata (DMZ) e impostato con adeguata configurazione di rete: verrà fatto il NAT tra IP_pubblico_host ed IP_locale_host sul router o firewall;
- il server (fisico) di cui finora abbiamo trattato viene smembrato in Web server e Database server rappresentati da due guest creati con VMware che chiameremo guest_web e guest_db.
- guest_web è il Debian che fa da webserver;
- guest_db è il Debian che fa da database server;
- guest_web e guest_db comunicano tra loro in rete.
La finalità è la separazione pressoché totale dei filesystem dei due guest (a meno di vulnerabilità dello stesso VMWare, ovviamente). In questo modo:
- Abbiamo "messo in gabbia" sia Apache che MySQL: se guest_web viene bucato (ad esempio con un command injection, per il quale il cracker riesce ad eseguire un comando shell arbitrario su guest_web, poniamo anche con privilegi di root), guest_db rimane salvo e, senza ulteriori exploit, il database resta integro e non violabile (le tabelle accessibili in scrittura dai programmi di guest_web saranno compromesse, ma se il database è condiviso tra più applicazioni eterogenee, il danno può dirsi limitato). Allo stesso modo vale il viceversa.
- Se uno dei due viene bucato, avremo la possibilità di reinstallare (ovvero fare una semplice copia dall'originale) solo una macchina (virtuale), ovvero un solo servizio.
Notiamo che la protezione è assicurata nella realtà solo a livello di filesystem, e non a livello di rete come si potrebbe pensare (o meglio lo è, ma solo in parte); dato che la scheda fisica è la medesima del server in zona delimitarizzata, i due guest (trattati come macchine fisiche) devono esser separati dalla rete "corporate" esattamente come tutti i server della DMZ.