Android

Paano kumonekta sa mysql sa pamamagitan ng ssh tunnel

02 Connecting to MySQL via SSH

02 Connecting to MySQL via SSH

Talaan ng mga Nilalaman:

Anonim

Bilang default, ang MySQL server ay nakikinig lamang sa localhost, na nangangahulugang maaari itong mai-access lamang sa pamamagitan ng mga application na tumatakbo sa parehong host.

Gayunpaman, sa ilang mga sitwasyon, maaaring gusto mong kumonekta sa server mula sa mga malalayong lokasyon. Ang isang pagpipilian ay upang mai-configure ang MySQL server upang payagan ang mga malalayong koneksyon, ngunit nangangailangan ito ng mga pribilehiyong administratibo, at maaaring magdulot ito ng mga panganib sa seguridad.

Ang isang mas ligtas na alternatibo ay ang paglikha ng isang lagusan ng SSH mula sa lokal na sistema hanggang sa server. Ang SSH tunneling ay isang paraan ng paglikha ng isang naka-encrypt na koneksyon ng SSH sa pagitan ng isang kliyente at isang machine machine na kung saan maaaring mai-relay ang mga service port.

Sa gabay na ito, ipapaliwanag namin kung paano lumikha ng isang lagusan ng SSH at kumonekta sa MySQL server mula sa mga malalayong kliyente. Ang parehong mga tagubilin ay nalalapat para sa MariaDB.

Mga kinakailangan

  • Ang SSH Client.SSH pag-access sa system kung saan tumatakbo ang MySQL server.

Lumikha ng isang SSH Tunnel sa Linux at macOS

Ang ssh client ay na-install sa karamihan ng mga sistema ng Linux at Unix-based.

ssh -N -L 3336:127.0.0.1:3306 @

Ang mga pagpipilian na ginamit ay ang mga sumusunod:

  • -N - Sinasabi sa SSH na huwag magpatupad ng isang malayong utos. -L 3336:127.0.0.1:3306 - Lumilikha ng isang lokal na port pasulong. Ang lokal na daungan ( 3306 ), ang patutunguhan na IP ( 127.0.0.1 ) at ang liblib na daungan ( 3306 ) ay pinaghiwalay sa isang colon (:). @ - Ang remote SSH user at server IP address.Upang magpatakbo ng utos sa background, gamitin ang -f pagpipilian.Kung ang SSH server ay nakikinig sa isang port maliban sa 22 (ang default) tukuyin ang port na may pagpipilian na -p .

Kapag pinapatakbo mo ang utos, sasabihan ka upang ipasok ang iyong password ng SSH user. Matapos mong ipasok ito, mai-log in ka sa server, at itatatag ang SSH tunnel. Mahusay na mag-set up ng isang SSH key-based na pagpapatotoo at kumonekta sa server nang hindi pumapasok sa isang password.

Ngayon ay maaari mong ituro ang iyong lokal na makina MySQL client sa 127.0.0.1:3336 ipasok ang malayong mga kredensyal sa pag-login sa kredensyal at ma-access ang MySQL server.

Halimbawa, upang kumonekta sa MySQL server gamit ang command line mysql client na mysql mo:

mysql -u MYSQL_USER -p -h 127.0.0.1

Kung saan ang MYSQL_USER ay ang malayong gumagamit ng MySQL na mayroong mga pribilehiyo upang ma-access ang database.

Kapag sinenyasan, ipasok ang password ng MySQL user.

Upang wakasan ang uri ng SSH tunnel CTRL+C sa console kung saan tumatakbo ang ssh client.

Lumikha ng isang SSH Tunnel sa Windows

Ang mga gumagamit ng Windows ay kailangan munang mag-download at mag-install ng isang SSH client program. Ang pinakasikat na kliyente ng Windows SSH ay ang PuTTY. Maaari mong i-download ang PuTTY dito.

Gawin ang mga sumusunod na hakbang upang lumikha ng isang lagusan ng SSH sa MySQL server na may PuTTY:

  1. Ilunsad ang Putty at ipasok ang IP Address ng server sa Host name (or IP address) patlang:

    Konklusyon

    Ang MySQL, ang pinakasikat na open-source database server, ay nakikinig sa mga papasok na koneksyon lamang sa localhost. Ang paglikha ng isang SSH tunnel ay nagbibigay-daan sa iyo upang ligtas na kumonekta sa malayong MySQL server mula sa iyong lokal na kliyente.

    mysql mariadb ssh