Oddaljeni dostop do podatkovne baze gostovanja cPanel

cPanel Branje: 2 min

Povezave do storitve MySQL ali MariaDB, ki prihajajo prek vrat 3306, privzeto niso šifrirane, zato bi bilo mogoče prisluškovati geslu in podatkom. Zato na naših strežnikih cPanel podatkovne baze od zunaj niso neposredno dosegljive, le prek šifriranega tunela SSH. Naslovi IP, vneseni v vmesniku Remote Database Access (oddaljeni dostop do podatkovne baze) v cPanelu, zato ne odprejo neposrednega dostopa.

To je napredna tema in predpostavlja, da imaš nekaj izkušenj s SSH in odjemalskimi programi SQL.

Predpogoji

Linux, macOS, WSL in Windows PowerShell

Odpri terminal in z naslednjim ukazom vzpostavi tunel do gostovanja cPanel:

ssh -p 4231 -N -L 3333:localhost:3306 user@server

Kjer:

  • -p 4231: vrata strežnika SSH, na katera se je treba povezati.
  • -N: odjemalec naj ne zažene ukaza ali lupine, temveč le vzdržuje tunel.
  • -L 3333:localhost:3306: promet, ki prihaja na vrata 3333 lastnega računalnika, posreduje na naslov localhost:3306, gledano s strežnika (localhost tu pomeni oddaljeni strežnik).
  • user@server: uporabniško ime cPanel in ime strežnika.

Vgrajeni odjemalec OpenSSH v Windows 10 in 11 sprejme isti ukaz v PowerShellu. Če se povezava zaradi nedejavnosti prekine, dodaj stikalo -o ServerAliveInterval=60.

Windows, PuTTY

  1. V PuTTY vnesi ime strežnika in vrata SSH, v razdelku Connection > SSH > Auth > Credentials pa zasebni ključ v obliki PPK.
  2. Na strani Connection > SSH > Tunnels v polje Source port vpiši: 3333, v polje Destination: localhost:3306, nato klikni gumb Add.
  3. Poveži se in tunel živi, dokler je okno odprto.

Nastavitev odjemalca SQL

Dokler tunel živi, v odjemalcu SQL (na primer HeidiSQL, DBeaver, MySQL Workbench) vnesi naslednje:

  • Strežnik: 127.0.0.1 (ne piši localhost, ker ga nekateri odjemalci razumejo kot lokalni socket in ne uporabijo tunela),
  • Vrata: 3333,
  • Uporabnik in geslo: celotno ime in geslo uporabnika podatkovne baze.

Našteti programi imajo tudi lastno funkcijo tunela SSH (HeidiSQL: „MySQL (SSH tunnel)”, MySQL Workbench: „Standard TCP/IP over SSH”, DBeaver: zavihek SSH). Takrat ločen ukaz ni potreben: v delu SSH vnesi ime strežnika, vrata, uporabniško ime cPanel in ključ, v delu podatkovne baze pa naslov 127.0.0.1 in vrata 3306.

Pogoste napake

  • Permission denied (publickey): ključ ni omogočen v vmesniku SSH Access v cPanelu ali ne uporabljaš pravega zasebnega ključa.
  • Address already in use: vrata 3333 na tvojem računalniku so zasedena; izberi druga (na primer 3334:localhost:3306).
  • Access denied for user: na začetku uporabniškega imena manjka predpona cPanel ali uporabnik ni dodeljen podatkovni bazi.
Nazaj: cPanel – članki (48)