ฉันวาดภาพร่างบางส่วน
เครื่องที่คำสั่งอุโมงค์ SSH พิมพ์ (หรือในกรณีของคุณ: สีโป๊วกับการขุดเจาะอุโมงค์จะเริ่มต้น) เรียกว่า»โฮสต์ของคุณ«
บทนำ
ท้องถิ่น: -L Specifies that the given port on the local (client) host is to be forwarded to the given host and port on the remote side.
ssh -L sourcePort:forwardToHost:onPort connectToHost
หมายถึง: เชื่อมต่อกับ ssh ไปยังconnectToHost
และส่งต่อความพยายามในการเชื่อมต่อทั้งหมดไปยังโลคัล sourcePort
ไปยังพอร์ตonPort
บนเครื่องที่เรียกว่าforwardToHost
ซึ่งสามารถเข้าถึงได้จากconnectToHost
เครื่อง
ระยะไกล: -R Specifies that the given port on the remote (server) host is to be forwarded to the given host and port on the local side.
ssh -R sourcePort:forwardToHost:onPort connectToHost
หมายถึง: เชื่อมต่อกับ ssh ไปยังconnectToHost
และส่งต่อความพยายามในการเชื่อมต่อทั้งหมดไปยังรีโมท sourcePort
ไปยังพอร์ตonPort
บนเครื่องที่เรียกว่าforwardToHost
ซึ่งสามารถเข้าถึงได้จากเครื่องท้องถิ่นของคุณ
ตัวอย่างของคุณ
ภาพแรกแสดงถึงสถานการณ์ของคุณ กล่องสีฟ้าที่เรียกว่าyour host
เป็นเครื่อง Windows ของคุณที่คุณเริ่ม Putty ไปยังเซิร์ฟเวอร์ Ubuntu ของคุณที่เรียกว่าremotehost
ในภาพของฉัน การเชื่อมต่อกับพอร์ตสีเขียว (ในหมายเลขพอร์ตเคสของคุณ4000
) จะถูกส่งต่อไปยังพอร์ต MySQL สีชมพู3306
ของlocalhost
เครื่องเซิร์ฟเวอร์ Ubuntu ของคุณ (เช่นเซิร์ฟเวอร์ Ubuntu เอง)
ในการตั้งค่าด้วย Putty
เริ่ม Putty และป้อนการตั้งค่าการเชื่อมต่อตามปกติของคุณ (ชื่อโฮสต์หรือที่อยู่ IP) ในแผนผังทางด้านซ้ายให้นำทางไป
การเชื่อมต่อ→ SSH →อุโมงค์
และสร้างอุโมงค์โลคัลใหม่พร้อมพอร์ตต้นทาง4000
(123 ในภาพ) และปลายทางlocalhost:3306
(localhost: 456 ในภาพ)
อย่าลืมที่จะคลิกAdd
จากนั้นกลับไปที่เซสชันและคลิกบันทึกเพื่อรักษาการตั้งค่าของคุณในครั้งต่อไป ตอนนี้คุณสามารถใช้การเชื่อมต่อที่บันทึกไว้เพื่อล็อกอินเข้าสู่เซิร์ฟเวอร์ของคุณและหลังจากที่คุณล็อกอินสำเร็จทุกครั้งที่คุณเชื่อมต่อกับพอร์ต 4000 บนโฮสต์ของคุณคุณจะเชื่อมต่อกับพอร์ต 3306 บนเซิร์ฟเวอร์ Ubuntu