Tengo un script de shell que se utiliza netcat
para escuchar en localhost
el puerto 1111 las solicitudes web. Cada vez que intento acceder, localhost:1111/index.html
por ejemplo, obtengo:
invalid connection to [127.0.0.1] from localhost [127.0.0.1] 60038
El número al final (60038) parece estar aumentando cada vez que accedo localhost
.
¿Alguna sugerencia sobre lo que va mal? ¿Y cuál es el default localhost
directorio? ¿Dónde debo poner un index.html
para que localhost:1111/index.html
funcione?
EDITAR
Aquí está el guión completo:
#!/bin/sh
while true
do
netcat -vvl localhost -p 1111 -c '
set -x
read http_request
echo HTTP/1.0 200 OK
echo
echo "Received HTTP request: $http_request"
'
done
netcat
línea de comando? ¿El mensaje de "conexión no válida" proviene denetcat
otra herramienta?Respuestas:
Su script original requiere que la conexión provenga de un host llamado
localhost
, pero por alguna razón, el filtrado está fallando. Inusual, porque coincide exactamente con el nombre que aparece en el error:invalid connection to [127.0.0.1] from localhost [127.0.0.1] 60038
Este comando escuchará en la
localhost
interfaz de red (e ignorará las solicitudes de otras interfaces, como su LAN):Si desea escuchar las solicitudes en todas las interfaces, puede descartar la
-s
parte por completo:En mi sistema, si quiero hacer el mismo tipo de filtrado de host de origen sin
-s
, necesito usar127.0.0.1
olocalhost.localdomain
:En cualquier caso, una de las opciones anteriores debería funcionar para usted:
fuente