Come configurare Cloudflare per un sito su Aruba con Server Condiviso
By giuseppemaccario on Fri Jul 30 in Aruba, cache, Cloudflare, hosting
Introduzione
In questo articolo spiegheró come configurare Cloudflare per un sito su Aruba con Server Condiviso. Andremo cosí a sfruttare la rete di distribuzione globale di Cloudflare, o CDN (Content Delivery Network), e il loro sistema di mitigazione di attacchi DDoS. In piú, nell’articolo seguente, spiegheró come applicare alle pagine o a sezioni del sito, le regole definibili con le Page Rules per gestire correttamente la cache delle pagine.
Non solo WordPress
Il sito web puó essere realizzato con WordPress, oppure per esempio puó essere un sito web basato su framework, o su un’architettura custom. Quello che ci serve é avere accesso al back office (spesso un Cpanel) del proprio hosting per poter gestire correttamente i DNS.
Opzionalmente, se il sito é comunque realizzato in WordPress, é possibile installare il plugin ufficiale di Cloudflare e gestire alcuni settings, visualizzare i dati di analytics, e anche pulire la cache, tutto direttamente dal backend del proprio sito WordPress. Avendo invece un sito custom o basato su un framework, é comunque possibile realizzare una integrazione personalizzata tramite le API di Cloudflare.
Cos’é Cloudflare
Dal loro sito:
Cloudflare è uno dei più grandi network che operano su Internet. Le persone usano i servizi di Cloudflare per aumentare la sicurezza e le prestazioni dei loro siti e servizi web.
Dal sito ufficiale di Cloudflare
Una CDN é una rete globale che fornisce contenuti, e altri servizi, il più vicino possibile all’utente che ne ha fatto richiesta, in modo da ottenere le informazioni il più velocemente possibile. Se per esempio 3 persone stanno navigando il nostro sito che é ospitato su un server italiano, e lo stanno facendo da 3 paesi diversi come Paesi Bassi, Portogallo e USA, gli utenti riceveranno immagini e altre risorse come i file statici (css e javascript) da server che risiedono fisicamente sul loro territorio dei nostri utenti (o comunque il piú vicino possibile alla loro posizione). Le loro richieste HTTP non arriveranno neanche in Italia, ma il traffico sará generato nel paese da cui arriva la richiesta, o dal luogo piú vicino ai server Cloudflare dove quelle risorse sono state salvate. Questo si traduce in una maggiore velocitá del sito e una esperienza utente migliore.
In piú, anche con il piano gratuito, Cloudflare fornisce un ulteriore livello di sicurezza proteggendo siti web e apps da attacchi DDoS, bot maligni e altre intrusioni.
Sono ottimi motivi per prendere in seria considerazione l’idea di appoggiarsi ad un servizio di questo tipo. Quando propriamente configurato, é adatto sia per il blog che fornisce contenuti, sia per l’ecommerce che vende prodotti o per l’app che fornisce servizi. Cloudflare ha anche un piano gratuito, per progetti personali o di tipo hobbistico, con un limite di 3 Page Rules per ogni dominio.
Ovviamente non esiste solo Cloudflare che fornisce servizi di questo tipo. A livello enterprise ho lavorato per esempio su Akamai, ma ce ne sono anche anche altri come la ben nota Fastly.
Creare un account Cloudflare
Per configurare Cloudflare per un sito su Aruba con Server Condiviso occorre avere un account Cloudflare. É possibile crearne uno dalla pagina di registrazione e in pochi minuti essere pronti per configurare i propri siti web. Ci serve una email valida e funzionante. Ricapitolando:
- Visitare https://dash.cloudflare.com/sign-up
- Inserire un indirizzo email valido e una password
- Cliccare Creare account
In alto a destra é sempre possibile cambiare la lingua della pagina e visualizzare la pagina in italiano.
Qui la pagina della documentazione ufficiale Cloudflare in cui viene spiegato come Creare un account Cloudflare e come Aggiungere un dominio.
Aggiungere un dominio
Dopo aver creato un profilo su Cloudflare, effettuare il login, cosí da atterrare sulla pagina principale del pannello di controllo di Cloudflare. Qui potete aggiungere un nuovo sito (anche chiamato zona in Cloudflare), semplicemente cliccando sul bottone blu Aggiungi un sito. Al primo accesso non si avranno ancora siti configurati, quindi il bottone si presenta al centro della pagina, altrimenti é in alto a destra nel corpo della pagina e anche nella barra di navigazione principale in alto a destra nella pagina, come nell’immagine qui sotto:
A questo punto aggiungere il dominio che vi interessa e cliccare Aggiungi sito.
Selezionare quindi un piano tariffario. Cloudflare presenta subito i 3 piani a pagamento Pro, Business, e Enterprise, ma se si sta configurando Cloudflare per il proprio blog personale, in basso c’é il box rettangolare relativo al piano gratuito Free. Cliccare sul box e poi sul bottone Continua.
A questo punto Cloudflare analizzerá i DNS disponibili per il vostro sito e ne presenterá una lista.
Nota: lo stato del proxy per il record FTP é SOLO DNS perché altrimenti avrete problemi ad accedere al vostro sito via FTP sui server condivisi Aruba. Nella lista, in corrispondenza della riga FTP e della colonna Stato proxy, cliccare sull'icona in modo da cambiarne lo stato.
A questo punto la parte di Cloudflare é quasi completata, dobbiamo prendere nota dei nameservers forniti da Cloudflare. Io uso un piccolo software per la cronologia degli appunti, cosí da copiare due stringhe e portarmi dietro i valori tra le schermate. Il software in questione si chiama ClipX.
In ogni caso é sufficiente seguire la guida fornita dalla pagina stessa. In breve bisogna accedere al pannello di controllo dell’hosting e modificare i DNS.
Dato che in questa guida tratto Aruba e i sui server condivisi, se avete un altro hosting, vi basterá cercare una guida specifica su come modificare i DNS.
Gestione DNS su Server condiviso Aruba
Entrare nel pannello di controllo dalla pagina principale di Aruba, cliccare su Area clienti e poi Pannello di controllo. Purtroppo si aprirá un’altra tab, ma a questo punto sarete pronti fare il login al pannello. Una volta entrati, scegliete il dominio di cui volete trasferire i DNS.
Nella navigazione laterale, quella a sinistra, cliccare su Utility dominio e controllare se il servizio Gestione DNS e Name Server é attivo, altrimenti é necessario attivarlo.
Se state attivando la gestione dei DNS, prendetevi una pausa e ritornate tra un pó: Aruba vi avverte infatti che l’operazione richiede circa 60 minuti.
Quando Aruba avrá attivato i DNS possiamo clicclare su Gestisci DNS
Ed atterreremo sulla pagina di impostazioni del Record Name Server. Qui é necessario cliccare su Usa altri nameserver, nel primo box in alto.
Comparirá un pop up in cui si richiede come si vuole configurare il Record MX sul nuovo DNS. L’impostazione di default é sufficiente. Si potrá comunque modificare in seguito.
Continuare e cliccare su “Gestisci”.
Inserite il primo nameserver fornito da Cloudflare nella casella Host, poi cliccare su Aggiungi (bottone verde):
Ripetere la stessa operazione con il secondo nameserver fornito da Cloudflare. In basso vedrete la lista dei vostri nuovi nameserver.
Alla fine cliccare su Prosegui e poi clicca su Salva configurazione e infine su Prosegui. In basso nella pagina successiva, cliccare Salva Configurazione e Conferma.
Abbiamo modificato i DNS del sito.
Controlliamo i nameserver da Cloudflare
Torniamo ora nel pannello di controllo di Cloudflare, in particolare nel pannello di controllo del sito che stiamo configurando, e ripartendo da dove abbiamo lasciato, clicchiamo Fatto, controlla i nameserver:
Una volta cliccato il bottone Introduzione, inizieremo una breve configurazione:
- Riscritture HTTPS automatiche: On
- Minificazione automatica: spuntare JS/CSS/HTML
Dopo il riepilogo possiamo cliccare su Fine:
Tornando al pannello di controllo di Cloudflare, possiamo ora cliccare su Controlla i nameserver e attendere fino a quando Cloudflare non sará riuscito a controllare i nameserver.
A questo punto dobbiamo di nuovo aspettare, ci possono volere 24 ore per la modifica e propagazione dei DNS. Riceverete una mail quando il sito sará attivo su Cloudflare.
DNS propagati
Una volta che i DNS sono stati propagati, Cloudflare inizierá con il suo lavoro di protezione del sito web.
Ora i DNS su Aruba sono stati impostati correttamente e Cloudflare sta giá rispondendo dai suoi.
Possiamo anche controllare i Reponse Headers della pagina, aprendo l’inspector del browser (cliccando il tasto destro del mouse e poi ancora Ispeziona). A questo punto posizionarsi nella tab Network e controllare i reponse headers della pagina: sono da controllare i parametri con prefisso cf (Cloudflare), come *cf-cache-status:
La stato della cache della pagina su Cloudflare é DYNAMIC e significa che le impostazioni attuali di Cloudflare non istruiscono esplicitamente Cloudflare a mettere in cache la risorsa. In piú, controllando gli headers delle risorse della pagina, come gli stili css, notiamo che il parametro cf-cloudflare ha il valore MISS, ovvero la risorsa non é stata trovato su Cloudflare e quindi é servita dal web server su cui é ospitato. Questo significa che il vostro cliente americano che sta accendendo alla vostra pagina, ospitata su un server in Italia, riceverá le vostre informazioni (html, css, js, immagini) dall’Italia, invece che da un server Cloudflare dislocato vicino a lui. Con tutto il traffico in piú che ne consegue anche all’aumentare dei clienti.
Oltretutto, siccome abbiamo modificato i DNS, quando un utente digita il vostro dominio nel browser, la richiesta viene fatta verso i DNS di Cloudflare, che non avendo in cache ancora nulla, richiede a sua volta le informazioni al server di origine.
Questo perché non abbiamo ancora delle Page Rules configurate e quindi la risorsa è stata richiesta al server web di origine (Aruba in questo caso). Occorre utilizzare le Page Rules (o regole di pagina in italiano) per implementare alcune opzioni di cache personalizzate, anche in base al bisogno del vostro sito.
Nel nostro caso, volevamo configurare Cloudflare per un sito su Aruba con Server Condiviso per aumentare le prestazioni del sito web, renderlo piú veloce e migliorare quindi l’esperienza utente. Dobbiamo quindi creare della Page Rules, e Cloudflare ne mette a disposizione 3 per ogni dominio con un account Cloudflare gratuito.
In breve: le Page Rules sono delle impostazioni che innescano determinate azioni ogni volta che una richiesta corrisponde ad un Url (o gruppo di URL).
Per esempio si puó istruire Cloudflare ad usare una politica di cache piú aggressiva, magari solo per una sezione del sito (pagine statiche per esempio), oppure operando una politica piú blanda gestendo diversamente la cache delle pagine o comunque di intere sezioni del sito.
Conclusione
Per ora concludo qui perché l’articolo su come configurare Cloudflare per un sito su Aruba con Server Condiviso (un sito WordPress oppure no) inizia a diventare troppo lungo.
C’é peró una seconda parte che prevede appunto la creazione delle Page Rules in ottica di ottimizzazione delle prestazioni di un sito web.
Quindi, dopo essere riusciti a configurare Cloudflare per un sito su Aruba, é necessario configurare le corrette Page rules su Cloudflare, vediamo qui come.