Bij Antagonist kun je naast DirectAdmin en FTP je webhostingpakket ook via SSH beheren. Hoe doe je dat en wat kun je er precies mee? Graag geef ik je daarom deze snelcursus SSH. Zo ken je straks ook deze handige SSH-commando’s en ben je binnen de kortste keren een ware SSH-goeroe!
De techneuten van Antagonist gebruiken al dagelijks SSH. Eerder gaven we je daarom al handige tips voor SSH en legden we uit hoe je Composer kunt gebruiken. Ook jij kan met je hostingpakket bij Antagonist een SSH-fanaat worden. Zo kun je bij ons meer dan 550 SSH-commando’s gebruiken. Het is daarom een fantastische manier om je website technisch te beheren.
1. Verbinden met SSH
Om te werken via SSH, dien je eerst vanuit een SSH-programma, zoals Putty of je terminal, met SSH te verbinden. In onze SSH-documentatie hebben we uitgebreid toegelicht hoe je dit bij Antagonist kunt realiseren. Nadat je met SSH bent verbonden, dan zie je in het scherm je gebruikersnaam, met daarachter de server waarop je bent ingelogd en de map waarin je bevindt. Hierachter kun je nu een commando intypen.
[deb1234@s165 ~]$
2. Handige SSH-commando’s
Stap voor stap zal ik de meest handige SSH-commando’s doorlopen, die ik ook zelf dagelijks gebruik voor mijn eigen websites. Als voorbeeld ga ik uit van een simpele website met enkele bestanden en mappen.
2.1 Bladeren met cd
Met het commando cd
kun je doorbladeren naar een andere map op je pakket. Om de latere commando’s goed uit te kunnen voeren, blader ik eerst naar de public_html-map. Daar staan namelijk alle bestanden en mappen die bij mijn website horen.
Dus stel, je wilt naar de public_html-map op je webhostingpakket navigeren, dan kun je het onderstaande commando invoeren:
[deb1234@s165 ~]$ cd domains/jouw-domeinnaam.nl/public_html/
Vervang hierbij ‘jouw-domeinnaam.nl’ met je eigen domeinnaam.
2.2 Bestandenlijst bekijken met ls
Met het commando ls
krijg je een lijst van alle bestanden te zien, die aanwezig zijn in een map. Ben je met het commando cd
naar de public_html-map gebladerd en zou je nu het commando ls
gebruiken, dan ziet dat er bijvoorbeeld als onderstaand uit:
[deb1234@s165 public_html]$ ls
.htaccess index.htm foto.jpg js img
In de meeste terminals hebben mappen een afwijkende kleur, zodat je weet dat het om een map gaat en niet om een bestand. In mijn terminal zie ik in dit geval de mappen ‘js’ en ‘img’ in een andere kleur.
2.3 Bestanden verplaatsen met mv
Met het commando mv
kun je bestanden en mappen verplaatsen en hernoemen. Bijvoorbeeld, als ik ‘contacten.html’ naar ‘contact.html’ zou willen hernoemen, dan kan dat middels het onderstaande commando:
[deb1234@s165 public_html]$ mv contacten.html contact.html
Zou ik het script met de naam ‘script.js’ van de map /public_html/ naar de map /public_html/js/ willen verplaatsen, dan kan dit met onderstaand commando:
[deb1234@s165 public_html]$ mv script.js js/script.js
2.4 Bestanden kopiëren met cp
Stel, je hebt een afbeelding naar public_html-map geüpload in je pakket. Echter, je wilt die liever in de map /public_html/img/ hebben staan, de map die je hebt aangemaakt voor afbeeldingen. Ervan uitgaande dat je met het commando cd
al naar de public_html-map bent genavigeerd, kun je dan met het commando cp
het bestand als volgt verplaatsen:
[deb1234@s165 public_html]$ cp foto.jpg img/foto.jpg
2.5 Bestanden wissen met rm
Via SSH is het ook mogelijk om bestanden die op je webhostingpakket staan te wissen. Zo voorkom je dat je een FTP-verbinding moet maken of naar de File Manager in DirectAdmin moet gaan om een bestand te verwijderen.
Belangrijk
SSH heeft veel voordelen, maar ook één groot nadeel. Met één verkeerd commando kun je ervoor zorgen dat de volledige inhoud van jouw webhostingpakket wordt verwijderd. Ga daarom altijd voorzichtig om met SSH, zeker met het commando rm
.
Stel, je wilt het bestand ‘index-oud.html’ wissen, dan kun je dit doen door het commando rm
te gebruiken. Staat dit bestand in de public_html-map en ben je daar naartoe genavigeerd, dan ziet het er als volgt uit:
[deb1234@s165 public_html]$ rm index-oud.html
2.6 Bestanden bekijken met cat
Via het commando cat
kun je direct de inhoud van een bestand bekijken. Stel, je wilt de inhoud van het bestand ‘index.html’ bekijken, dan is het commando als volgt:
[deb1234@s165 public_html]$ cat index.html
2.7 Bestanden bewerken met nano
Het is mogelijk om direct een bestand te bewerken via een simpele tekstverwerker. Dit is mogelijk door het commando nano
te gebruiken.
Ter kennisneming
Voor de echte techneuten bieden we ook nog de commando’s vi
en vim
om bestanden aan te passen. Deze editors zijn wat complexer om te gebruiken, vandaar dat ik nano
aanbeveel.
Bijvoorbeeld, wil je het bestand ‘index.html’ aanpassen, dan is het commando dat je invoert om dit te bereiken als volgt:
[deb1234@s165 public_html]$ nano index.html
Nadat je de gewenste wijziging hebt gemaakt, kun je het bestand opslaan door CTRL + O (Windows) of COMMAND + O (MacOS) te gebruiken.
2.8 Mappen aanmaken met mkdir
Om een map op je webhostingpakket aan te maken, kun je gebruikmaken van het commando mkdir
. Stel, je bent met ‘cd’ naar de public_html-map genavigeerd en je wilt daar de submap ‘css’ aanmaken om CSS-bestanden van je website in te plaatsen. Het te gebruiken commando is dan als volgt:
[deb1234@s165 public_html]$ mkdir css
2.9 Zoeken met find
Je kunt via SSH ook zoeken naar bestanden en mappen in je webhostingpakket. Dit is mogelijk door het commando find
te gebruiken. Je kunt dan tevens parameters toevoegen om je zoekopdracht te specificeren. Ben je op zoek naar het bestand ‘foto.jpg’, dan kun je het volgende commando gebruiken om daar naar te zoeken:
[deb1234@s165 public_html]$ find -name foto.jpg
Je kunt ook andere parameters gebruiken. Stel, je wilt zoeken naar bestanden die in de afgelopen twee dagen zijn bewerkt, dan is het commando als volgt:
[deb1234@s165 public_html]$ find -type f -mtime -2
Wil je weten welke parameters er allemaal beschikbaar zijn? Je kunt dan het volgende commando invoeren om dat te achterhalen:
[deb1234@s165 public_html]$ find --help
2.10 Bestandsgrootte achterhalen met du
Via SSH is met het commando du
snel te achterhalen welke mappen veel opslagruimte op je webhostingpakket innemen. Door de juiste parameters mee te geven, krijg je een overzichtelijke lijst per map. Het te gebruiken commando is dan als volgt:
[deb1234@s165 public_html]$ du -h --max-depth=1
Hierdoor zie je per map hoeveel data er in zit in bytes. In het onderstaande voorbeeld zie je dat de map ‘img’ nu 412 KB aan opslag gebruikt en de ‘grootverbruiker’ is wat opslagruimte betreft binnen mijn website.
[deb1234@s165 public_html]$ du -h --max-depth=1
412K ./img
512 ./css
1.0K .js
417K .
3. Databases beheren via SSH
Hoewel we nu tien commando’s hebben besproken, kan mijn persoonlijke favoriet natuurlijk niet ontbreken: het commando mysql
. Je kunt daarmee direct databases im- en exporteren naar MySQL. Voor mij een voordeel, aangezien dit sneller werkt dan via phpMyAdmin. Hoe gebruik je dit commando exact?
3.1 Het exporteren van een MySQL-database
Je kunt via het commando mysqldump
direct databases exporteren. Handig als je een backup wenst te hebben van je complete database. Dit kan met het volgende commando:
deb1234@s165 ~]$ mysqldump -u deb1234 -p deb1234_wp1 > backup.sql
Vervang hierbij ‘deb1234’ met je gebruikersnaam van DirectAdmin en ‘deb1234_wp1’ met de database die je wenst te exporteren. Nadat je op ‘enter’ drukt, wordt om je wachtwoord van DirectAdmin gevraagd. Is het wachtwoord correct, dan zal de export starten.
Ter kennisneming
Let op dat je de database niet in de public_html-map plaatst, vanuit beveiligingsoogpunt is dat niet wenselijk. Bestanden die daar staan, kun je gelijk vanuit de webbrowser oproepen en downloaden.
3.2 Het importeren van een MySQL-database
Met het commando mysql
kun je direct een gemaakte export van een database importeren. Dit heeft twee grote voordelen ten opzichte van phpMyAdmin:
- het importeren gaat flink sneller in vergelijking met phpMyAdmin;
- je kunt flink grotere databases probleemloos importeren.
Stel, je wilt de export van de database met de naam ‘backup.sql’ importeren naar de database ‘deb1234_wp1’ die je hebt aangemaakt, dan is het commando als volgt:
[deb1234@s165 ~]$ mysql -u deb1234 -p deb1234_wp1 < backup.sql
Vervang hierbij ‘deb1234’ met je gebruikersnaam van DirectAdmin en ‘deb1234_wp1’ met de database die je wenst te bewerken. Nadat je op enter drukt, wordt om je wachtwoord van DirectAdmin gevraagd. Is het wachtwoord correct, dan zal de import starten.
Word ook een SSH-goeroe bij Antagonist!
Met deze SSH-commando’s heb jij de eerste stappen onder de knie om een daadwerkelijke SSH-goeroe te zijn en het technisch beheer van jouw website gemakkelijker te maken.
Wil jij ook een webhostingpakket dat je in staat stelt om via SSH bezig te zijn met je website? SSH is beschikbaar op Slim, Plus, Pro en bij Resellerpakketten op aanvraag.
Webhosting + Domein + SSH + Gratis SSL →
P.S. Blijf op de hoogte en volg ons via Facebook, X, Instagram, e-mail en RSS. Heb je vragen, tips of opmerkingen? Laat het achter als reactie. Vond je het artikel nuttig? Deel het dan met anderen!