TCP nodejs サーバーを起動した後、サーバーによってブロックされました。なぜですか?

TCP nodejs サーバーを起動した後、サーバーによってブロックされました。なぜですか?

最近、VPS にノードをインストールし、チュートリアルを完了しようとしました。このコードを server.js に保存し、putty で node server.js を実行しました。VPS から即座に「禁止」され、アクセスできなくなりましたが、他のコンピューターではアクセスできます。

var net = require('net');
var server = net.createServer(function (socket) {
  console.log("Connection from " + socket.remoteAddress);
  socket.end("Hello World\n");
});
server.listen(7000, "localhost");
console.log("TCP server listening on port 7000 at localhost.");

この問題はサーバーのファイアウォールに関連していますか? 解決するにはどうすればいいですか?

答え1

プラットフォームに関する詳細情報がなければ、推測するのは少し難しいです。ただし、別のマシンから SSH で接続できる場合は、iptables -Lroot として iptables ルールを確認してください。マシンの IP アドレスに関連する「fail2ban」チェーンなどのルールが表示される場合があります。それらは DROP または REJECT で終わり、ボックスへのアクセスを回復するには、これらのルールを削除する必要があるでしょう。

これらをクリアするには、まず削除したいルールの行番号が必要です。iptables -L --line-numbersこれを表示するには pass します。次のような表示になります。

Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    REJECT  all  --  <some-ip>             anywhere  

次に、 を実行しますiptables --delete INPUT 1。これにより、私の例ではルールが削除されます。

関連情報