無効な接続を与えるシェルスクリプトのnetcat


13

Webリクエストをポート1111でnetcatリッスンするためlocalhostに使用するシェルスクリプトがあります。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別のツールから送信されたものですか?
MRB

完全なスクリプトを追加しました。netcatがメッセージを提供しているかどうかはわかりませんが、設定されている可能性があります。しかし、どのセットが何をするのかわかりません!
MinaHany

そのスクリプトがリスニング側です。クライアント側も投稿できますか?
jw013

回答:


6

元のスクリプトでは、接続がという名前のホストからのものであることが必要ですlocalhostが、何らかの理由でフィルタリングが失敗しています。エラーにリストされている名前と正確に一致するため、異常です。invalid connection to [127.0.0.1] from localhost [127.0.0.1] 60038

このコマンドは、localhostネットワークインターフェイスでリッスンします(LANなどの他のインターフェイスからの要求を無視します)。

netcat -vvl -s localhost -p 1111 -c '
    set -x
    read http_request
    echo HTTP/1.0 200 OK
    echo
    echo "Received HTTP request: $http_request"
'

すべてのインターフェイスでリクエストをリッスンする場合は、-s一部を完全に削除できます。

netcat -vvl -p 1111 -c '...'

私のシステムでは、-sを使用せずに同じ種類のソースホストフィルタリングを実行する場合、127.0.0.1またはのいずれかを使用する必要がありますlocalhost.localdomain

netcat -vvl localhost.localdomain -p 1111 -c '...'

netcat -vvl 127.0.0.1 -p 1111 -c '...'

いずれの場合でも、上記のオプションのいずれかが機能します。

$ netcat -vvl 127.0.0.1 -p 1111 -c '
quote>     set -x
quote>     read http_request
quote>     echo HTTP/1.0 200 OK
quote>     echo
quote>     echo "Received HTTP request: $http_request"
quote> '
listening on [any] 1111 ...
connect to [127.0.0.1] from localhost.localdomain [127.0.0.1] 35368
+ read http_request
+ echo HTTP/1.0 200 OK
+ echo
+ echo Received HTTP request: GET / HTTP/1.1
$

どうもありがとう!localhostを127.0.0.1に変更すると、firefoxでトリックを行うように見えました。Chromeの処理方法は異なると思います。
MinaHany
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.