Come creare un nuovo vhost in Ubuntu 14.x

Scritto il

In questa breve guida spiegherò passo passo le operazioni necessarie per creare un nuovo vhost in Ubuntu versione 14 (vale anche per versioni precedenti e successive, testato fino a Ubuntu 16.04) utilizzando come server Apache2 e come servizio FTP vsftpd. Assicuratevi prima di continuare di usare questi servizi.

Creeremo un vhost di test con i seguenti dati, ricordatevi poi di sostituirli con i vostri:
Nome dominio: miosito.it
Nome utente FTP: miositouserftp
Password utente FTP: passwordftp (usate password forti, questa è semplice solo per esempio)

  1. Creare la document root

    1. Creiamo le cartelle nel quale sarà installato il sito e dove caricheremo i file del sito, le creeremo nella classica directory /var/www con questo comando
      sudo mkdir /var/www/miosito.it
    2. Creiamo ora la public_html, cartella che conterrà il sito pubblico
      sudo mkdir /var/www/miosito.it/public_html 
  2. Creare il file di configurazione Apache2

    1. Copiamo un già esistente file di configurazione apache, per semplicità, con questo comando
      sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/miosito.it.conf
    2. Apriamo il file appena creato (miosito.it.conf) con il nostro editor preferito (io uso nano) e modifichiamo le righe ServerName DocumentRoot come segue
      ServerName miosito.it
      DocumentRoot /var/www/miosito.it/public_html/
    3. Abilitiamo ora il nuovo sito con il seguente comando
      sudo a2ensite miosito.it.conf
    4. Infine, come ci suggerisce Apache, riavviamo il servizio con questo comando
      sudo service apache2 reload

  3. Creare l’utente FTP

    1. Creiamo ora l’utente con il quale accederemo a questo server. Iniziamo creando l’utente, assegnandogli come home directory la directory del sito e bloccandogli la possibilità di accedere tramite ssh grazie al parametro -s /usr/sbin/nologin
      sudo useradd -m miositouserftp -d /var/www/miosito.it -s /usr/sbin/nologin
    2. Assegnamoli ora una password inserendo prima questo comando e premendo invio cosicché ci venga chiesta la password
      sudo passwd miositouserftp
      premete invio, e vi verrà chiesto due volte la password (per conferma)
      passwordftp
    3. Come ultimo passo vogliamo che questo utente possa creare e cancellare files e cartelle all’interno del suo spazio, perciò dobbiamo assegnarli la proprietà della sua directory, con il seguente comando
      sudo chown -R miositouserftp /var/www/miosito.it

Fatto! Ora potete collegarvi al vostro sito tramite FTP e creare/caricare i vostri files.

Ricordate che per poter accedere al vostro nuovo vhosts tramite browser dovete o avvalervi di un servizio DNS, a cui farete puntare il nome di dominio miosito.it all’ip del server, oppure modificando il file hosts del vostro computer aggiungendo la seguente riga:
<IP-server> <miosito.it>
e ipotizzando che il server abbia ip 192.168.0.34 (indirizzo IP locale d’esempio) la riga sarà
192.168.0.34     miosito.it

Per completezza il file hosts si trova nei seguenti percorsi:
Windows: C:\\Windows\System32\drivers\etc\hosts
Linux: /etc/hosts
Mac: /etc/hosts