Piespiediet MySQL izmantot pārsūtīto TCP portu
Izvairieties no vietējā Unix ligzdas izvēles, kad MySQL klients savienotos caur SSH TCP pārsūtīšanu.
SSH pārsūtīšana klausās vietējā portā 13306, bet mysql joprojām savienojas ar vietējo datubāzi—vai ziņo, ka tās vietējā ligzda trūkst. Unix vidē MySQL klients, kuram norādīts localhost, var izvēlēties Unix ligzdu, nevis TCP. Porta norādīšana ne vienmēr maina šo izvēli.
Esošam apstiprinātam TCP pārsūtījumam padariet protokolu skaidru:
mysql --protocol=TCP --host=127.0.0.1 --port=13306 \
--user=dbuser --password
Lietotājvārds ir ilustratīvs; paroles opcija pieprasa interaktīvu ievadi. Komanda savienojas ar vietējo TCP klausītāju, nevis Unix ligzdu.
Turiet abas pieteikšanās atsevišķi
Fiksētam SSH maršrutam var būt šāda forma:
ssh -N -L 127.0.0.1:13306:db.internal:3306 [email protected]
Vārtejas SSH serveris sasniedz db.internal:3306. Pēc tam MySQL autentificē datubāzes kontu caur šo baitu plūsmu. Pieņemta SSH atslēga nedod pieteikšanos datubāzē, un datubāzes avota ierobežojumi redz savienojumu nākam no šīs maršruta puses.
Šis ir fiksēts TCP adapteris, nevis mysql izmantots SOCKS iestatījums. Lietojumprogrammai nav vajadzīgas SOCKS sarunas, jo pārsūtīšanas galapunktam ir viens iepriekš noteikts mērķis.
Saglabājiet paredzēto datubāzes TLS identitāti un sertifikātu politiku tur, kur tie tiek izmantoti. Ligzdas savienošana ar loopback nepadara datubāzes sertifikātu derīgu citam pakalpojuma nosaukumam. Veiksmīgs vietējais TCP savienojums nosaka transporta izvēli, nevis vēlāko datubāzes autentifikāciju vai TLS pārbaudes.