У меня есть сценарий оболочки, который использует netcat
для прослушивания localhost
на порт 1111 для веб-запросов. Каждый раз, когда я пытаюсь получить доступ, localhost:1111/index.html
например, я получаю:
invalid connection to [127.0.0.1] from localhost [127.0.0.1] 60038
число в конце (60038), кажется, увеличивается каждый раз, когда я получаю доступ localhost
.
Любые предложения о том, что идет не так? А что это за default localhost
каталог? Где я должен положить index.html
так, чтобы localhost:1111/index.html
это работало?
РЕДАКТИРОВАТЬ
вот полный скрипт:
#!/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
командную строку? Сообщение «недопустимое соединение» приходит отnetcat
другого инструмента?Ответы:
Ваш оригинальный сценарий требует, чтобы соединение исходило от хоста с именем
localhost
, но по какой-то причине фильтрация не удалась. Необычно, потому что оно точно соответствует названию, указанному в ошибке:invalid connection to [127.0.0.1] from localhost [127.0.0.1] 60038
Эта команда будет прослушивать
localhost
сетевой интерфейс (и будет игнорировать запросы от других интерфейсов, таких как ваша локальная сеть):Если вы хотите прослушивать запросы на всех интерфейсах, вы можете полностью отбросить
-s
часть:В моей системе, если я хочу сделать такое же исходный узел фильтрации без
-s
, мне нужно использовать либо127.0.0.1
илиlocalhost.localdomain
:В любом случае, один из вышеперечисленных вариантов должен работать для вас:
источник