Cuối cùng tôi cũng đã hoàn thành việc này ssh
chỉ với :
- bắt đầu proxy SOCKS cục bộ trên máy khách của bạn (sử dụng
ssh -D
)
- kết nối với máy chủ từ xa và thiết lập chuyển tiếp cổng ngược (
ssh -R
) với proxy SOCKS cục bộ của bạn
- cấu hình phần mềm máy chủ để sử dụng proxy được chuyển tiếp
1. Bắt đầu proxy vớ địa phương trong nền
Kết nối với localhost thông qua SSH và mở proxy SOCKS trên cổng 54321.
$ ssh -f -N -D 54321 localhost
-f
chạy SSH trong nền.
Lưu ý: Nếu bạn đóng thiết bị đầu cuối nơi bạn bắt đầu lệnh, quy trình proxy sẽ bị hủy. Ngoài ra, hãy nhớ tự dọn dẹp bằng cách đóng cửa sổ thiết bị đầu cuối khi bạn hoàn thành hoặc tự mình giết quá trình!
2. kết nối với máy chủ từ xa và thiết lập chuyển tiếp cổng đảo ngược
Ràng buộc cổng từ xa 6666 đến cổng cục bộ 54321. Điều này làm cho proxy vớ địa phương của bạn có sẵn cho trang web từ xa trên cổng 6666.
$ ssh root@target -R6666:localhost:54321
3. cấu hình phần mềm máy chủ để sử dụng proxy được chuyển tiếp
Chỉ cần cấu hình yum, apt, curl, wget hoặc bất kỳ công cụ nào khác hỗ trợ SOCKS để sử dụng proxy 127.0.0.1:6666
.
Voilá! Chúc mừng đường hầm!
4. tùy chọn: cấu hình phần mềm máy chủ để sử dụng proxy được chuyển tiếp
Tôi thấy rằng cài đặt proxychains
trên máy chủ mục tiêu làm cho mọi thứ dễ dàng hơn nhiều.
Nó cho phép bất kỳ phần mềm nào sử dụng proxy SOCKS (chẵn telnet
), bằng cách sử dụng một LD_PRELOAD
mẹo để chuyển hướng các yêu cầu TCP và DNS từ các lệnh tùy ý thành proxy.
Thiết lập /etc/proxychains.conf
để sử dụng proxy vớ chuyển tiếp:
[ProxyList]
# SSH reverse proxy
socks5 127.0.0.1 6666
Các công cụ tùy ý đường hầm (sử dụng TCP) với proxychains
:
$ proxychains telnet google.com 80
$ proxychains yum update
$ proxychains apt-get update