เข้าถึงพร็อกซี HTTP หรือ SOCKS ที่มีอยู่ผ่าน SSH
เข้าถึงพร็อกซี HTTP หรือ SOCKS แบบ loopback ระยะไกลผ่าน SSH โดยไม่เปิดเผยตัวรับฟังต่อสาธารณะ
หาก relay.example.net รัน SOCKS บน 127.0.0.1:1080 ของตัวเองอยู่แล้ว ให้ส่งต่อการเข้าถึงแทนการเปิดเผยตัวรับฟังนั้นต่อสาธารณะ:
ssh -N -L 127.0.0.1:1081:127.0.0.1:1080 [email protected]| จุดปลาย | บทบาท |
|---|---|
แล็ปท็อป 127.0.0.1:1081 | ที่อยู่ SOCKS ที่ต้องกำหนดค่าในแอปของแล็ปท็อป |
รีเลย์ 127.0.0.1:1080 | พร็อกซีที่มีอยู่ซึ่งเข้าถึงได้จากฝั่งเซิร์ฟเวอร์ SSH |
ไวยากรณ์การส่งต่อภายใน กำหนดปลายทางคงที่ให้ฝั่งเซิร์ฟเวอร์ พร็อกซี HTTP บนพอร์ต loopback ระยะไกล 3128 หรือจุดปลายในอินทราเน็ตอย่าง proxy.internal.example:8080 ทำงานตามหลักการเดียวกัน กำหนดค่าไคลเอนต์สำหรับ โปรโตคอล HTTP ที่มีอยู่นั้น และบัญชี การส่งผ่าน SSH ไม่ได้สร้าง SOCKS หรือตัวรับฟัง HTTPS ที่เปิด TLS
บริการที่มีอยู่ยังคงเลือกเวอร์ชันโปรโตคอลที่รองรับ การรับรองความถูกต้อง ปลายทาง และทางออกสุดท้าย หากโพรเซส SSH อื่นสร้างพร็อกซีระยะไกลนั้น ทั้งสองโพรเซสต้องคงอยู่ เส้นทางแล็ปท็อป→รีเลย์→เกตเวย์ทำให้เว็บไซต์เห็นการเชื่อมต่อขาออกครั้งสุดท้าย ไม่ใช่ตัวตนที่พอร์ตภายใน 1081 จัดสรร
รักษาการผูกของแล็ปท็อปให้เป็นภายในอย่างชัดเจน การเปิดเผยกว้างขึ้นเปลี่ยนว่าใครเข้าถึงบริการได้ และการเข้าสู่ระบบ SSH ไม่ได้เพิ่มรหัสผ่าน SOCKS ให้ตัวรับฟัง หากถูกปฏิเสธ ให้ตรวจสอบตัวรับฟังของแล็ปท็อป การขนส่ง SSH และพร็อกซีระยะไกลเป็นขั้นตอนแยกกัน