SSH لېږدونه په سیمه ایز پورټ 13306 باندې غوږ نیسي، خو mysql لا هم سیمه ایز ډیټابیس ته نښلول کېږي—یا راپور ورکوي چې سیمه ایز ساکټ یې نشته. په Unix کې، هغه MySQL پیرودونکی چې localhost ورته ورکړل شي کولای شي د TCP پر ځای Unix ساکټ وټاکي. د پورټ ورکول اړینه نه ده چې هغه ټاکنه بدله کړي.

د موجوده تصویب شوې TCP لېږدوونې لپاره، پروتوکول روښانه کړئ:

mysql --protocol=TCP --host=127.0.0.1 --port=13306 \
  --user=dbuser --password

د کاروونکي نوم یوازې بېلګه ده؛ د پټنوم اختیار متقابل ننوتنه غواړي. امر د Unix ساکټ پر ځای سیمه ایز TCP اورېدونکي ته نښلوي.

دواړه ننوتنې جلا وساتئ

ثابته SSH لاره کولای شي دا بڼه ولري:

ssh -N -L 127.0.0.1:13306:db.internal:3306 [email protected]

د ګیټ وې SSH سرور db.internal:3306 ته رسېږي. بیا MySQL د ډیټابیس حساب د همغې بایټ بهیر له لارې تصدیقوي. منل شوې SSH کیلي ډیټابیس ننوتنه نه ورکوي، او د ډیټابیس سرچینې محدودیتونه ویني چې نښلون د لارې له هغې خوا څخه راځي.

دا یو ثابت TCP اډاپټر دی، نه هغه SOCKS تنظیم چې mysql یې کاروي. اپلیکیشن SOCKS خبرو اترو ته اړتیا نلري ځکه چې د لېږدوونې پای نقطه یو له مخکې ټاکل شوی هدف لري.

چېرې چې کارول کېږي، هلته د ډیټابیس پلان شوې TLS هویت او د سند تګلاره وساتئ. ساکټ له loopback سره نښلول د ډیټابیس سند د بل خدمت نوم لپاره معتبر نه کوي. بریالۍ سیمه ایزه TCP نښلونه د لېږد ټاکنه حل کوي، نه وروسته د ډیټابیس تصدیق یا TLS څېړنې.

اړوندې مقالې