ฉันจะตั้งค่าพร็อกซี SOCKS ในพื้นที่ที่รับการรับส่งข้อมูลผ่าน SSH ได้อย่างไร


30

สมมติว่าฉันมีสิทธิ์เข้าถึงเซิร์ฟเวอร์ SSH ที่รองรับการสร้างช่องสัญญาณและฉันอยู่บนพีซีที่ใช้งาน * ubuntu ฉันจะตั้งค่าพร็อกซี SOCKS ในพื้นที่ที่รับส่งข้อมูลผ่านเซิร์ฟเวอร์ SSH นั้นได้อย่างไรก่อนเข้าถึงอินเทอร์เน็ต

คำตอบ:


45

sshไบนารีที่คุณใช้เมื่อคุณเชื่อมต่อกับเซิร์ฟเวอร์ที่ใช้ SSH สนับสนุนการทำงานถุงเท้าออกพร็อกซีของกล่องกับ-Dธง ตัวอย่าง:

ssh -D 1337 -f -C -q -N user@remote -p 22
  • -D 1337บอกsshให้เปิดเซิร์ฟเวอร์ SOCKS บนพอร์ต 1337 ในเครื่อง
  • -f ส้อมกระบวนการเป็นพื้นหลัง
  • -C เปิดการบีบอัด
  • -q เปิดใช้งาน "โหมดเงียบ" เนื่องจากจุดประสงค์ที่นี่มีไว้สำหรับอุโมงค์เท่านั้นเราไม่สนใจเกี่ยวกับผลลัพธ์ข้อผิดพลาดและเช่นนั้น
  • -Nบอกsshว่าจะไม่มีการส่งคำสั่ง ( -fบ่นถ้าเราไม่ได้ระบุ)
  • -pระบุพอร์ตที่จะใช้ เห็นได้ชัดว่านี่เป็นค่าเริ่มต้นที่ 22 ดังนั้นคำสั่งข้างต้นไม่มีจุดหมาย แต่รวมถึงความชัดเจน

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

ใน Firefox 29 (อธิบายไว้ที่นี่เป็นตัวอย่าง) สิ่งนี้สามารถทำได้โดยไปที่เมนู (สามไส้กรอกที่ด้านบนขวา) ตามด้วยการตั้งค่า> ขั้นสูง> เครือข่าย> (การเชื่อมต่อ)> การตั้งค่า ... - ให้แน่ใจว่าคุณเท่านั้น กรอกฟิลด์ SOCKS! เนื่องจากพร็อกซีของคุณอยู่ในระบบเดียวกันคุณสามารถใช้localhostหรือ127.0.0.1ชี้กลับไปที่พอร์ตใดก็ได้ที่คุณตั้งค่าไว้ในระบบเดียวกัน

หากคุณต้องการให้คำขอ DNS ของคุณถูกติดตามเช่นกัน (หากไม่ใช่การค้นหา DNS ของคุณจะแสดงเว็บไซต์ที่คุณพยายามเข้าชม) คุณสามารถตรวจสอบที่ "Remote DNS" หรือกำหนดค่าทั้งหมดนี้about:configได้ ในกรณีสุดท้ายให้เปิดขึ้นและตั้งค่าเหล่านี้:

network.proxy.socks : 127.0.0.1
network.proxy.socks_port : 1337
network.proxy.socks.remote_dns : true
network.proxy.socks_version : 5
network.proxy.type : 1

คุณอาจต้องใช้การตั้งค่านี้เพื่อยกเว้นบางโดเมนหรือไซต์จากการขุดอุโมงค์:

network.proxy.no_proxies_on : localhost, 127.0.0.1, 192.168.0.0/24, .yourcompany.com

คำตอบนี้เขียนจากฝรั่งเศส แต่ผ่านทางอุโมงค์แห่งสวีเดน :)


สิ่งนี้ใช้ได้กับ Firefox เท่านั้น
Braiam

4
มันไม่ได้เฉพาะเจาะจงกับ Firefox ฉันรวมส่วน Firefox ไว้เป็นบริการเนื่องจากเป็นสิ่งที่ผู้คนใช้ SSH tunneling สำหรับมันจะทำงานในแอปพลิเคชันใด ๆ ที่รองรับพร็อกซี SOCKS (ssh ไม่สน)
pzkpfw

2
การพูดถึงการตั้งค่าเบราว์เซอร์เพื่อใช้งานพรอกซี หากคุณใช้google chromeคุณจะต้องประกาศพรอกซีในการตั้งค่าเครือข่ายของ Ubuntu เพราะนี่คือสิ่งที่ google chrome จะใช้ ตัวเลือก CLI ที่ไม่เป็นทางการนั้นพร้อมใช้งานเพื่อประกาศพร็อกซีโดยไม่มี แต่เมื่อไม่กี่สัปดาห์ที่ผ่านมามันเป็นไปไม่ได้อีกแล้ว
MadMike

ขอบคุณคุณทำให้ฉันตกนรก และฉันไปถึงที่นั่นเพราะฉันไม่ได้อ่านคำตอบของคุณอย่างถูกต้องประมาณ 10 ชั่วโมงที่แล้ว ควรให้ความสนใจ-Dและ-pเป็นส่วนหนึ่ง
ทะเลสาบ

ยังง่ายต่อการจดจำ:ssh -D 1337 user@host
Alcalyn
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.