บอกว่าผมมีและserver
client
ฉันต้องการสร้างการเชื่อมต่อจากclient
ถึงwebsite
ถึงserver
เหมือนเป็นพร็อกซี
มันเป็นไปได้ที่จะทำเช่นนี้โดยใช้ Tunel SSH หรือฉันจะต้องติดตั้งบริการ proxy บางอย่างเพื่อserver
?
บอกว่าผมมีและserver
client
ฉันต้องการสร้างการเชื่อมต่อจากclient
ถึงwebsite
ถึงserver
เหมือนเป็นพร็อกซี
มันเป็นไปได้ที่จะทำเช่นนี้โดยใช้ Tunel SSH หรือฉันจะต้องติดตั้งบริการ proxy บางอย่างเพื่อserver
?
คำตอบ:
คุณสามารถทำได้โดยใช้ ssh
ssh -L 80:remotehost:80 user@myserver
คุณจะมีช่องสัญญาณจากโลคัลพอร์ต 80 ถึงรีโมตพอร์ต 80 จากนั้น สิ่งนี้ไม่จำเป็นต้องเหมือนกับ myserver เพื่อให้โปร่งใสคุณควรเพิ่มรายการไปยังไฟล์โฮสต์ หากคุณไม่ทำเช่นนั้น vhosts จะไม่ทำงาน หากคุณต้องการการเชื่อมต่อพร็อกซี SOCKS คุณสามารถใช้
ssh -D 5000 user@myserver
สิ่งนี้จะสร้าง SOCKS-proxy บน localhost พอร์ต 5000 ซึ่งกำหนดเส้นทางการร้องขอทั้งหมดผ่านทาง myserver
ssh -L 81:remotehost:80 user@myserver
โลคัลพอร์ตท้องถิ่น 81 พอร์ตที่พูดเช่นเดียวกับ 80 บนรีโมต
Host myserver User user DynamicForward 5000
ใช่มันเป็นไปได้
เรียกใช้ssh -D port user@host
และตั้งค่าไคลเอนต์ของคุณเพื่อใช้กล่องของคุณเป็นพร็อกซี SOCKS
หากคุณต้องการพร็อกซี HTTP โดยเฉพาะคุณสามารถใช้ Proxychains และกำหนดเส้นทางผ่าน SOCKS ก่อนหน้า
ผงสำหรับอุดรูทำสิ่งนี้ได้เช่นกัน
ภายใต้ SSH อุโมงค์ข้ามไป ที่ด้านล่างใส่ 8080 ในพอร์ตและสำหรับปลายทางปล่อยให้เป็นสีดำและเลือกปุ่มตัวเลือก "ไดนามิก" นั่นคือทั้งหมดที่คุณต้องทำตอนนี้เชื่อมต่อกับเซิร์ฟเวอร์โดยใช้ Putty
เมื่อเชื่อมต่อแล้วคุณจะมีพร็อกซีเซิร์ฟเวอร์ทำงานบนโลคัลโฮสต์ของคุณที่พอร์ต 8080 ซึ่งจะทำการร้องขอผ่านพร็อกซีเซิร์ฟเวอร์ทั้งหมดของคุณ
ตอนนี้ใช้เว็บเบราว์เซอร์และตั้งค่าพร็อกซี่โดยการตั้งค่า host = localhost และพอร์ต = 8080 และตรวจสอบให้แน่ใจว่าเป็นพร็อกซี SOCKS ที่คุณเลือก ฉันทำเช่นนี้ตลอดเวลาดังนั้นหากคุณใช้ Firefox ตรวจสอบให้แน่ใจว่าได้ติดตั้งปลั๊กอิน FoxyProxy เนื่องจากมันทำให้การเปิด / ปิดพร็อกซีเป็นเรื่องเดียว
ข้อควรระวัง: โปรดทราบว่าโดยค่าเริ่มต้นคำขอของ DNS ของคุณจะไม่ถูกนำไปใช้ ดังนั้นเว็บไซต์ที่คุณเยี่ยมชมผ่านพร็อกซีจะยังคงถูกบันทึกไว้ (หากพวกเขาบันทึกสิ่งนี้) คุณสามารถตั้งค่า firefox ให้เป็นคำขอ DNS พร็อกซีได้เช่นกันมันไม่ได้ทำตามค่าเริ่มต้น
sshuttle ทำงานเหมือน VPN แต่เหนือ SSH
พร็อกซีเซิร์ฟเวอร์โปร่งใสที่ทำงานเป็น VPN ของคนยากจน ส่งต่อมากกว่า ssh ไม่ต้องการผู้ดูแลระบบ ทำงานร่วมกับ Linux และ MacOS รองรับการขุด DNS
หากต้องการอนุญาตให้พร็อกซีใช้งานคอมพิวเตอร์และอนุญาตให้ไคลเอนต์อื่นเชื่อมต่อกับคุณคุณจะต้องใช้ตัวเลือก -g ตัวอย่างเช่นคุณจะรันสิ่งนี้บนเซิร์ฟเวอร์ชื่อ foo:
ssh -g -ND 9191 root@remotehost
จากนั้นคุณสามารถตั้งค่าพร็อกซีในเบราว์เซอร์ของไคลเอ็นต์ให้ใช้เซิร์ฟเวอร์ foo และพอร์ต 9191 สำหรับพร็อกซี SOCKS ลูกค้าจะส่งคำขอของพวกเขาด้วย foo ผู้ที่จะส่งต่อคำขอผ่าน ssh ไปยัง remotehost ดังนั้นบนอินเทอร์เน็ตมันจะดูเหมือนว่าพวกเขากำลังใช้รีโมตโฮสต์
หากคุณต้องการส่งต่อคำขอ DNS ด้วย firefox ให้แก้ไข about: config ใน firefox และตั้งค่า network.proxy.socks_remote_dns เป็น true
คุณสามารถใช้ SSHUTTLE สอนวิธีใช้งานได้
https://etherarp.net/sshuttle-a-vpn-for-the-lazy/
นี่คือการสอนวิธีตั้งค่าให้ทำงานเป็นบริการ
https://medium.com/@mike.reider/using-sshuttle-as-a-service-bec2684a65fe