networking – ¿Una forma sencilla de crear un túnel de un puerto local a otro?

Pregunta:

Tengo un servidor de desarrollo, al que solo se puede acceder desde 127.0.0.1:8000, no desde 192.168.1.x: 8000. Como un truco rápido, ¿hay alguna manera de configurar algo para escuchar en otro puerto (digamos, 8001) para que desde la red local pueda conectar 192.168.1.x: 8001 y canalizaría el tráfico entre el cliente y 127.0? .0.1: 8000?

Respuesta:

Con socat en el servidor:

socat tcp-listen:8001,reuseaddr,fork tcp:localhost:8000

De forma predeterminada, socat escuchará en el puerto TCP 8001 en cualquier dirección IPv4 o IPv6 (si es compatible) en la máquina. Puede restringirlo a IPv4 / 6 reemplazando tcp-listen con tcp4-listen o tcp6-listen , o a una dirección local específica agregando a ,bind=that-address .

Lo mismo para el socket de conexión al que está utilizando el proxy, puede usar cualquier dirección en lugar de localhost y reemplazar tcp con tcp4 o tcp6 si desea restringir la resolución de la dirección a direcciones IPv4 o IPv6.

Tenga en cuenta que para el servidor que escucha en el puerto 8000, la conexión aparecerá como proveniente del proxy (en el caso de localhost , será localhost ), no del cliente original. Necesitaría usar enfoques DNAT (pero que requieren privilegios de superusuario) para que el servidor pueda decir quién es el cliente.

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım