Installare Magento2 in quattro semplici passaggi

Come si può installare Magento2 semplicemente? Non si può. Sì. perchè Magento2 non è un programmino da 4 pagine in php, è un microcosmo di file, database, indici, cache e un sacco di altre diavolerie, che complicano parecchio la vita a chi deve configurare un nuovo sito di e-commerce.

Ovviamente questo articolo non è pensato a chi ha un cPanel o Plesk con Softaculous o Installatron configurati, in quel caso bastano un paio di clic e l’installazione e configurazione di Magento 2 è fatta.

Installare Magento2 via SSH

Requisiti:

  • SSH
  • Database MySQL configurato e completamente vuoto
  • Avere la saggia consapevolezza di quello che stai facendo

Magento2 si installa abbastanza facilmente tramite SSH, una volta che sei collegato al server, per prima cosa posizionati nella cartella che ospiterà l’ecommerce, nel mio caso nella root del mio spazio: public_html

cd public_html

installa il composer, se non è già stato installato dal sistemista.

curl -sS https://getcomposer.org/installer

Per maggiori informazioni sull’installazione di Composer, puoi trovare la documentazione ufficiale qui: https://getcomposer.org/

Ora, grazie a GIT (che è quasi sempre installato sui webserver, perchè è molto comodo a chi lo configura inizialmente), cloniamo l’ultima release dal Github di Magento (che adesso è di proprietà Adobe)

git clone https://github.com/magento/magento2.git

git clone https://github.com/magento/magento2.git

Qui inizia il processo di download e scompattamento di Magento2 nella cartella /public_html/magento2. Io preferisco avere l’installazione nella baseroot, quindi sposto tutto in /public_html

mv public_html/magento2/* public_html/.* .

A questo punto abbiamo tutti i file pronti per installare Magento2 via SSH: 

composer install

Nota bene: l’ultima release di Magento2, in questo momento la 2.2.6, richiede che sia configurato il PHP 7.2, nel mio caso, pur avendo configurato un PHP 7.2 all’hosting, quando parte l’installer, carica la versione PHP 7.0.3 e si blocca, quindi per il MIO SERVER (sottolineo che solo per il mio, mica per tutti) devo “forzare” di usare il composer con la versione di PHP 7.2 quindi uso:

composer install -ea_php 72

Ora parte l’installazione e se tutto va bene, Magento2 è pronto per essere configurato aprendo il browser.

WordPress in sicurezza

Avere WordPress in sicurezza completa è praticamente un mito, ma se hai già visto un wordpress hackerato e con malware installati e vuoi evitare di piangere sangue, segui queste piccole regole.

Anzitutto perchè è importante un WordPress in sicurezza: perchè anche se il tuo blog (o quello del tuo cliente) è il semplice blog della tifoseria della squadra di biglie dell’oratorio, è comunque esposto sul web, connesso con altri siti e raggiungibile da tutto il mondo. Non pensare solo ai danni che un malware possa portare al tuo sito, come pubblicare pagine, testi e foto che tu non vuoi per non rovinare il tuo business, ma se il tuo sito dovesse essere compromesso, potrebbe essere un veicolo di distribuzione verso altri siti e potresti essere accusato a tua volta di essere un hacker che sta infettando. Non è una bella cosa. Guarda ad esempio questo sito: http://www.designdevelopment-group.com/ che ha al suo interno pagine hackerate come questa: http://archive.fo/1nZze (ho usato archive.is per evitare divulgazioni di pagine infette)

Spesso mi capita di essere chiamato in soccorso di WordPress che sono compromessi e il mio compito è di analizzare file per file (e sono tanti) alla ricerca di codici malevoli, e quasi sempre il problema è perchè non sono state seguite delle semplici regole di sicurezza. Ricorda che l’intervento di uno specialista può costarefino a 250€/ora, e a volte sono strettamente necessari. Conviene pensarci prima no?

Danni del non avere WordPress in sicurezza

un sito infettato

 

ATTENZIONE: è un post un po’ tecnico e nerd, leggi e agisci solo se sai cosa stai per fare (ti ho avvisato)

ATTENZIONE 2: se può essere compromesso il sito della FBI o della Casa Bianca, non dare per scontato che queste indicazioni siano sufficienti per il tuo blog.

 

Regola 1: i backup per avere WordPress in Sicurezza

Backup. Esegui almeno un backup al giorno del database e uno alla settimana di tutti i dati. E non nello stesso hosting, perchè se un malware dovesse entrare, verrebbero compromessi anche i backup e puoi dire ciao a WordPress in sicurezza. Controlla almeno una volta al mese che i backup ci siano e siano funzionati. Io uso UpdraftPlus (https://wordpress.org/plugins/updraftplus/) con backup in remoto su sFTP o Google Drive.

Regola 2: la password per avere WordPress Sicuro

Password. Ahh, facile dire “eh, ma me la dimentico”. Ti svelo un trucco: esiste la possibilità di “salvare” la password (uuhhhh). Una password robusta è indispensabile. Secondo te perchè quando si crea un utente in WordPress la password è di 32 caratteri alfanumerici e con la punteggiatura? Perchè lo sanno che quello è un punto debole. Personalmente ritengo che si dovrebbe implementare di default anche un token esterno come per le operazioni di remote banking. Il plugin Google Authenticator (https://wordpress.org/plugins/google-authenticator/) funziona bene e normalmente lo installo nei siti che gestisco.

Altro fattore da non sottovalutare è creare utenti amministrativi come se piovesse. L’Admin dovrebbe essere UNO solo (e non chiamarsi “admin”, ovviamente). Per tutti gli altri utenti scegli “Editori” o “Autori”. Se il tuo cliente ti richiede di essere nomitato amministratore, fagli capire bene che da quel momento si assume tutte le responsabilità del caso.

Regola 3: gli aggiornamenti

Nota bene che quando si parla di aggiornamenti, difficilmente si intendono migliorie estetiche o di “cagatine” che puoi farne a meno. Qua parliamo di sicurezza informatica. Gli aggiornamenti sono fatti per tappare dei buchi, i famosi BUG che sono in ogni riga di codice. Il codice è scritto da programmatori umani che tutti noi possono commettere errori che quindi vanno corretti oppure perchè è stato scoperta una falla da qualcuno e si corre ai ripari per chiuderla. Gli hacker non fanno altro che sfruttare il lasso di tempo tra quando è stato scoperto il buco e quando tu lo ripari. Facciamo un esempio: hai installato un plugin famoso in tutto il mondo come Visual Composer. E’ installato su 2milioni di wordpress e ad un certo punto un hacker scopre che tramite una chiamata particolare ad un file che viene installato da Visual Composer si può aprire una sorta di porta da cui installare un malware. L’hacker ci tiene a vantarsi con gli amici (hacker) e pubblica su un forum le istruzioni per sfruttare questa cosa. Ora tutto il mondo hacker sa come inserire malware in Visual Composer e iniziano gli attacchi. A questo punto gli autori di Visual Composer modificano il codice di quel file e rilasciano un aggiornamento per evitare che tutti i siti con installato VC vengano infettati. Tu che fai? Aspetti di avere il sito compromesso o corri subito ai ripari?

Aggiornare, aggiornare, aggiornare.

L’unico consiglio per esperienza è di aspettare 24 dal rilascio perchè spesso capita che la primissima versione dell’aggiornamento venga subito ri-aggiornata.

Prima di fare QUALSIASI aggiornamento, lancia sempre un backup. Potrebbe saltare tutto come è successo alla mia amica Francesca, che durante un aggiornamento del core di WordPress, ha perso TUTTE le immagini del suo blog (e in quel casso sono danni, anche economici)

Regola 4: un hosting dedicato a WordPress

Hosting per wordpress: non è che serva per forza un server dedicato o una VPS, ma evita di appoggiarti a hosting condivisi low-cost. Fattore importante da valutare è che abbia dei backup automatici sempre disponibili e che giri abbastanza bene (purtroppo dipende da un sacco di fattori legati allo specifico WordPress, ai plugin installati e al tema)

Regola 5: un plugin per la sicurezza di WordPress

Sì, esistono dei plugin per aumentare o verificare WordPress in sicurezza e sono abbastanza semplici da usare. I migliori free sono sicuramente Sucuri Security (https://wordpress.org/plugins/sucuri-scanner/) e Wordfence Security (https://wordpress.org/plugins/wordfence/) entrambi molto validi hanno la possibilità di installare un firewall, limitare i tentativi di login e scansionare i file comparandoli alle librerie per vedere se sono stati modificati da malware o altro.
Personalmente preferisco Wordfence, ma solo perchè lo conosco da più tempo. La versione Premium ha molte funzioni in più, compresa la già citata Two Factor Authentication e un firewall più potente contro gli attacchi.

Consiglio 1: modifiche .htaccess per mettere  Wordpress in sicurezza

occhio e occhio. Le modifiche al file .htaccess devono essere fatte solo se hai idea di quello che stai facendo, non solo perchè l’hai letto in un blog come questo e quindi ti fidi a bomba.

Per miglorare WordPress in sicurezza, ci sono alcune modifiche attuabili sul file .htaccess per limitare la libertà di movimento a certi malware e attacchi. Per fare questo potrebbe essere utile imparare a collegarti al tuo sito tramite ssh.

  • disabilitare il File Editing online di wordpress, che pur essendo comodo e simpatico, è una lama da 25cm in mano ad un bambino. Per disabilitarlo, aggiungi al file wp-config.php
    // Disabilita il file editing online
    define( 'DISALLOW_FILE_EDIT', true );
    
  • Disabilita l’esecuzione di PHP nella cartella uploads. Visto che in quella cartella è facile che qualche plugin permetta il caricamento di file, è una buon preda per gli hacker e malware per annidare file eseguibili in .php che lancino operazioni. Meglio evitare, creando un file .htaccess nella cartella /wp-content/uploads, contentente:
    <Files *.php>
    deny from all
    </File>
    

    oppure abilitando direttamente da Wordfence l’opzione.

  • Disabilitare la funzione XML-RPC: se non sai cos’è, vuol dire che puoi farne a meno. Serve per poter pubblicare su wordpress da applicazioni esterne o tramite email. Se non la usi, disabilita tramite il file .htaccess nella root del sito:
    # Blocca WordPress xmlrpc.php
    <Files xmlrpc.php>
    order deny,allow
    deny from all
    </Files>
    

    Se vuoi abilitarla per uno specifico indirizzo IP, aggiungi prima di

    allow from xxx.xxx.xxx.xxx
  • Disabilita la visualizzazione e navigazione per cartelle. Questa dovrebbe essere già disabilitata di default dall’hosting, ma aggiungere questa stringa alla fine del file .htaccess della root non fa male.
    Options -Indexes

Consiglio 2: proteggere l’accesso alla cartella wp-admin

come mettere l'admin di wordpress in sicurezza

come mettere l’admin di wordpress in sicurezza

Per blindare l’accesso alla cartella wp-admin e aumentare la possibilità di avere Wordress in sicurezza,  si può utilizzare la funzione dei server di impedire l’accesso ad una cartella se l’utente non è autorizzato. In cPanel lo si attiva con un paio di clic e una bella password, mentre tramite .htaccess la procedura è un po’ più lunga: si crea un file .htpasswds usando un cripatore come questo generatore si carica il file in una cartella che sia al di fuori dal public_html, ad esempio /home/utente/.htpasswds/sito-sicuro, poi si crea un file .htaccess nella cartella /wp-admin contenente:

AuthName "area sicura"
AuthUserFile /home/utente/.htpasswds/sito-sicuro
AuthGroupFile /dev/null
AuthType basic
require user nomeUtente

 

Cancellare la cache mod_pagespeed di Google

Problemi con la cache mod_pagespeed? Hai aggiornato una foto del WordPress e non appare ancora nel sito? Hai controllato l’HTML e ti sei accorto che è stata rinominata con filename.png.pagespeed.xx.akakakakakka.png e di sicuro non hai nominato tu quel file così? Continue reading

SSL, wordpress e le immagini mancanti. una storia vera.

Hai installato il certificato SSL su WordPress (anche Let’s Encrypt) e ora hai perso tutte le foto?
Sei disperato e non vedi una via d’uscita? Stai sinceramente pensando che un tempo tutto era più semplice  e ora odi Google perchè ha scassato con questa storia della criptazione con https? Continue reading

Aggiungere un utente in WordPress via MySQL

Perchè dovrebbe interessarmi come fare per aggiungere un utente WordPress via MySQL? La situazione è questa: hai un nuovo cliente che possiede già una installazione WordPress, ma della quale non ha l’accesso Administrator. Continue reading

Come si realizza una foto sferica per facebook con Photoshop

Come si realizza una foto sferica per Facebook usando Photoshop? Con un trucchetto, semplice semplice. Continue reading

Back to top