Android

วิธีการเชื่อมต่อกับ mysql ผ่าน ssh tunnel

HackTheBox - Pivoting Update: Granny and Grandpa

HackTheBox - Pivoting Update: Granny and Grandpa

สารบัญ:

Anonim

โดยค่าเริ่มต้นเซิร์ฟเวอร์ MySQL ฟังเฉพาะในพื้นที่ซึ่งหมายความว่ามันสามารถเข้าถึงได้โดยแอปพลิเคชันที่ทำงานบนโฮสต์เดียวกันเท่านั้น

อย่างไรก็ตามในบางสถานการณ์คุณอาจต้องการเชื่อมต่อกับเซิร์ฟเวอร์จากสถานที่ห่างไกล ทางเลือกหนึ่งคือการกำหนดค่าเซิร์ฟเวอร์ MySQL ให้อนุญาตการเชื่อมต่อระยะไกล แต่ต้องใช้สิทธิ์ระดับผู้ดูแลและอาจทำให้เกิดความเสี่ยงด้านความปลอดภัย

ทางเลือกที่ปลอดภัยกว่าคือการสร้างอุโมงค์ SSH จากระบบโลคัลไปยังเซิร์ฟเวอร์ SSH tunneling เป็นวิธีการสร้างการเชื่อมต่อ SSH ที่เข้ารหัสระหว่างไคลเอนต์และเครื่องเซิร์ฟเวอร์ผ่านพอร์ตบริการที่สามารถถ่ายทอด

ในคู่มือนี้เราจะอธิบายวิธีสร้างอุโมงค์ SSH และเชื่อมต่อกับเซิร์ฟเวอร์ MySQL จากไคลเอนต์ระยะไกล ใช้คำแนะนำเดียวกันกับ MariaDB

ข้อกำหนดเบื้องต้น

  • SSH Client.SSH เข้าถึงระบบที่เซิร์ฟเวอร์ MySQL ทำงาน

สร้าง SSH Tunnel บน Linux และ macOS

ไคลเอ็นต์ ssh รับการติดตั้งล่วงหน้าบนระบบที่ใช้ Linux และ Unix เป็นส่วนใหญ่

ssh -N -L 3336:127.0.0.1:3306 @

ตัวเลือกที่ใช้มีดังนี้:

  • -N - บอก SSH ไม่ให้เรียกใช้คำสั่งระยะไกล -L 3336:127.0.0.1:3306 - สร้างการส่งต่อพอร์ตโลคัล โลคัลพอร์ต ( 3306 ), IP ปลายทาง ( 127.0.0.1 ) และพอร์ตระยะไกล ( 3306 ) จะถูกคั่นด้วยโคลอน (:) @ - ผู้ใช้ SSH ระยะไกลและที่อยู่ IP ของเซิร์ฟเวอร์หากต้องการเรียกใช้คำสั่งในพื้นหลังให้ใช้ตัวเลือก -f หากเซิร์ฟเวอร์ SSH กำลังรับฟังพอร์ตอื่นที่ไม่ใช่ 22 (ค่าเริ่มต้น) ให้ระบุพอร์ตด้วยตัวเลือก -p

เมื่อคุณเรียกใช้คำสั่งคุณจะได้รับแจ้งให้ป้อนรหัสผ่านผู้ใช้ SSH ของคุณ หลังจากป้อนแล้วคุณจะเข้าสู่เซิร์ฟเวอร์และอุโมงค์ SSH จะถูกสร้างขึ้น เป็นความคิดที่ดีที่จะตั้งค่าการรับรองความถูกต้องโดยใช้คีย์ SSH และเชื่อมต่อกับเซิร์ฟเวอร์โดยไม่ต้องป้อนรหัสผ่าน

ตอนนี้คุณสามารถชี้ไคลเอนต์ MySQL เครื่องท้องถิ่นของคุณไปที่ 127.0.0.1:3336 ป้อนข้อมูลประจำตัวการเข้าสู่ระบบฐานข้อมูลระยะไกลและเข้าถึงเซิร์ฟเวอร์ MySQL

ตัวอย่างเช่นการเชื่อมต่อกับเซิร์ฟเวอร์ MySQL โดยใช้ไคลเอนต์บรรทัดคำสั่ง mysql คุณจะออก:

mysql -u MYSQL_USER -p -h 127.0.0.1

โดยที่ MYSQL_USER เป็นผู้ใช้ MySQL ระยะไกลที่มีสิทธิ์เข้าถึงฐานข้อมูล

เมื่อได้รับแจ้งให้ป้อนรหัสผ่านผู้ใช้ MySQL

หากต้องการยกเลิก SSH tunnel ประเภท CTRL+C ในคอนโซลที่ไคลเอ็นต์ ssh กำลังทำงาน

สร้าง SSH Tunnel บน Windows

ผู้ใช้ Windows จะต้องดาวน์โหลดและติดตั้งโปรแกรมไคลเอ็นต์ SSH ก่อน ไคลเอนต์ Windows SSH ที่นิยมมากที่สุดคือ PuTTY คุณสามารถดาวน์โหลด PuTTY ได้ที่นี่

ทำขั้นตอนต่อไปนี้เพื่อสร้างอุโมงค์ SSH ไปยังเซิร์ฟเวอร์ MySQL ด้วย PuTTY:

  1. เรียกใช้ Putty และป้อนที่อยู่ IP ของเซิร์ฟเวอร์ในฟิลด์ Host name (or IP address) :

    ข้อสรุป

    MySQL เซิร์ฟเวอร์ฐานข้อมูลโอเพนซอร์ซที่ได้รับความนิยมสูงสุดรับฟังการเชื่อมต่อขาเข้าเฉพาะบน localhost การสร้างอุโมงค์ SSH ช่วยให้คุณสามารถเชื่อมต่อกับเซิร์ฟเวอร์ MySQL ระยะไกลได้อย่างปลอดภัยจากลูกค้าในพื้นที่ของคุณ

    mysql mariadb ssh