Làm cách nào để thiết lập proxy SOCKS cục bộ giúp lưu lượng truy cập thông qua SSH?


30

Giả sử tôi có quyền truy cập vào máy chủ SSH hỗ trợ đường hầm và tôi đang sử dụng PC đang chạy * ubfox, làm cách nào để thiết lập proxy SOCKS cục bộ giúp lưu lượng truy cập qua máy chủ SSH đó trước khi truy cập Internet?

Câu trả lời:


45

Các sshnhị phân mà bạn sử dụng khi bạn kết nối với một máy chủ chạy hỗ trợ ssh chạy một SOCKS ra proxy của hộp, với -Dlá cờ. Thí dụ:

ssh -D 1337 -f -C -q -N user@remote -p 22
  • -D 1337nói sshđể khởi chạy một máy chủ SOCKS trên cổng 1337 cục bộ.
  • -f rèn quá trình vào nền.
  • -C Bật nén.
  • -q cho phép "Chế độ im lặng", vì mục đích ở đây chỉ là đường hầm, chúng tôi không thực sự quan tâm đến đầu ra lỗi và như vậy.
  • -Nnói sshrằng sẽ không có lệnh nào được gửi ( -fphàn nàn nếu chúng tôi không chỉ định điều này).
  • -pchỉ định cổng nào sẽ sử dụng; rõ ràng điều này được mặc định là 22 vì vậy tuyên bố trên là vô nghĩa, nhưng bao gồm cho rõ ràng.

Khi máy chủ SOCKS của bạn hoạt động, bạn chỉ cần đảm bảo rằng ứng dụng của bạn (thường là trình duyệt web) đang cố gắng kết nối với proxy SOCKS cục bộ chứ không phải Internet thông thường.

Trong Firefox 29 (được giải thích ở đây là một ví dụ), điều này đạt được bằng cách vào menu (ba xúc xích ở trên cùng bên phải), theo sau là Tùy chọn> Nâng cao> Mạng> (Kết nối)> Cài đặt ... - đảm bảo bạn chỉ điền vào trường SOCKS! Vì proxy của bạn nằm trên cùng một hệ thống, bạn có thể sử dụng localhosthoặc 127.0.0.1trỏ lại vào bất kỳ cổng nào bạn đặt trên cùng một hệ thống.

Nếu bạn cũng cần các yêu cầu DNS của mình được tạo đường hầm (nếu không, các tra cứu DNS của bạn sẽ tiết lộ những trang web bạn đang cố truy cập), bạn chỉ cần kiểm tra "DNS từ xa" hoặc thực hiện toàn bộ cấu hình này about:config. Trong trường hợp cuối cùng, mở nó lên và thiết lập các giá trị sau:

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

Bạn cũng có thể cần cài đặt này để loại trừ một số tên miền hoặc trang web khỏi đường hầm:

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

Câu trả lời này được viết từ Pháp, nhưng được đào hầm qua Thụy Điển :)


Điều này chỉ hoạt động trên firefox.
Braiam

4
Nó không phải là đặc thù của Firefox, tôi đã bao gồm phần Firefox như một dịch vụ vì đó thường là những gì mọi người sử dụng SSH đường hầm, nó sẽ hoạt động trong bất kỳ ứng dụng nào hỗ trợ proxy SOCKS (ssh không quan tâm).
pzkpfw

2
Nói về việc thiết lập trình duyệt để sử dụng proxy. Nếu bạn sử dụng google chrome, bạn sẽ cần khai báo proxy trong cài đặt mạng của ubfox, vì đây là những gì google chrome sẽ sử dụng. Các tùy chọn CLI không chính thức đã có sẵn để khai báo proxy mà không cần điều này. Nhưng như một số tuần trước điều này không thể nữa.
MadMike

Cảm ơn, bạn đã đưa tôi ra khỏi địa ngục. Và tôi chỉ đến đó vì tôi đã không đọc đúng câu trả lời của bạn khoảng 10 giờ trước. Nên đã chú ý -D-pmột phần.
lakeare

Cũng dễ nhớ hơn:ssh -D 1337 user@host
Alcalyn
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.