Respuestas:
Si creó el proxy usted mismo, primero debe verificar si hay un puerto abierto (el p
argumento solo funciona si el proceso en cuestión es suyo o usted es root):
netstat -tlnp
Esto debería darle una línea como: (Tengo un proxy activado localhost:8888
)
tcp 0 0 127.0.0.1:8888 0.0.0.0:* LISTEN
Si encontró esa línea o el proxy no es suyo, intente enviar paquetes a través de él. Por ejemplo, solicite una página web con curl
:
curl --socks5 localhost:8888 binfalse.de
Debería generar algunas cosas HTML. Espero que esto ayude a buscar errores ;-)
Aux : para mi ejemplo, creé el proxy a través de:
ssh -o ServerAliveInterval=60 -D8888 someone@somewhere
Reemplace someone
con su nombre de usuario y somewhere
con su servidor de destino. Por supuesto, usar OpenSSH es solo un método en un montón de posibles proxies socks5.
someone@somewhere
con su nombre de usuario y su servidor, por ejemplo ssh -D8888 YOURUSER@YOURHOST
;-)
nestat -an
o netstat -an | grep LISTEN
si tiene grep en su ruta.
curl
pista. FWIW, curl también es compatible con lo --socks5-hostname
que es similar --socks5
pero no intenta resolver localmente el nombre de host de la URL enviada (que puede ser muy útil para conectarse a intranets).
Para obtener curl para resolver el DNS en el otro lado, cambie --socks5
con --socks5-hostname
.
Vea la página del manual para más información.
Puede conectarse con netcat y seguir las reglas de RFC 1928 para hablar con el servidor. Sin embargo, debería poder escribir y leer caracteres no imprimibles, o registrarlos en un archivo para un examen más detallado.
Por ejemplo, para probar si es un servidor SOCKS5 y averiguar cuál de los métodos de autenticación sin autenticación, gssapi o usr + pwd admitiría, envíe 0x05 0x03 0x00 0x01 0x02. Un servidor SOCKS5 preparado para usar la autenticación usr + pwd respondería 0x05 0x02.
O aquí se explica cómo verificar si es un servidor SOCKS5 y si no-auth (método 0) funciona:
echo 050100 | xxd -p -r | netcat -o out.txt {server} {port}
Después de interrumpir eso, hacia el final de out.txt debería haber producido 0x05 0x00 si el servidor admite ese método (0), o 0x05 0xFF si no lo hace.