Početna > Baza znanja > Baze podataka > Kako ostvariti tunel vezu prema SQL serverima?


Kako ostvariti tunel vezu prema SQL serverima?




S obzirom da iz sigurnosnih razloga nije dozvoljeno direktno spajanje na SQL shared hosting servere s udaljenih i nekontroliranih IP adresa (dial-up, ADSL, itd), kreirali smo jednostavne upute koje će vam ipak omogućiti spajanje na SQL servere s vašeg lokalnog računala - preko šifrirane tunel veze.

Cijelu ovu proceduru možete završiti za samo nekoliko minuta.

Za tunel vezu je zaslužan SSH server koji se nalazi u istom LAN-u kao i SQL serveri, i kao takvom mu je dozvoljeno direktno spajanje na MS SQL i MySQL servere.


U prvom dijelu ćemo generirati ključeve koji će vam poslužiti za sigurnu autentifikaciju na SSH server bez upisivanja lozinke.

  1. presnimite puttygen.exe program na svoje lokalno računalo
  2. pokrenite puttygen.exe program
  3. Parameters sekcija neka bude podešena kao na slici 1
  4. kliknite na Generate gumb i krećite se malo mišem po ekranu dok ne završi generiranje
  5. u ovom primjeru nećemo koristiti lozinku za zaštitu ključa zbog praktičnosti, međutim ako se ipak odlučite za lozinku morat ćete ju upisati kod svakog pokretanja tunela
  6. kliknite "Save private key" gumb i snimite datoteku na disk, dobro čuvajte datoteku u kojoj je privatni ključ, neka ne bude javno dostupna
  7. selektirajte tekst u "Public key for pasting into OpenSSH authorized_keys file" dijelu, kao na slici 2, i pošaljite nam ga na e-mail; ovo je javni ključ koji može biti dostupan
  8. nakon primitka vaše poruke kreirati ćemo korisničko ime na SSH serveru i poslati vam povratnu informaciju o tome


Datoteku s privatnim ključem dobro čuvajte kako ne bi došlo do neovlaštenog pristupa na vaš SSH account. U slučaju da ju izgubite, ponovite cijeli gornji postupak.

Napomena: ako se netko domogne vašeg privatnog ključa to ne znači da je dobio pristup bazi, dobio je samo mogućnost pristupa MSSQL i MySQL serveru sa svojeg lokalnog računala. Bez obzira na sve ovdje, za pristup bazi i dalje treba imati korisničko ime i lozinku.


U drugom dijelu ćemo instalirati program za pokretanje tunela između vašeg lokalnog računala i MS SQL servera. Postupak je gotovo identičan i za MySQL server, razlika je u 3. koraku.

  1. presnimite putty.exe program na svoje lokalno računalo
  2. pokrenite putty.exe program
  3. lijevo u izborniku izaberite Tunnels, zatim u desnom dijelu popunite Source port i Destination kao na slici 1; nakon popunjavanja izaberite Add gumb i rezultat bi trebao biti kao na slici 2. Ukoliko se želite spojiti na MySQL server tada u "Destination" polje upisujete adresu "mysql.avalon.hr:3306". Točnu adresu servera možete pročitati u Vašem Control Panel-u u sučelju za upravljanje bazom podataka. Ukoliko ste korisnik novog Windows servera sa WebsitePanelom, tada kao adresu servera upisujete "mssql.cloud.hr:1433" ili "mssql2.cloud.hr:1433", ovisno o tome koji MS SQL server koristi vaš paket (podatke o čemu možete pronaći u "View Space Summary" odjeljku vašeg paketa).
  4. lijevo u izborniku izaberite Auth, zatim u desnom dijelu preko Browse gumba selektirajte datoteku s privatnim ključem koju ste u prvom dijelu generirali i spremili na disk; primjer kako bi to moglo izgledati pogledajte na slici 3
  5. lijevo u izborniku izaberite SSH, zatim u desnom dijelu uključite Enable compression opciju; primjer kako bi to moglo izgledati pogledajte na slici 4
  6. lijevo u izborniku izaberite Data, zatim u desnom dijelu pod Auto-login username upišite korisničko ime koje smo vam javili nakon kreiranja accounta na SSH serveru; primjer kako bi to moglo izgledati pogledajte na slici 5
  7. lijevo u izborniku izaberite Session, zatim u desnom dijelu popunite Host Name i Saved Sessions kao na slici 6; nakon popunjavanja izaberite Save gumb

Za pokretanje tunel konekcije pokrenite putty.exe program, lijevo u izborniku izaberite Session, kod Saved Sessions izaberite Avalon MS SQL tunel, i nakon toga Open.

Nakon uspješne autentifikacije pojavit će se "tunel je otvoren" poruka, kao na ovoj slici. Ovime su ostvareni uvjeti za uspješno spajanje na server baze podataka s vašeg lokalnog računala.

Primjerice, ako imate IIS web server na lokalnom računalu koji vam služi za testiranje stranica, kod connection stringa možete koristiti uobičajene login name i password za pristup bazi podataka koje imate kod nas, a hostname neka bude 127.0.0.1.

Ako se želite spojiti na MS SQL server preko Query Analyzera, upišite uobičajene MS SQL login name i Password podatke koje imate kod nas, za SQL Server stavite 127.0.0.1 adresu, i ovako kreirana konekcija trebala bi također raditi.

Napomena: prozor s "tunel je otvoren" porukom nemojte gasiti, u protivnom se nećete moći spojiti s lokalnog računala na server baze podataka; nakon što završite s radom možete ga ugasiti.


Nekoliko pojašnjenja:

- ovako kreirana tunel konekcija između vas i servera biti će šifrirana, bez obzira da li ste upisali lozinku kod privatnog ključa, što znači da će podaci koji se prenose između vašeg lokalnog računala i MS SQL servera biti zaštićeni,
- pojednostavljeni dijagram konekcije izgledao bi ovako: localhost, 1433/TCP SSH server, 22/TCP MS SQL server, 1433/TCP.

U slučaju problema sa spajanjem, provjerite slijedeće:

  • da li ste dobili povratnu informaciju o kreiranom korisničkom računu nakon što ste nam poslali javni ključ, ako je prošlo više od 24 sata nazovite nas na 0800-AVALON,
  • ako koristite firewall na lokalnom računalu ili gatewayu, provjerite da li je dozvoljeno spajanje na udaljene SSH (secure shell) servere, 22/TCP port,
  • ako na lokalnom računalu imate neki servis koji već radi na 1433/TCP portu (MS SQL server), u trećem koraku pod Source port upišite neki drugi slobodan TCP port.


Je li Vam ovaj odgovor pomogao?

Dodaj među favorite Dodaj među favorite    Ispiši članak Ispiši članak

Također pročitajte