SSH-toegang tot een KapsuleHost-site is uitsluitend sleutelgebaseerd, dus voordat je een shell of een SFTP-sessie kunt openen, moet je een publieke sleutel registreren bij de site in KPanel. Deze handleiding behandelt waar je dat vindt, hoe je een sleutel toevoegt die je al hebt, hoe je KapsuleHost er een voor je laat genereren, en hoe je een sleutel intrekt die je niet langer vertrouwt.
Waar de Pagina Met SSH-sleutels Zich Bevindt
Open Websites, klik op de site, open vervolgens de groep Instellingen in het linkermenu van de site en kies SSH-sleutels. De pagina heet SSH-toegang en bevat twee dingen: de verbindingsgegevens voor deze site, en de lijst met publieke sleutels die op dit moment geautoriseerd zijn om ze te gebruiken.
Er is geen SSH-item op het hoofdniveau in de hoofdzijbalk. Sleutels gelden per site, dus een sleutel die je hier toevoegt, authenticeert alleen bij deze site. Als je meerdere sites beheert, heeft elke site zijn eigen vermelding nodig, zelfs als het om dezelfde sleutel op je laptop gaat.

Voor het toevoegen of intrekken van een sleutel is de rechtenmachtiging sites:write vereist. Als je een teamaccount hebt met een alleen-lezen rol, zijn de knop Sleutel toevoegen en het intrekpictogram verborgen. Vraag een accounteigenaar of beheerder om de wijziging door te voeren.
Verbindingsgegevens
De kaart Verbindingsgegevens bovenaan de pagina toont alles wat je client nodig heeft:
| Veld | Wat het is |
|---|---|
| Host | De hostnaam waarmee verbinding wordt gemaakt |
| Poort | De SSH-poort voor deze site |
| Gebruikersnaam | De systeemgebruiker waaronder je site draait |
| SSH | Een kant-en-klaar ssh-commando voor deze site |
| SFTP | Een kant-en-klaar sftp-commando voor deze site |
Elke rij heeft een kopieerknop, en de SSH- en SFTP-rijen kopiëren het hele commando in plaats van alleen de waarde, zodat je het direct in een terminal kunt plakken. Gebruik die twee in plaats van het commando zelf te typen: ze bevatten al de juiste gebruiker, host en poort.
Als de kaart helemaal niet verschijnt, is de aanmaak van de shell-gebruiker voor de site nog niet voltooid. De API geeft in dat geval een eenvoudige foutmelding Site heeft geen SSH-gebruiker. Wacht tot de statusindicator van de site Active weergeeft en laad de pagina opnieuw.
Een Sleutel Toevoegen Die Je Al Hebt
De meeste mensen hebben al een sleutelpaar op hun machine staan. Voeg hier de publieke helft toe.
- Toon op je eigen computer je publieke sleutel. Op macOS en Linux is dat meestal
cat ~/.ssh/id_ed25519.pub, ofcat ~/.ssh/id_rsa.pubvoor een oudere RSA-sleutel. Op Windows met OpenSSH is dattype %USERPROFILE%\.ssh\id_ed25519.pub. - Kopieer de hele regel, beginnend met
ssh-ed25519,ssh-rsaofecdsa-sha2-nistp256. - Klik in KPanel op Sleutel toevoegen.
- Vul iets herkenbaars in het veld Label in, bijvoorbeeld de naam van de machine waarop de sleutel staat.
- Plak de publieke sleutel in het tweede veld.
- Klik op Sleutel toevoegen.
De sleutel verschijnt meteen in de lijst Authorised keys, met de bijbehorende vingerafdruk onder het label. Je kunt direct verbinding maken.
KapsuleHost stuurt bovendien telkens wanneer een sleutel wordt toegevoegd een e-mail naar het accountadres, met vermelding van het label, de vingerafdruk en de site. Die mail is bewust zo ingericht: SSH-toegang vereist een hoog vertrouwensniveau, dus als er een sleutel verschijnt die jij niet hebt toegevoegd, trek die dan direct in en wijzig meteen je wachtwoord.
Plak altijd alleen het bestand .pub. Een persoonlijke sleutel heeft geen extensie .pub en begint met een regel zoals -----BEGIN OPENSSH PRIVATE KEY-----. Als je dat plakt, is het je persoonlijke sleutel, en die moet opnieuw worden gegenereerd in plaats van hergebruikt.
Als Je Nog Geen Sleutel Hebt
Genereer er lokaal een met ssh-keygen -t ed25519 -C "your-label", accepteer de standaard bestandslocatie en stel desgevraagd een wachtwoordzin in. Dat levert ~/.ssh/id_ed25519 op (houd die privé) en ~/.ssh/id_ed25519.pub (plak die laatste).
KapsuleHost Het Sleutelpaar Laten Genereren
Als je liever geen ssh-keygen uitvoert, kan KPanel het paar voor je aanmaken.
- Klik op Sleutel toevoegen.
- Vul het veld Label in. Laat het vak voor de publieke sleutel leeg.
- Klik op Sleutelpaar genereren.
KapsuleHost maakt een Ed25519-paar aan, installeert de publieke helft bij de site en toont een groene melding: Sleutelpaar gegenereerd: download nu de persoonlijke sleutel. Klik op .pem downloaden om de persoonlijke sleutel op te slaan. Het bestand krijgt de naam van het door jou gekozen label.
De persoonlijke sleutel wordt slechts één keer getoond. De melding vermeldt dit duidelijk: dit is het enige moment waarop je hem kunt downloaden. KapsuleHost bewaart geen kopie die je later kunt ophalen. Als je de melding sluit zonder te downloaden, trek dan de sleutel in en genereer een nieuw paar.
Een gegenereerde sleutel heeft geen wachtwoordzin, waardoor hij bruikbaar is vanuit een script zonder dat er iets wordt gevraagd. Dat betekent ook dat het bestand zelf de volledige inloggegevens vormt. Als je een wachtwoordzin wilt, genereer het paar dan zelf met ssh-keygen en plak de publieke helft.
Verplaats het bestand na het downloaden naar een logische locatie en verscherp de bestandsrechten, want SSH weigert een persoonlijke sleutel te gebruiken die voor iedereen leesbaar is:
mv ~/Downloads/my-laptop_id_ed25519.pem ~/.ssh/kapsule-mysite.pem
chmod 600 ~/.ssh/kapsule-mysite.pem
ssh -i ~/.ssh/kapsule-mysite.pem <username>@<host> -p <port>
Vervang de gebruikersnaam, host en poort door de gegevens uit de kaart Verbindingsgegevens.
De Lijst Met Geautoriseerde Sleutels Lezen
Elke rij in Authorised keys toont:
- Het label dat je aan de sleutel hebt gegeven.
- De vingerafdruk van de sleutel, waarmee je twee sleutels met vergelijkbare labels uit elkaar houdt.
- Added met de datum van registratie.
- Laatst gebruikt met de datum van de meest recente authenticatie, of Nooit gebruikt als er nog niet mee is geauthenticeerd.
De kolom Laatst gebruikt is de handigste bij een opschoning. Een sleutel die nooit is gebruikt, of al maanden niet meer, hoort meestal bij een laptop die is vervangen of een freelancer die is vertrokken.
Een Sleutel Intrekken
Klik op het rode prullenbakpictogram bij de rij van de sleutel. KPanel vraagt om bevestiging met SSH-sleutel intrekken? en een melding dat de sleutel niet langer zal authenticeren bij deze site. Klik op Revoke om te voltooien.
Het intrekken wordt van kracht voor nieuwe verbindingen. Een SSH-sessie die al open staat, wordt niet door het intrekken van de sleutel beëindigd. Als je dus toegang ontneemt aan iemand die mogelijk nog verbonden is, trek dan de sleutel in en wijzig daarna alles wat diegene had kunnen meenemen: databasewachtwoorden, applicatiegeheimen en eventuele tokens die op de site zijn opgeslagen.
Houd de sleutellijst kort. Eén sleutel per machine, gelabeld met de machinenaam, is veel makkelijker te controleren dan een stapel sleutels genaamd "key1", "nieuwe sleutel" en "tijdelijk".
Probleemoplossing
Permission denied (publickey). De meest voorkomende oorzaak is dat je client een andere sleutel aanbiedt dan de sleutel die je hebt geregistreerd. Forceer de juiste met ssh -i /path/to/private_key ..., of controleer met ssh -v welke sleutels worden aangeboden.
Connection refused of een timeout. Controleer of je de poort gebruikt die vermeld staat bij Verbindingsgegevens en niet de standaardpoort 22. Kopieer het SSH-commando van de pagina in plaats van het zelf te typen.
Bad permissions on the private key. OpenSSH weigert een persoonlijke sleutel die door andere gebruikers gelezen kan worden. Voer chmod 600 uit op het bestand.
De sleutel werkt voor SSH maar niet voor SFTP. Ze gebruiken dezelfde inloggegevens, dus dit ligt vrijwel altijd aan de client en niet aan de sleutel. Gebruik het SFTP-commando dat van de pagina is gekopieerd, dat al de juiste poort bevat.
Volgende Stappen
- Bestanden Uploaden Met SFTP behandelt het bestandsoverdrachtgedeelte van dezelfde inloggegevens.
- Verbinding Maken Met Je Database Via een SSH-tunnel gebruikt de sleutel die je zojuist hebt toegevoegd om MySQL te bereiken vanaf een desktopclient.
- Activiteitenlogboek van de Site registreert elke sleutel die je toevoegt, zodat je later kunt nagaan wie wat heeft toegevoegd en wanneer.