Skip to content

SSL/TLS in SSH-tunel ​

Dve različni težavi, dva različna zavihka v pogovornem oknu povezave. SSL/TLS šifrira samo povezavo z bazo. SSH-tunel pa nešifrirano povezavo prenese prek strežnika, ki mu že zaupate.

Uporabite lahko oboje hkrati.

SSL/TLS ​

Baze v oblaku — AWS RDS, Supabase, PlanetScale, Azure SQL — ga praviloma zahtevajo.

Označite Omogoči SSL/TLS in izberite način:

NačinKaj naredi
OnemogočiBrez šifriranja. Ni priporočljivo
PrednostnoUporabi SSL, če ga strežnik podpira, sicer nešifrirano
ZahtevajVedno uporabi SSL, vendar ne preverja certifikata
Preveri CASSL in preverjanje certifikata glede na CA
Polno preverjanjeSSL, preverjanje CA in imena gostitelja

Pri SQL Serverju se ista nastavitev imenuje Raven šifriranja.

Certifikati ​

Tri neobvezne poti do datotek omogočajo, da podate lastno gradivo:

  • CA certifikat — potreben za Preveri CA in Polno preverjanje, kadar strežnik uporablja zasebno CA.
  • Certifikat odjemalca in zasebni ključ — za strežnike, ki zahtevajo vzajemni TLS.

Sprejmi samopodpisane certifikate povsem preskoči preverjanje certifikata. Razvojni strežnik tako deluje v nekaj sekundah, a s tem odstrani zaščito, ki jo TLS sploh daje — za produkcijsko povezavo tega ne puščajte vklopljenega.

SSH-tunel ​

S tunelom se NabuSQL najprej poveže s strežnikom SSH in prek njega usmeri povezavo z bazo. Tako dosežete bazo, ki na oddaljenem računalniku posluša samo na localhost.

Gostitelj in vrata se razrešijo na strežniku SSH

Gostitelj in vrata na zavihku Osnovno se razlagajo z vidika strežnika SSH. Za bazo, ki teče na istem računalniku kot strežnik SSH, to pomeni localhost in običajna vrata baze — ne javnega naslova strežnika.

Označite Omogoči SSH-tunel in izpolnite:

  • Gostitelj, vrata in uporabniško ime strežnika SSH.
  • Preverjanje pristnosti: geslo ali ključ.
  • Pri preverjanju s ključem: pot do datoteke zasebnega ključa in geslo ključa, če je ključ šifriran.

Praktični primer ​

Strežnik PostgreSQL na db.example.com sprejema SSH, sama baza pa posluša samo na 127.0.0.1:5432:

ZavihekPoljeVrednost
OsnovnoGostitelj127.0.0.1
OsnovnoVrata5432
SSH TunelGostiteljdb.example.com
SSH TunelVrata22
SSH TunelUporabniško imevaš uporabnik SSH

Odpravljanje težav ​

Povezava zavrnjena prek tunela — gostitelj baze se razreši na strežniku SSH. Preverite, ali vrednost deluje, ko na tem strežniku zaženete psql -h <gostitelj>.

Certificate verify failed — strežnik predloži certifikat, ki ga je podpisala CA, ki je vaš sistem ne pozna. Namesto preklopa na Zahtevaj podajte CA certifikat.

Ključ SSH zavrnjen — preverite, ali se datoteka zasebnega ključa ujema z javnim ključem v authorized_keys in ali ste vnesli geslo, če ga ključ ima.

Ni SSH-ja, vrata baze pa so zaprta? Značilno za deljeno gostovanje — glejte HTTP-tunel.