ในคำตอบนี้ฉันจะผ่านตัวอย่างที่เป็นรูปธรรม คุณเพียงแค่เปลี่ยนชื่อโฮสต์ชื่อผู้ใช้และรหัสผ่านของคอมพิวเตอร์
คำชี้แจงปัญหา
สมมติว่าเรามีโครงสร้างเครือข่ายต่อไปนี้:
our local computer <---> server 1 <---> server 2
เพื่อความเป็นรูปธรรมสมมติว่าเรามีชื่อโฮสต์ชื่อผู้ใช้และรหัสผ่านของคอมพิวเตอร์ต่อไปนี้:
LocalPC <---> hostname: mit.edu <---> hec.edu
username: bob username: john
password: dylan123 password: doe456
ประตู: เราต้องการที่จะตั้งค่าพร็อกซี่ถุงเท้าที่ฟังในพอร์ต9991
ของLocalPC
เพื่อที่ว่าทุกครั้งที่มีการเชื่อมต่อบนLocalPC
จะเริ่มจากพอร์ต 9991
มันผ่านไปแล้วmit.edu
hec.edu
ตัวอย่างกรณีการใช้งาน: hec.edu
มีเซิร์ฟเวอร์ HTTP ที่สามารถเข้าถึงได้เฉพาะใน http://127.0.0.1:8001เท่านั้นเพื่อเหตุผลด้านความปลอดภัย เราอยากที่จะสามารถเยี่ยมชม http://127.0.0.1:8001LocalPC
โดยการเปิดเว็บเบราว์เซอร์บน
องค์ประกอบ
ในLocalPC
เพิ่มใน~/.ssh/config
:
Host HEC
HostName hec.edu
User john
ProxyCommand ssh bob@mit.edu -W %h:%p
จากนั้นในเทอร์มินัลของLocalPC
ให้รัน:
ssh -D9991 HEC
มันจะถามรหัสผ่านของbob
เปิดmit.edu
(เช่นdylan123
) จากนั้นจะถามรหัสผ่านของjohn
เปิดhec.edu
(เช่นdoe456
)
ณ จุดที่พร็อกซีถุงเท้าตอนนี้ทำงานบนพอร์ตของ9991
LocalPC
ตัวอย่างเช่นหากคุณต้องการเยี่ยมชมเว็บเพจLocalPC
โดยใช้พร็อกซี SOCKS คุณสามารถทำได้ใน Firefox:
ข้อสังเกตบางส่วน:
- ใน
~/.ssh/config
, HEC
เป็นชื่อการเชื่อมต่อ: คุณอาจเปลี่ยนเป็นสิ่งที่คุณต้องการ
-D9991
บอกssh
การตั้งค่าพร็อกซี SOCKS4 9991
ในพอร์ต