Utilizzare SSH con WordPress può essere uno dei metodi più sicuri e convenienti per accedere al vostro sito web.
È un protocollo per accedere ai file del vostro sito il cui termine significa ‘Secure Shell’. Se disponete delle credenziali di accesso, potete utilizzarlo per accedere al sito da qualsiasi luogo in cui vi trovate, sapendo che lo state facendo in modo sicuro.
In questo post, imparerete alcuni dei comandi SSH più utili da utilizzare con WordPress.
Cominciamo!
Cosa È SSH e Come si Usa con WordPress?
SSH è un protocollo sicuro per accedere ai file del vostro sito WordPress. Questo post si concentra sui comandi che potete usare, quindi non entrerò nei dettagli che riguardano il modo in cui utilizzare SSH per accedere al vostro sito, ma di questo vi fornirò solo un riassunto.
Cosa È SSH?
SSH, o ‘Secure Shell’, è un protocollo che si può utilizzare per accedere a file e directory su un server remoto. Le specifiche di SSH lo definiscono come:
“Un protocollo per l’accesso remoto sicuro e altri servizi di rete sicuri su una rete non sicura”.
Invece di utilizzare il browser web, per accedere al sito su SSH utilizzate il Terminale (su macOS o Linux) o un client come PuTTY (su Windows).
Come si Usa SSH con WordPress?
Per un sito WordPress, SSH vi darà accesso ai file dello stesso WordPress, oltre che ai file che avete aggiunto alla directory wp-content, sia tramite le schermate di amministrazione che direttamente.
È probabile che lo utilizziate per lo più nella directory wp-content, e occasionalmente nella directory root per accedere a file come wp-config.php.
Per lavorare sul vostro sito utilizzando SSH, aprite il terminale o un client come PuTTY, e accedete al server. Per farlo avrete bisogno di quattro informazioni:
- Indirizzo del server.
- Nome utente.
- Password.
- Porta.
Per collegarvi via SSH con Kinsta, dovrete cercare queste informazioni in MyKinsta. Selezionate il vostro sito e cercate la sezione SFTP/SSH della schermata Info.
Copiate e incollate nella riga di comando.
Una volta fatto, potete iniziare a utilizzare i comandi SSH sul vostro sito WordPress.
Se la connessione viene rifiutata, potrebbe essere per tanti motivi. Leggete la nostra guida alla analisi dei problemi di connessione SSH rifiutata per ripristinare la connessione.
Che Cosa È PuTTY e Come si Usa?
Se utilizzate macOS o Linux, avete già l’interfaccia necessaria per accedere al vostro sito WordPress tramite SSH. Potete semplicemente utilizzare il terminale integrato.
Ma se siete su Windows, per utilizzare SSH dovrete installare un client.
Il cliente SSH più popolare è PuTTY. Dovrete scaricarlo e installarlo prima di poter accedere al vostro sito da Windows. Una volta fatto, in PuTTY userete gli stessi comandi SSH che si utilizzano nel Terminale.
Come Automatizzare i Comandi SSH con WordPress?
Uno dei vantaggi dell’utilizzo di SSH per accedere al vostro sito WordPress è la possibilità di automatizzare i comandi che utilizzate di frequente.
Per farlo si utilizza WP-CLI, l’interfaccia a riga di comando di WordPress. Si tratta di un’interfaccia che consente di accedere ad una libreria di comandi specifici di WordPress che si possono utilizzare in aggiunta a quelli forniti da SSH.
L’utilizzo di WP-CLI consente di automatizzare le attività di gestione di WordPress, come l’aggiornamento dell’installazione di WordPress, l’installazione di plugin e la configurazione di server remoti. L’utilizzo della riga di comando velocizza il processo e può aumentare di molto l’efficienza di uno sviluppatore.
Vantaggi dell’Utilizzo di SSH con WordPress
Utilizzare SSH con WordPress offre una serie di vantaggi:
- È sicuro. Significa che potete accedere al vostro server in remoto da qualsiasi luogo vi troviate, sapendo che lo state facendo attraverso un’interfaccia sicura.
- È comodo. Vi dà accesso da qualsiasi luogo vi troviate. Non è necessario accedere alle schermate di amministrazione di WordPress o avere un browser web in funzione.
- È veloce. In molti casi, utilizzare i comandi SSH può essere molto più veloce rispetto all’utilizzo delle pagine di amministrazione di WordPress o all’accesso ai file tramite SFTP.
Ora che sapete cos’è SSH e come funziona con WordPress, diamo un’occhiata ai comandi SSH utilizzati più di frequente che potete utilizzare con WordPress.
27 Comandi SSH da Utilizzare con WordPress
Il protocollo SSH ha una vasta gamma di comandi. Di seguito ho elencato quelli più utilizzati e li ho raggruppati per comodità in categorie.
Comandi di Directory
C’è una serie di comandi SSH che potete utilizzare per lavorare con le directory o per manipolare le directory (o cartelle) del vostro sito WordPress.
pwd – Mostra la Directory Corrente (Percorso Completo per Arrivare Dove Siete Ora)
Il comando pwd
visualizzerà il percorso completo della directory dove vi trovate in questo momento nel vostro server. Se lo digitate al primo accesso al vostro sito, vi dirà su quale server vi trovate.
Usate questo comando dopo esservi spostati nelle vostre directory, e avrete maggiori informazioni su dove vi trovate esattamente. Questo comando può essere utile per controllare la vostra posizione, in quanto non avete la rappresentazione visiva che avreste con un editor di codice o un client FTP.
ls – Mostra il Contenuto della Directory (Elenca i Nomi dei File)
Il comando ls
visualizzerà il contenuto della directory corrente.
Potete anche utilizzare parametri aggiuntivi per personalizzare o aggiungere informazioni a quelle che vi restituisce il comando ls
:
ls -a
visualizza i file nascosti.ls -l
mostra i dettagli dei file per il contenuto della directory, ad esempio permessi, proprietà, data, ecc.ls -s
mostra la dimensione dei file, in blocchi.ls -s -h
mostra le dimensioni in forma leggibile.
Ricordatevi di digitare uno spazio tra il comando ed eventuali parametri.
cd – Cambia Directory
Il comando cd
vi permetterà di spostarvi in un’altra directory. Potete spostarvi nelle sottodirectory della directory corrente, oppure potete spostarvi verso l’alto o attraverso, con i parametri corretti.
Il comando sottostante mi porta dalla directory principale del mio server alla directory pubblica:
cd public
Per risalire l’albero delle directory o per tornare indietro da dove si è partiti, utilizzate uno di questi parametri:
cd ..
va nella directory immediatamente sopra la vostra posizione attuale.cd ../foldername
vi sposta lateralmente in un’altra cartella all’interno della cartella sopra di voi.cd -
va alla directory precedente.cd /
vi porta alla directory principale.
Nella schermata qui sotto, mi sono spostato nella directory public e ne ho elencato il contenuto. Se avete esperienza con i contenuti di un’installazione WordPress, questo vi sarà familiare:
mkdir – Creare una Nuova Directory
Con il comando mkdir
è possibile creare una nuova directory nella directory corrente.
Quindi, se siete all’interno della cartella di un plugin e volete aggiungere una directory per il foglio di stile, potete utilizzare questo comando:
mkdir styles
Questo aggiungerà una nuova directory vuota alla directory in cui vi trovate al momento. Se volete aggiungere una directory ad una cartella in basso nella struttura, digitate la struttura. Quindi, dalla cartella wp-content, si potrebbe digitare:
mkdir /plugins/myplugin/styles
rmdir – Rimuovi Directory
Il comando rmdir
cancellerà una directory dal vostro server. Fate attenzione ad usare questo comando perché non sarà possibile annullarlo!
Come per mkdir
, potete utilizzare rmdir
per rimuovere una directory nella vostra posizione corrente:
rmdir styles
Oppure potete utilizzare rmdir
per rimuovere una cartella più in basso nella struttura:
rmdir /plugins/myplugin/styles
Potete anche utilizzare rm
per rimuovere le directory, con l’aggiunta di altri parametri.
rm * foldername
– cancella tutti i file o il contenuto di una directory.rm -r foldername
– cancella la cartella e le cartelle al suo interno.
Comandi di File o Directory
I seguenti comandi possono essere utilizzati sia con file che con cartelle/directory.
cp – Copia File o Cartelle
Potete utilizzare il comando cp
sia con i file che con le cartelle per copiarli in un’altra posizione. Dovrete specificare dove si desidera che il file o la cartella venga copiato.
cp filename.extension /dir/
Questo comando specifica il nome del file da copiare (compresa la sua estensione) e la posizione in cui verrà copiato.
Se volete rinominare il file (cioè se la nuova versione deve avere un nome diverso dall’originale), allora potete anche specificare il nuovo nome del file.
cp filename.extension /dir/filename.extension
Questo comando dispone di una serie di parametri:
cp -r
copia tutto il contenuto di una cartella.cp -f
cancella il file di destinazione se c’è già un altro file con lo stesso nome e lo sovrascrive con quello nuovo.cp -i
vi dà un messaggio di avvertimento prima di copiare.cp -u
sovrascrive il file nella cartella di destinazione solo se i file hanno un contenuto diverso.cp -n
controlla prima se il file esiste già e, in caso affermativo, questo non viene copiato. Non sovrascrive il file.cp -a
archivia il file originale.
mv – Sposta File o Cartelle
Oltre a copiare file e cartelle, è possibile anche spostarli. Per farlo, usate il comando mv
.
Come per il comando cp
, potete spostare un file o una cartella e mantenere lo stesso nome o spostarla e rinominarla.
mv filename.extension /dir/
sposta un file e mantiene lo stesso nome.mv filename.extension /dir/filename1.extension
sposta e rinomina il file.mv filename/ ..
sposta un file una cartella sopra.
zip – Comprime File e Cartelle
Un altro comando che potete utilizzare con i file o le cartelle è il comando zip
, che potete eseguire per comprimere una cartella e il suo contenuto. Dovrete includere il nome del file/cartella che sarà compresso come file zip. Potete utilizzarlo con parametri che specificheranno se si vuole cancellare o meno la cartella originale.
zip -r filename.zip foldername.zip
comprime una cartella ma non la cancella.zip -m filename.zip foldername
comprime una cartella e la cancella, lasciando solo la versione zippata della cartella.zip -d filename.zip foldername
cancella un file dall’archivio zip esistente specificato.zip -u filename.zip foldername
aggiorna un file all’interno di un archivio zip esistente: utile se avete aggiornato il file originale e non volete cancellare il file zip ma crearne uno nuovo.
Quando poi si elenca il contenuto della cartella, si vedrà il file zip e la cartella originale se avete utilizzato zip -r
, ma solo il nuovo file zip se avete utilizzato zip -m
.
unzip – Decomprime una Cartella
Il comando unzip
decomprimerà un file zip nella vostra directory ed estrarrà il suo contenuto per creare la cartella o i file da cui è stato originariamente generato:
unzip twentyseventeen.zip
Non utilizzate questo comando se non avete cancellato la cartella originale quando l’avete zippata. Non sovrascriverà la cartella originale. Al contrario, usate zip -m
per cancellare la cartella originale quando la zippate, oppure utilizzate rm
per cancellarla prima di decomprimere il file zip.
Potete anche aggiungere parametri ad unzip per personalizzarne l’uso:
Unzip filename.zip -x excludedfile.zip
escluderà un file e impedirà che venga decompresso con il resto.unzip filename1.zip filename2.zip filename3.zip
decomprimerà più file. È possibile utilizzarlo con tutti i file zip che si desidera, ed è molto più veloce che farlo in un client FTP.
tar – Creare e disimballare archivi compressi
Il comando tar
vi permetterà di creare e decomprimere gli archivi .tar.gz, che sono un’alternativa all’utilizzo degli archivi .zip. Potrete utilizzare lo stesso comando per comprimere e decomprimere file o cartelle.
Per comprimere un file o una cartella, utilizzate tar cvzf
. La sintassi per comprimere una cartella è:
tar cvzf archivename.tar.gz directoryname
Qui sopra, archivename
è il nome del file di archivio da creare e directoryname
è il nome della cartella da comprimere.
E per decomprimere la cartella, usate tar xvzf
:
tar xvzf archivename.tar.gz
Le quattro lettere rappresentano istruzioni specifiche:
c
dice a tar di comprimere i file.x
dice a tar di estrarre i file.v
sta per verbose e dice a tar di visualizzare i nomi dei file interessati dal comando.z
dice a tar di decomprimere l’archivio.f
dice a tar che state fornendo il nome dell’archivio.
Comandi per i File
Qui di seguito riportiamo un elenco dei più comuni comandi SSH specifici per i file.
touch – Crea un Nuovo File
Per creare un nuovo file vuoto sul server, utilizzate il comando touch
:
touch style.css
È possibile creare un file solo nella directory corrente, quindi si dovrà navigare fino alla cartella prima di utilizzare il comando touch
.
cat – Mostra il contenuto del file
Per visualizzare il contenuto di un file, utilizzate il cat
.
Questo visualizzerà l’intero contenuto di qualsiasi file all’interno del Terminale o di PuTTY.
grep – Ricerca di una Frase Specifica
Se sapete che il file da esaminare è lungo, e sapete anche quali contenuti state cercando, potete utilizzare il comando grep
per cercare contenuti specifici.
Di seguito ho cercato la parola “sidebar” nel file sidebar.php in un tema.
In questo modo verranno visualizzate tutte le righe che contengono il termine di ricerca.
Se volessi cercare una stringa o più di una parola, dovrei racchiuderla tra virgolette:
grep "nav class" footer.php
Il comando grep
ha anche una serie di parametri che potete utilizzare per personalizzare la vostra ricerca:
grep -i "string" filename
cerca una stringa nel file senza distinguere tra maiuscole e minuscole.grep -c "string" filename
conta il numero di istanze di una stringa nel file.grep -l "string" *
elenca i file che contengono la stringa.grep -n "string" filename
visualizza il numero di riga (o i numeri di riga) insieme al risultato
head – Legge le Prime 10 Tighe di un File
Se volete solo leggere le righe di apertura di un file, allora usate il comando head
:
head filename.extension
tail – Legge le Ultime 10 Righe di un File
Il comando tail
funziona allo stesso modo del comando head
, ma, a differenza di quest’ultimo, legge le ultime dieci righe di un file:
tail filename.extension
find – Cerca File e Directory
Il comando find
consente di cercare tra i file e le directory restituisce quelli che soddisfano i criteri specificati. Il comando sottostante cercherà nella directory corrente tutti i file il cui nome include ‘index’:
find . -name "index"
La sintassi è:
find operator criterion string
Gli operatori disponibili sono:
/
(barra) cerca in tutto il sistema..
(punto) cerca nella directory di lavoro.~
(tilde) cerca nella directory home.
Quindi, se cambiate il comando di cui sopra con questo, str
cercherebbe nell’intero sistema, non solo nella directory corrente:
find / -name "index"
I criteri che potete utilizzare includono:
-name
– nome del file.-user
– file appartenenti ad un determinato utente.-size
– file di una determinata dimensione.-type -d
– il tipo di directory, cioè solo le directory di ricerca.-type -f
– il tipo di file, cioè solo i file di ricerca.
Il termine di ricerca può essere una stringa a piacere. Assicuratevi di racchiuderla tra virgolette.
du – Restituisce le Dimensioni del File
Se volete conoscere le dimensioni di uno o più file nella vostra installazione di WordPress, utilizzare il comando du
(Disk Usage):
du -h wp-config.php
Inserendo -h l’utilizzo del disco sarà visualizzato in formato leggibile dall’uomo, invece che come blocchi.
Sono disponibili parametri extra:
du -h
visualizzerà il risultato in un formato leggibile dall’uomo.du -m
visualizzerà il risultato in MB.du -k
visualizzerà il risultato in KB.du -T
mostrerà il tipo di file system in una colonna supplementare.du -ht /directoryname
vi consente di visualizzare informazioni su una specifica directory.du help
elenca altre opzioni che è possibile utilizzare, con le relative descrizioni.
chmod – Modifica le Autorizzazioni di un File
Il comando chmod
consente di modificare i permessi di un file:
chmod 464 filename.extension
Per determinare i permessi, utilizzate il Calcolatore dei permessi Unix e inserite nel comando il numero che vi viene fornito.
nano – Modifica un File con il Nano Text Editor
Se avete utilizzato il comando touch
per creare un nuovo file, o il comando cat
per mostrare il contenuto di un file esistente, potreste ora voler modificare il file.
Potete farlo utilizzando l’editor di testo nano
con il comando nano:
nano filename.extension
Questo consente di modificare i file direttamente dalla riga di comando.
Attenzione: annullare il vostro lavoro è molto più difficile che utilizzando un editor di codice o un sistema di controllo versione. Effettuate modifiche minori solo se siete sicuri di poterlo fare.
Per navigare nel file, utilizzate i tasti cursore e le scorciatoie da tastiera elencate nella parte inferiore dello schermo. Per uscire dal file e tornare al terminale, usate Ctrl-X.
vim – Modifica un File con l’Editor di Testo Vim
L’editor di testo vim funziona più o meno come il nano editor e vi si accede tramite il comando vim
. Quello che decidete di utilizzare dipenderà dalle vostre preferenze personali:
vim filename.extension
wget – Scarica File
Con il comando wget
potete scaricare file da internet. I file saranno scaricati nella directory in cui vi trovate al momento. Dovrete includere il percorso completo del file che volete scaricare:
wget https://site.com/filename.ext
Questo scaricherà il file filename.ext da site.com e lo memorizzerà nella vostra directory corrente.
Comandi del Terminale
Ora diamo un’occhiata ad alcuni dei comandi più usati per aiutarvi a lavorare con l’interfaccia del Terminale (o con PuTTY).
clear – Pulisce lo Schermo
Se il vostro schermo vi sembra disordinato, basta digitare clear
per ripulirlo e ritrovarvi di nuovo su uno schermo vuoto. Questo comando è utile se volete un ambiente di lavoro pulito o se volete nascondere il vostro lavoro se vi trovate in un luogo pubblico:
reset – Rimuove l’Output dal Terminale
Il comando reset
rimuoverà tutti i comandi e l’output dallo schermo del terminale e pulirà lo schermo.
history – Mostra gli Ultimi 50 Comandi Utilizzati
Se non siete sicuri di cosa avete fatto di recente e volete ripetere o annullare qualcosa, usate il comando history
per visualizzare una lista dei 50 comandi più recenti.
screen – Riprendere le sessioni SSH
Screen è un terminal multiplexer, cioè uno strumento che consente di estendere una singola sessione di terminale con più sessioni virtuali. Con Screen, potete passare da una “finestra” diversa che esegue diverse attività senza dover aprire due connessioni SSH sul vostro server.
Ad esempio, potete usare nano
in una finestra e passare a un’altra finestra per scaricare un file di grandi dimensioni utilizzando wget
. Inoltre, lavorare in una sessione di Screen permette di riprendere l’attività dopo essersi ricollegati a causa di una connessione SSH o di un errore di rete. Per gli utenti di WordPress, Screen è utile per eseguire in modo sicuro lunghe attività come l’importazione di database, la ricerca regex e sostituire i processi con wp-cli.
Vediamo più da vicino come usare Screen in Linux.
Come installare Screen in Linux
Per prima cosa, assicuratevi che Screen sia installato sul vostro server con il comando sottostante.
screen --version
Se Screen è installato, vedrete qualcosa di simile:
kinstalife@mYJ-kinstalife:~$ screen --version
Screen version 4.03.01 (GNU) 28-Jun-15
Altrimenti, usate i comandi sottostanti per installare Screen.
Ubuntu e Debian
sudo apt update
sudo apt install screen
CentOS e Fedora
sudo yum install screen
Anche se il vostro terminale non sembra diverso da prima, ora siete in una sessione di Screen! Proviamo ora a creare una nuova finestra nella sessione Screen.
In Linux Screen, tutte le scorciatoie iniziano con Ctrl+A
. Per creare una nuova finestra, premete Ctrl+A
, lasciate andare, poi premete c
. Per visualizzare le due finestre, premete Ctrl+A
seguito da "
.
Come passare da una finestra all’altra
La schermata sottostante mostra due finestre – 0 e 1. Da questa finestra è possibile usare i tasti freccia per spostarsi su e giù tra le diverse finestre. Premete “Enter” o “Return” su una finestra evidenziata per selezionarla. Se conoscete il numero di una specifica finestra, potete anche usare Ctrl+A
e numero
per selezionarla.
Infine, potete anche usare i comandi sottostanti per navigare verso la finestra successiva o precedente.
- Finestra successiva –
Ctrl+A
n
- Finestra precedente –
Ctrl+A
p
Come uscire da una sessione di Screen
Per uscire da una sessione di Screen, premete Ctrl+D
. Il terminale mostrerà “[screen is terminating]”: questo indica che la sessione Screen non è più attiva.
Come gestire più sessioni di Screen in Linux
Una delle caratteristiche più potenti di Screen è la possibilità di usare più sessioni di Screen. Ad esempio, è possibile avere uno Screen per eseguire la ricerca e sostituzione delle attività sul database, uno per navigare nel filesystem di WordPress e un altro per aggiornare i plugin in wp-cli. La cosa migliore di tutte, è la possibilità di staccare e riprendere le sessioni di Screen a vostro piacimento. Questo significa che potete riprendere un lungo processo di importazione del database anche se perdete la connessione al server.
Prima di andare avanti, usate Ctrl+D
per uscire dalla vostra sessione Screen esistente, se applicabile. Dopo aver terminato la sessione Screen, usate il comando qui sotto per creare una nuova sessione. Notate come questo comando vi permette di impostare un nome univoco per la sessione. Sentitevi liberi di sostituire “session1” con qualsiasi cosa vogliate.
screen -S session1
Dopo aver creato la nuova sessione, usate il comando screen -ls
per elencare tutte le sessioni attive dello schermo. Nella schermata sottostante, si può vedere la session1
, la sessione creata dal comando precedente.
Come usare Screen in Linux
Dopo aver installato screen
, usate il comando screen per avviare una nuova sessione Screen. Dovreste vedere un testo introduttivo come lo screenshot qui sotto. Premete “Enter” o “Return” sulla tastiera per terminare l’inizializzazione di Screen.
Come interrompere Screen su Linux
Quando usate Ctrl+D
per uscire da una sessione di Screen, la sessione termina completamente. E se voleste mantenere la sessione in background mentre lavorate su qualcos’altro? È qui che entra in gioco l’interruzione di sessione. Quando interrompete una sessione Screen, questa continua a scorrere in background. L’interruzione è utile per mantenere attivi in background lunghi processi in esecuzione, come le importazioni di database e l’indicizzazione di Elasticsearch.
Per interrompere una sessione di Screen, basta premere Ctrl+A
seguito da d
. Se eseguite screen -ls
dopo aver interrotto, vedrete un parametro “(Detached)” per la sessione Screen.
Dopo aver interrotto una sessione di Screen, è possibile creare un’altra schermata.
screen -S session2
Come ripristinare Screen su Linux
Per ripristinare una schermata Linux interrotta, usate il comando qui sotto. Assicuratevi di sostituire “session1” con il nome della sessione che volete ripristinare.
screen -x session1
Nella schermata sottostante, vedete che “session1” è ora avviata e “session2” è interrotta.
Screen è un potente strumento per il multitasking nel terminale. Permette di eseguire più ambienti distinti per compiti diversi senza dover effettuare più connessioni SSH. Vi consigliamo di usare Screen se state eseguendo un processo che richiede molto tempo sul vostro sito WordPress.
Altri Comandi Utili Quando si Lavora via SSH
I comandi che seguono non rientrano tra le voci precedenti, ma potrebbero essere utili per lavorare con il vostro sito WordPress via SSH.
netstat – Mostra Connessioni di Rete
Digitate il comando netstat
e vedrete i dettagli della vostra connessione di rete e del vostro stato:
exit – Esce dal Server Remoto
Quando avete finito di lavorare con il vostro sito WordPress remoto, digitate il comando exit
per uscire dal server e tornare alla vostra macchina locale.
Dovreste sempre farlo quando finite di lavorare, in modo che nessun altro possa accedere al vostro server tramite SSH.
Riepilogo
Accedere al vostro sito WordPress tramite SSH vi offre un modo sicuro e conveniente per lavorare con i file del vostro sito senza dover aprire un client FTP o un browser web.
Grazie ai comandi qui elencati, dovreste essere in grado di eseguire su SSH la maggior parte delle attività da svolgere in WordPress e fare più lavoro più velocemente.
Lascia un commento