SSH gebruiken om toegang te krijgen tot WordPress is een van de meest veilige en makkelijkste methoden.

SSH staat voor “Secure Shell” en is een protocol om toegang te krijgen tot de bestanden van je site. Zolang je de inloggegevens hebt, kun je het gebruiken om waar ook ter wereld naar je site te gaan, met de zekerheid dat je altijd de meest veilige verbinding hebt.

In dit artikel zullen we een aantal van de handigste SSH commando’s uitleggen die je bij WordPress kunt gebruiken.

Laten er maar meteen induiken!

Wat is SSH en hoe gebruik ik het bij WordPress?

SSH is een beveiligingsprotocol om toegang te krijgen tot bestanden op je WordPress site. Dit artikel gaat vooral over de commando’s die je daarbij kunt gebruiken, dus ik zal niet gedetailleerd uitleggen hoe je via SSH verbinding kunt maken met je site. Toch geef ik je een korte samenvatting om je op weg te helpen.

Wat is SSH?

SSH of “Secure Shell” is een protocol om op afstand toegang te krijgen tot bestanden en mappen op een server. De SSH specificaties definiëren het op de volgende manier:

“Een protocol voor het op een veilige manier op afstand inloggen en voltooien van netwerkactiviteiten via een onbeveiligd netwerk.”

In plaats van je webbrowser kun je Terminal (voor macOS of Linux) of een client zoals PuTTY (voor Windows) gebruiken om via SSH verbinding te maken met je site.

Hoe gebruik ik SSH voor WordPress?

Bij een WordPress site geeft SSH je toegang tot de WordPress bestanden zelf en eventuele extra bestanden die je hebt toegevoegd aan de wp-content map.

Je zult waarschijnlijk vooral de map wp-content gaan gebruiken en soms bestanden uit de hoofdmap, zoals wp-config.php.

Om via SSH op je site te werken, open je Terminal of de client en maak je verbinding met je server. Om dit te doen heb je de volgende informatie nodig:

Alle informatie om via SSH verbinding te maken met Kinsta kan je vinden in MyKinsta. Selecteer de site en ga naar het SFTP/SSH deel van het infoscherm.

MyKinsta SSH gegevens

MyKinsta SSH gegevens

Kopieer deze informatie in de opdrachtregel.

Kinsta SSH startscherm

Kinsta SSH startscherm

Zodra je dit hebt gedaan, kan je SSH commando’s gebruiken binnen je WordPress site.

Als je verbinding wordt geweigerd, kan dat verschillende redenen hebben. Volg deze uitleg om een geweigerde SSH verbinding op te lossen om toch verbinding te maken.

Wat is PuTTY en hoe gebruik ik het?

Als je macOS of Linux gebruikt, heb je geluk. Deze software bevat namelijk al de interface die je nodig hebt om via SSH verbinding te maken met je WordPress site. Je gebruikt in dat geval de ingebouwde Terminal.

Als je Windows gebruikt, zul je een client moeten installeren om SSH te kunnen gebruiken.

De populairste SSH client is PuTTY. Je zult deze moeten downloaden en installeren voordat je vanuit Windows verbinding kunt maken via SSH. Vervolgens kun je binnen PuTTY dezelfde SSH commando’s gebruiken als in de Terminal.

Hoe kan ik SSH commando’s automatiseren voor WordPress?

Eén van de voordelen wanneer je met SSH verbinding maakt met je WordPress site, is dat je commando’s die je vaak gebruikt kan automatiseren.

Dit doe je door WP-CLI te gebruiken, de WordPress Command-Line Interface. Dit is een interface die je toegang geeft tot een reeks aan WordPress-specifieke commando’s die je kunt gebruiken bovenop de standaardcommando’s binnen SSH.

Door WP-CLI te gebruiken kun je bepaalde beheertaken binnen WordPress automatiseren, zoals het updaten van je WordPress installatie, het installeren van plugins en het configureren van remote servers. Door de opdrachtregel te gebruiken versnel je dit proces en word je dus een veel efficiëntere developer.

Voordelen van SSH met WordPress

Door SSH met WordPress te gebruiken krijg je een aantal voordelen:

Nu je weet wat SSH is en hoe het werkt met WordPress, is het tijd voor de kern van het artikel: de populairste SSH commando’s die je voor WordPress kunt gebruiken.

Dit jaar draait het allemaal om sneller en slimmer werken, en deze 20+ SSH commando's voor #WordPress helpen je enorm ⚡️Check them out here!Click to Tweet

26 SSH commando’s die je voor WordPress kan gebruiken

Het SSH protocol heeft allerlei verschillende commando’s. Hieronder noem ik de meest gebruikte, gegroepeerd in handige categorieën:

Commando’s voor mappen (locaties)

Er is een hele reeks SSH commando’s die je kunt gebruiken om locaties (of mappen) te manipuleren binnen je WordPress site.

pwd – laat de huidige locatie zien (volledig bestandspad van waar je je nu bevindt)

Het pwd commando geeft je het volledige bestandspad van waar je je op dit moment in de server bevindt. Als je dit intypt nadat je verbinding hebt gemaakt met je site, zal het je vertellen op welke server je bent.

pwd commando

pwd commando

Als je hetzelfde commando gebruikt als je dieper in je mappen bent, krijg je informatie te zien over waar je precies bent. Dit kan handig zijn, omdat je geen visueel beeld van je locatie krijgt, zoals wanneer je een code-editor of FTP client gebruikt.

Is – laat de inhoud van een locatie zien (lijst met namen van bestanden)

Het Is commando laat de inhoud van de huidige locatie zien.

ls commando

ls commando

Je kunt ook extra parameters gebruiken om informatie aan te passen of toe te voegen aan de resultaten van het Is commando:

Zorg altijd dat er een spatie ziet tussen het commando en een parameter.

ls -a commando

Is -a commando

cd – verander de locatie

Het cd commando laat je naar een andere locatie gaan. Je kunt naar submappen van de huidige locatie gaan of naar een volledig andere locatie gaan.

Het commando hieronder brengt me van de hoofdmap van mijn server naar de ‘public’ locatie:

cd public

Om naar hoger gelegen mappen of terug te gaan, kun je een van deze parameters gebruiken:

In de screenshot hieronder ben ik naar de locatie ‘public’ gegaan en laat ik de inhoud daarvan weergeven. Als je een en ander weet over hoe een normale WordPress installatie eruitziet, dan is dit waarschijnlijk een bekend beeld:

Naar de locatie

Naar de locatie “public” gaan

mkdir – maak een nieuwe locatie

Met de mkdir opdracht kun je een nieuwe locatie aanmaken binnen de huidige locatie.

Als je dus binnen een map van een plugin zit en je wilt bijvoorbeeld een locatie aanmaken voor de stylesheet, dan kan je dit commando gebruiken:

mkdir styles

Dit voegt een nieuwe, lege map toe aan de map waar je nu in zit. Als je een locatie wilt toevoegen verder naar onder in de structuur, dan type je ook de structuur in. Dus binnen de wp-content map zou je dit typen:

mkdir /plugins/myplugin/styles

rmdir – verwijder locatie

Het rmdir commando laat je een locatie op je server verwijderen. Wees hier voorzichtig mee, want je kunt het niet ongedaan maken!

Dit commando heeft veel weg van mkdir, maar rmdir kan je gebruiken om een map binnen je huidige locatie te verwijderen:

rmdir styles

Ook kan je rmdir gebruiken om een lagergelegen map te verwijderen:

rmdir /plugins/myplugin/styles

Je kunt ook rm gebruiken om mappen te verwijderen, maar dan moet je wel extra parameters toevoegen.

Commando’s voor bestanden of locaties

De volgende opdrachten kun je zowel gebruiken voor bestanden als mappen/locaties.

cp – kopieer bestand of map

Je kunt het cp commando gebruiken op zowel bestanden als mappen om ze naar een andere locatie te kopiëren. Je moet specificeren waarheen het bestand of de map gekopieerd moet worden.

cp filename.extension /dir/

Hierbij wordt de naam van het te kopiëren bestand gespecificeerd (inclusief extensie) en de locatie waarheen het wordt gekopieerd.

Als je het bestand een nieuwe naam wilt geven (oftewel de nieuwe versie heeft een andere naam dan het origineel), dan kun je ook de nieuwe bestandsnaam specificeren.

cp filename.extension /dir/filename.extension

Dit commando bevat verschillende parameters die je kan gebruiken:

mv – verplaats bestand of map

Naast het kopiëren van bestanden en mappen kun je ze ook verplaatsen. Om dit te doen gebruik je het mv commando.

Net als bij cp kun je zowel een bestand als een hele map verplaatsen, en dezelfde naam houden of een nieuwe kiezen.

zip – comprimeer bestand of map

Nog een ander commando dat je zowel voor bestanden als mappen kunt gebruiken is zip. Hiermee comprimeer je een map en de inhoud daarvan. Je moet de naam van het bestand of de map gebruiken die je wilt comprimeren. Je kunt parameters gebruiken om aan te geven of je het originele bestand of map wilt verwijderen, of niet.

zip -r commando

zip -r commando

Wanneer je een lijst weergeeft van de inhoud van een map, zul je zowel het zip-bestand als de originele map zien als je zip -r gebruikt hebt, maar alleen het nieuwe gecomprimeerde bestand als je zip -m hebt gebruikt.

Het nieuwe zip-bestand

Het nieuwe zip-bestand

unzip – decomprimeer een map

Het unzip commando decomprimeert een zip-bestand in je locatie en pakt de inhoud uit om de map of bestanden weer te maken waaruit het origineel bestond:

unzip twentyseventeen.zip

Gebruik dit niet als je de originele map niet verwijderd hebt tijdens het comprimeren. Het zal de originele map namelijk niet overschrijven. In plaats daarvan kun je beter zip -m gebruiken om de originele map te verwijderen bij het comprimeren, of rm gebruiken om de map te verwijderen voordat je het zip-bestand uitpakt.

You can also add parameters to unzip to customize its use:

tar – maken en uitpakken van gecomprimeerde archieven

Het tar commando laat je .tar.gz archieven maken en uitpakken, als alternatief voor .zip archieven. Je kunt hetzelfde commando gebruiken voor zowel het comprimeren als decomprimeren van bestanden of mappen.

Om een map of bestand te comprimeren gebruik je tar cvzf. De syntax voor het comprimeren van een map wordt zo:

tar cvzf archivename.tar.gz directoryname

Hierboven is archivename de naam van het archiefbestand dat je wilt maken en directoryname de naam van de map die je wilt comprimeren.

Om een map weer te decomprimeren gebruik je tar xvzf:

tar xvzf archivename.tar.gz

De vier letters staan voor specifieke instructies en kun je dus zien als parameters:

Commando’s voor bestanden

Hieronder is een lijst met de meest voorkomende SSH commandos, specifiek voor individuele bestanden.

touch – maak een nieuw bestand aan

Om een nieuw, leeg bestand aan te maken op je server, gebruik je het touch commando:

touch style.css

Je kunt alleen een bestand aanmaken in de huidige locatie, dus je moet naar desbetreffende locatie gaan, voordat je het touch commando kunt gebruiken.

cat – laat de inhoud van een bestand zien

Om de inhoud van een bestand weer te geven, gebruik je cat.

cat commando

cat commando

Dit laat de volledig inhoud van een bestand zien binnen de Terminal of PuTTY.

grep – zoek op een specifieke term

Als je weet dat het bestand dat je onderzoekt erg lang is én je weet precies waarnaar je op zoek bent, dan kun je het grep commando gebruiken om naar specifieke inhoud te zoeken.

Hieronder heb ik bijvoorbeeld een zoekopdracht voor het woord “sidebar” gegeven binnen het sidebar.php bestand van een thema.

grep commando

grep commando

Dit zal alle regels weergeven die de zoekterm bevatten.

Als je wilt zoeken op een string van meerdere woorden, dan moet je er aanhalingstekens omheen zetten:

grep "nav class" footer.php

Het grep– commando heeft ook een aantal parameters die je kunt gebruiken om je zoekopdracht verder te specificeren:

head – lees de eerste 10 regels van een bestand

Als je alleen de eerste regels van een bestand wilt lezen, kun je het head commando gebruiken:

head filename.extension
head commando

head commando

tail – leest de laatste 10 regels van een bestand

Het tail– commando werkt op dezelfde manier als head, maar dan krijg je de laatste in plaats van eerste 10 regels te zien:

tail filename.extension

find – zoek bestanden en locaties

Het find commando laat je bestanden en locaties doorzoeken en geeft als resultaat de plekken die voldoen aan jouw criteria. Zo zoekt de opdracht hieronder binnen de huidige locatie naar alle bestanden waarin “index” voorkomt:

find . -name "index"

De syntax is:

find operator criterion string

De operators die je kunt gebruiken zijn:

Als je dus het bovenstaande opdracht op onderstaande manier zou veranderen, doorzoekt str het hele systeem in plaats van alleen de huidige locatie:

find / -name "index"

De criteria die je kunt gebruiken zijn onder meer:

De zoekterm kan elke string zijn die je wilt. Zorg wel dat het weer binnen aanhalingstekens staat.

du – geef de bestandsgrootte weer

Als je wil weten hoe groot bepaalde bestanden in je WordPress installatie zijn, kun je het du (Disk Usage) commando gebruiken:

du -h wp-config.php

Door -h te gebruiken wordt het schijfgebruik weergegeven in een format dat je kunt lezen, in plaats van in blocks.

De extra parameters die je kunt gebruiken zijn:

chmod – verander de rechten van een bestand

Met het chmod commando kun je de rechten van een bestand wijzigen:

chmod 464 filename.extension

Om te bepalen welke rechten je moet gebruiken, kun je de Unix Permissions Calculator gebruiken en het getal daarvan kopiëren naar het commando.

nano – bewerk een bestand via de Nano Text Editor

Als je het touch commando hebt gebruikt om een nieuw bestand te maken, of wellicht het cat commando om de inhoud van een bestand weer te geven, wil je daarna wellicht het bestand ook aanpassen.

Dit kun je eenvoudig doen via de Nano Text Editor via het nano commando:

nano filename.extension
nano text editor

nano text editor

Hiermee kun je bestanden direct vanuit de opdrachtregel aanpassen.

Downtime en WordPress problemen? Kinsta is de hosting oplossing speciaal ontworpen om jou tijd te besparen! Bekijk onze kenmerken

Let op: je werk weer terugdraaien is een stuk lastiger dan wanneer je een code editor of een versie-controlesysteem zou gebruiken. Maak dus alleen kleine aanpassingen waarvan je 100% zeker bent.

Om te navigeren binnen het bestand kun je de cursortoetsen gebruiken, naast sneltoetsen die onderaan het scherm te zien zijn. Om het bestand af te sluiten, gebruik je Ctrl-X waarna je weer terugkeert naar de Terminal.

vim – bewerk een bestand via de Vim Text Editor

De Vim Text Editor werkt ongeveer op dezelfde manier als de Nano Editor. Je kunt ermee werken via het vim commando. Welke editor beter is, hangt vooral af van je persoonlijke voorkeur:

vim filename.extension

wget – download bestanden

Met het wget commando kun je bestanden downloaden vanaf internet. Die bestanden worden opgeslagen op de locatie waar je momenteel bent. Je moet het volledige bestandspad van het bestand gebruiken als je het wilt downloaden:

wget https://site.com/filename.ext

Hiermee download je het bestand bestandsnaam.ext vanaf site website.com en sla je het op in je huidige locatie.

Commando’s voor de terminal

Laten we nu naar enkele opdrachten kijken waarmee je beter met de Terminal (of PuTTY) kunt werken.

clear – schoont het scherm op

Als je scherm nogal verstopt lijkt te voelen, kun je gewoon clear intypen zodat je weer een helemaal leeg scherm hebt. Dit is prettig als je van een opgeruimde werkomgeving houdt of als je je werk privé wilt houden in een openbare ruimte:

clear commando

clear commando

reset – verwijder output uit de Terminal

Met het reset commando verwijder je al je commando’s en output van het terminalscherm.

history – laat de 50 laatst gebruikte commando’s zien

Als je niet meer precies weet wat je als laatste gedaan hebt en iets wilt herhalen of terugdraaien, kun je het history commando gebruiken om een lijst met de laatste 50 commando’s weer te geven.

history commando

history commando

screen – SSH sessies hervatten

Screen is een terminal multiplexer, oftewel een tool waarmee je een enkele terminalsessie kan uitbreiden met meerdere virtuele sessies. Met Screen kan je schakelen tussen verschillende “windows”, die hun eigen taken hebben, zonder dat je twee of meer SSH verbindingen met je server hoeft te leggen.

Je kan bijvoorbeeld nano in het ene venster gebruiken en in een ander venster een groot bestand downloaden met wget. Bovendien kan je in een Screen sessie taken hervatten als je opnieuw verbinding moet maken vanwege een slechte SSH verbinding of een netwerkfout. Voor WordPress gebruikers is Screen vooral handig voor het veilig uitvoeren van lange taken, zoals het importeren van databases, regex zoekopdrachten en het vervangen van processen door middel van wp-cli.

Laten we eens nader bekijken hoe je Linux Screen gebruikt.

Zo installeer je Linux Screen

Je wil allereerst controleren of Screen is geïnstalleerd op je server. Dit doe je met het onderstaande commando.

screen --version

Als Screen is geïnstalleerd, krijg je ongeveer iets als dit terug.

kinstalife@mYJ-kinstalife:~$ screen --version
Screen version 4.03.01 (GNU) 28-Jun-15

Staat dit er niet, gebruik dan de onderstaande commando’s om Screen te installeren.

Ubuntu and Debian
sudo apt update
sudo apt install screen
CentOS and Fedora
sudo yum install screen
Start een nieuwe Screen sessie in Linux.

Start een nieuwe Screen sessie in Linux.

Hoewel je terminal er niet anders uitziet dan voorheen, bevindt je je nu in een Screen sessie! Laten we eens kijken hoe je een nieuw venster kan maken in de Screen sessie.

Een nieuwe Screen sessie.

Een nieuwe Screen sessie.

In Linux Screen beginnen alle sneltoetsen met Ctrl+A. Om een nieuw venster te openen, klik je op Ctrl+A, laat je deze los en druk je vervolgens op C. Om twee vensters te openen, druk je op Ctrl+A gevolgd door ".

Zo wissel je tussen vensters

De onderstaande screenshot toont twee vensters – 0 en 1. Vanuit dit venster kan je je pijltjestoetsen gebruiken om omhoog en omlaag te bewegen tussen de verschillende vensters. Druk op “Enter” of “Return” op het uitgelichte venster om het te selecteren. Als je het nummer van een specifiek venster kent, kan je de combinatie Ctrl + A en number gebruiken om het te selecteren.

Twee vensters in Screen.

Twee vensters in Screen.

Ten slotte kan je ook onderstaande commando’s gebruiken om naar het volgende of vorige venster te navigeren.

Zo verlaat je een Screen sessie

Om een Screen sessie te verlaten, druk je op Ctrl+D. Als het goed is, laat de Terminal nu het bericht “[screen is terminating]” – dit geeft aan dat de Screen sessie niet langer actief is.

De Screen sessie beëindigen.

De Screen sessie beëindigen.

Zo beheer je meerdere Linux Screen sessies

Een van de handigste functies van Screen is dat mogelijkheid om meerdere Screen sessies tegelijkertijd te gebruiken. Je kan bijvoorbeeld met één scherm zoek- en vervangopdrachten uitvoeren in de database, een ander gebruiken voor het navigeren door het WordPress bestandssysteem en een ander voor het updaten van plugins met WP-CLI. Het beste van alles is dat je Screen sessies indien nodig kan loskoppelen en hervatten. Dit betekent dat je een langdurend database-importproces kan hervatten, zelfs als de verbinding met je server wordt verbroken.

Gebruik – voordat we verder gaan – Ctrl+D om je bestaande Screen sessie te verlaten, indien van toepassing. Nadat je de Screen sessie hebt beëindigd, kan je het commando hieronder gebruiken om een nieuwe sessie te maken. Een handige feature is dat je met dit commando een unieke naam voor de sessie kan instellen. Voel je vrij om “session1” te vervangen door wat je maar wilt.

screen -S session1

Nadat je een nieuwe sessie hebt gemaakt, kan je het screen -ls commando gebruiken om alle actieve Screen sessies weer te geven. In het onderstaande screenshot, zie je session1, de sessie die is gemaakt met bovenstaand commando.

How to Use Linux Screen

Nadat je Screen hebt geïnstalleerd, kan je het commando screen gebruiken om een nieuwe Screen sessie te beginnen. Je zou nu een inleidende tekst moeten zien, zoals de onderstaande schermafbeelding. Druk op “Enter” of “Return” op je toetsenbord om het initialiseren van Screen te voltooien.

Screen sessies weergeven in de terminal.

Screen sessies weergeven in de terminal.

Zo koppel je een Linux scherm los

Wanneer je Ctrl+D gebruikt om een Screen sessie te verlaten, dan wordt de sessie volledig beëindigd. Maar wat als je de sessie op de achtergrond door wil laten draaien, terwijl je aan iets anders werkt? Dan is ontkoppelen handig. Wanneer je een Screen sessie loskoppelt, dan blijft deze op de achtergrond actief. Ontkoppelen is handig om langlopende processen zoals het importeren van databases en Elasticsearch indexering op de achtergrond actief te houden.

Om een Screen sessie los te koppelen, druk je op Ctrl+A gevolgd door d. Als je screen -ls uitvoert na het loskoppelen, zie je een “(Detached)” parameter voor de Screen sessie.

Een losgekoppelde Screen sessie.

Een losgekoppelde Screen sessie.

Nadat je een Screen sessie hebt losgekoppeld, kan je een ander scherm aanmaken.

screen -S session2
Meerdere Screen sessies.

Meerdere Screen sessies.

Zo hervat je een Linux scherm

Gebruik de onderstaande opdracht om een losgekoppeld Linux scherm te hervatten. Zorg ervoor dat je “session1” vervangt door de naam van de sessie die je wil hervatten.

screen -x session1
Een Linux scherm hervatten

Een Linux scherm hervatten

In de onderstaande schermafbeelding kunt u zien dat “session1” nu is bijgevoegd en dat “session2” is ontkoppeld.

Screen is een krachtige tool om in de terminal te multitasken. Hiermee kan je meerdere verschillende omgevingen aanmaken en verschillende taken uitvoeren zonder meerdere SSH verbindingen te hoeven maken. We raden aan om Screen te gebruiken voor als je een tijdrovend proces uitvoert op je WordPress site.

Andere handige commando’s voor SSH

De volgende opdrachten passen niet in de andere categorieën maar kunnen toch erg handig zijn in het werken aan je WordPress site via SSH.

netstat – Geef de netwerkverbindingen weer

Door de netstat-opdracht te gebruiken zie je de details van je netwerkverbindingen:

netstat commando

netstat commando

exit – verlaat de remote server

Als je klaar bent met je werk aan je WordPress site, kun je het exit commando gebruiken om de server te verlaten en terug te gaan naar je lokale apparaat.

exit commando

exit commando

Dit zou je altijd aan het einde van je werk moeten doen, zodat niemand via SSH bij je server kan.

SSH is een beveiligingsprotocol om toegang te krijgen tot bestanden op je WordPress site. Hier zijn de 20+ handigste commando's die je #devlife veel makkelijker maken! Bekijk ze hier 💪🏅Click to Tweet

Samenvatting

Door verbinding te maken met je WordPress site via SSH kun je op een veilige en eenvoudige manier met je bestanden van je site werken zonder een webbrowser of FTP client.

Dankzij de commando’s hierboven zou je de meeste taken die je in WordPress moet doen eenvoudig, veel sneller via SSH moeten kunnen doen.


Als je dit artikel leuk vond, dan ga je Kinsta’s WordPress hosting platform ook heel erg leuk vinden! Of het nu gaat om het versnellen van je website of de 24/7 support van ons ervaren WordPress-team. Onze door Google Cloud aangedreven infrastructuur is gericht op automatische schaalbaarheid, prestaties en beveiliging. Laat ons jou het Kinsta verschil tonen! Bekijk onze pakketten