0Pricing
Linux Server Deployment & SSH Mastery · บทเรียน

ตัวแทน SSH และการเชื่อมต่อหลายทอด

ใช้ตัวแทน SSH เพื่อจัดการคีย์ได้อย่างราบรื่น และกำหนดค่าการเชื่อมต่อ SSH หลายทอดเพื่อเข้าถึงเครือข่ายที่อยู่ลึกเข้าไป

ตัวแทน SSH และการเชื่อมต่อหลายทอด เป็นบทเรียน Linux Server Deployment & SSH Mastery ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Linux Server Deployment & SSH Mastery และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Linux Server Deployment & SSH Mastery มีบทเรียนทั้งหมด 4 บทเรียน

เอเจนต์ SSH: กุญแจสู่ความสะดวก

เบื่อการพิมพ์วลีรหัสผ่านของกุญแจ SSH ทุกครั้งที่เชื่อมต่อกับเซิร์ฟเวอร์หรือไม่ เอเจนต์ SSH ช่วยคุณได้

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

เริ่มต้นเอเจนต์ SSH

ก่อนเพิ่มกุญแจ คุณต้องเริ่มเอเจนต์ SSH ก่อน โดยปกติเอเจนต์จะทำงานเป็นกระบวนการเบื้องหลัง

คุณสามารถเริ่มเอเจนต์และตั้งค่าเชลล์ให้ใช้งานเอเจนต์ได้ด้วยคำสั่งนี้:

eval "$(ssh-agent -s)"

เพิ่มกุญแจลงในเอเจนต์

เมื่อเอเจนต์ทำงานแล้ว คุณสามารถเพิ่มกุญแจส่วนตัวลงในเอเจนต์ได้ คำสั่ง ssh-add ใช้สำหรับการนี้:

  • ระบบจะแจ้งให้คุณป้อนวลีรหัสผ่านของกุญแจ
  • กุญแจของคุณจะยังคงถูกโหลดไว้จนกว่าเอเจนต์จะหยุดทำงาน หรือจนกว่าคุณจะลบกุญแจออกโดยเฉพาะ

หากต้องการดูว่ามีกุญแจใดถูกโหลดอยู่ ให้ใช้ ssh-add -l

ssh-add ~/.ssh/id_rsa
ssh-add -l

การส่งต่อเอเจนต์: แนวคิด

บางครั้งคุณจำเป็นต้องเชื่อมต่อจากเซิร์ฟเวอร์หนึ่ง (เซิร์ฟเวอร์ A) ไปยังเซิร์ฟเวอร์อีกเครื่อง (เซิร์ฟเวอร์ B) โดยใช้กุญแจ SSH ภายในเครื่องของคุณ โดยไม่จัดเก็บกุญแจไว้บนเซิร์ฟเวอร์ A

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

การใช้การส่งต่อเอเจนต์

หากต้องการเปิดใช้การส่งต่อเอเจนต์ ให้เพิ่มตัวเลือก -A เมื่อเชื่อมต่อกับเซิร์ฟเวอร์เครื่องแรก (โฮสต์ทางผ่าน)

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

ssh -A user@jump_host
# Now, from jump_host, connect to target_server
ssh user@target_server

SSH แบบหลายทอด: การเข้าถึงเครือข่ายเชิงลึก

หากเซิร์ฟเวอร์เป้าหมายไม่สามารถเข้าถึงได้โดยตรงจากเครื่องภายในของคุณ แต่เข้าถึงได้ผ่านเซิร์ฟเวอร์ตัวกลาง (หรือ "โฮสต์กระโดด") เท่านั้น คุณจะทำอย่างไร

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

การเชื่อมต่อหลายทอดด้วย ProxyJump

วิธีที่ง่ายและแนะนำมากที่สุดในการตั้งค่า SSH แบบหลายทอด คือการใช้คำสั่ง ProxyJump ในไฟล์ ~/.ssh/config ของคุณ

การตั้งค่านี้จะบอกไคลเอ็นต์ SSH ให้เชื่อมต่อกับ JumpHost ก่อน จากนั้นจึงสร้างการเชื่อมต่อไปยัง TargetServer จากเซิร์ฟเวอร์ดังกล่าว

Host TargetServer
  HostName 192.168.1.100
  User myuser
  ProxyJump jump_host_user@jump.example.com

การเชื่อมต่อหลายทอดด้วย ProxyCommand

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

ส่วน ssh -W %h:%p จะบอกให้ SSH ส่งต่ออินพุตและเอาต์พุตมาตรฐานไปยังโฮสต์และพอร์ตเป้าหมาย

Host TargetServer
  HostName 192.168.1.100
  User myuser
  ProxyCommand ssh jump_host_user@jump.example.com -W %h:%p

การรวมการส่งต่อตัวแทนกับการเชื่อมต่อหลายทอด

คุณสามารถรวมความสามารถอันทรงพลังเหล่านี้เข้าด้วยกันได้ ใช้การส่งต่อตัวแทนร่วมกับการตั้งค่าแบบหลายทอด เพื่อหลีกเลี่ยงการป้อนวลีรหัสผ่านซ้ำ

เพียงเพิ่ม ForwardAgent yes ลงในการตั้งค่าโฮสต์กระโดดใน ~/.ssh/config หรือใช้ ssh -A เพื่อเชื่อมต่อไปยังโฮสต์กระโดด การตั้งค่านี้จะทำให้ตัวแทนภายในเครื่องของคุณใช้ยืนยันตัวตนแทนคุณบนเซิร์ฟเวอร์เป้าหมายสุดท้ายได้ด้วย

Host JumpHost
  HostName jump.example.com
  User jump_user
  ForwardAgent yes

Host TargetServer
  HostName 192.168.1.100
  User target_user
  ProxyJump JumpHost

ตรวจสอบอย่างรวดเร็ว: ความสามารถของ SSH

พิจารณาข้อความต่อไปนี้เกี่ยวกับตัวแทน SSH และ SSH แบบหลายทอด ข้อความใดเป็นจริง

ทบทวน: การเข้าถึงที่ราบรื่นและปลอดภัย

ในบทเรียนนี้ คุณได้เรียนรู้เทคนิค SSH ขั้นสูงสองรายการดังนี้

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

เครื่องมือเหล่านี้จำเป็นอย่างยิ่งสำหรับการจัดการโครงสร้างพื้นฐานเซิร์ฟเวอร์ที่ซับซ้อนอย่างมีประสิทธิภาพและปลอดภัย

คำถามที่พบบ่อย

บทเรียน “ตัวแทน SSH และการเชื่อมต่อหลายทอด” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ตัวแทน SSH และการเชื่อมต่อหลายทอด” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Linux Server Deployment & SSH Mastery ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Linux Server Deployment & SSH Mastery มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ตัวแทน SSH และการเชื่อมต่อหลายทอด”

ใช้ตัวแทน SSH เพื่อจัดการคีย์ได้อย่างราบรื่น และกำหนดค่าการเชื่อมต่อ SSH หลายทอดเพื่อเข้าถึงเครือข่ายที่อยู่ลึกเข้าไป คุณปฏิบัติ Linux Server Deployment & SSH Mastery ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Linux Server Deployment & SSH Mastery หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Linux Server Deployment & SSH Mastery บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน

บทเรียน “ตัวแทน SSH และการเชื่อมต่อหลายทอด” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Linux Server Deployment & SSH Mastery นี้ได้ไหม

ได้ บทเรียน Linux Server Deployment & SSH Mastery ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การส่งต่อพอร์ต SSH (ภายในเครื่อง/ระยะไกล)
  2. อุโมงค์ SSH และพร็อกซี SOCKS
  3. ตัวแทน SSH และการเชื่อมต่อหลายทอด
  4. การถ่ายโอนไฟล์อย่างปลอดภัยด้วย SCP, SFTP และ rsync
← กลับไปที่ Linux Server Deployment & SSH Mastery