Cách kiểm tra xem proxy proxy5 có hoạt động không


36

Có một cách dễ dàng, tốt nhất là bằng cách sử dụng thiết bị đầu cuối Linux, để kiểm tra xem proxy Vớ5 có hoạt động không?

Câu trả lời:


40

Nếu bạn tự tạo proxy, trước hết bạn nên kiểm tra xem có cổng mở không ( pđối số chỉ hoạt động nếu quá trình liên quan là của bạn hoặc bạn đã root):

netstat -tlnp

Điều này sẽ cung cấp cho bạn một dòng như: (Tôi có proxy localhost:8888)

tcp        0      0 127.0.0.1:8888          0.0.0.0:*               LISTEN

Nếu bạn tìm thấy một dòng như vậy hoặc proxy không phải là của bạn, hãy thử gửi các gói thông qua nó. Ví dụ: yêu cầu một trang web với curl:

curl --socks5 localhost:8888 binfalse.de

Nên xuất một số nội dung HTML. Hy vọng điều này sẽ giúp tìm kiếm sai lầm ;-)


AUX : Ví dụ của tôi, tôi đã tạo proxy qua:

ssh -o ServerAliveInterval=60 -D8888 someone@somewhere

Thay thế someonebằng tên người dùng của bạn và somewherevới máy chủ đích của bạn. Tất nhiên sử dụng OpenSSH chỉ là một phương pháp trong một loạt các proxy5 có thể có.


1
ssh: Không thể giải quyết tên máy chủ ở đâu đó: Tên hoặc dịch vụ không được biết
tony_sid

6
Tất nhiên bạn phải thay thế someone@somewherevới tên người dùng và máy chủ của bạn, ví dụ như ssh -D8888 YOURUSER@YOURHOST;-)
binfalse

Trên các cửa sổ, lệnh netstat là: nestat -an hoặc netstat -an | grep LISTENnếu bạn có grep trong đường dẫn của mình.
Erik Aronesty

Cảm ơn đã curlgợi ý. FWIW, curl cũng hỗ trợ --socks5-hostnamegiống như --socks5nhưng không cố gắng giải quyết cục bộ tên máy chủ của URL đã gửi (có thể siêu hữu ích để kết nối với mạng nội bộ).
kostix

7

Để có được curl để giải quyết DNS ở phía bên kia, thay đổi --socks5bằng --socks5-hostname.

Xem trang người đàn ông để biết thêm.


Cảm ơn, đã không nhận ra lý do tại sao yêu cầu của tôi không thành công cho đến khi sử dụng điều này.
xamox

4

Lệnh sau sẽ kiểm tra xem Vớ 5 proxy có hoạt động tại localhost:8080:

timeout 5 curl -x socks5://localhost:8080 http://example.com/

Nếu không, nó sẽ hết thời gian sau 5 giây. Nếu bạn không có timeoutlệnh, hãy bỏ nó.


1

Bạn có thể kết nối với netcat và tuân theo các quy tắc của RFC 1928 để nói chuyện với máy chủ. Tuy nhiên, bạn phải có thể nhập và đọc các ký tự không in được hoặc đăng nhập chúng vào một tệp để kiểm tra thêm.

Ví dụ: để kiểm tra xem đó có phải là máy chủ SOCKS5 hay không và tìm ra phương thức xác thực no-auth, gssapi hoặc usr + pwd nào sẽ hỗ trợ, hãy gửi 0x05 0x03 0x00 0x01 0x02. Một máy chủ SOCKS5 được chuẩn bị để sử dụng xác thực usr + pwd sẽ trả lời 0x05 0x02.

Hoặc đây là cách kiểm tra xem đó có phải là máy chủ SOCKS5 và không-auth (phương thức 0) không hoạt động:

echo 050100 | xxd -p -r | netcat -o out.txt {server} {port}

Sau khi bạn làm gián đoạn điều đó, đến cuối out.txt, nó sẽ tạo ra 0x05 0x00 nếu máy chủ hỗ trợ phương thức đó (0) hoặc 0x05 0xFF nếu không.

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.