Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 神秘消息从NodeJS/Express服务器获得200条_Node.js_Http_Express_Morgan - Fatal编程技术网

Node.js 神秘消息从NodeJS/Express服务器获得200条

Node.js 神秘消息从NodeJS/Express服务器获得200条,node.js,http,express,morgan,Node.js,Http,Express,Morgan,我正在云中运行一个小型虚拟专用服务器。(Vultr)这是一个为一小部分人提供html内容的简单应用程序。服务器正在运行Node.js/Express(由Morgan记录所有http请求)。我怀疑我们网站的目标受众是每天10个用户。注意:此站点没有数据库存储。该站点在docker容器中运行 当我查看站点日志时,我看到了非常奇怪的东西 其中大量: GEThttps://www.cyberpolice.ir 200 38.171毫秒-32910 告诉我这是德黑兰的人 GET https://www.t

我正在云中运行一个小型虚拟专用服务器。(Vultr)这是一个为一小部分人提供html内容的简单应用程序。服务器正在运行Node.js/Express(由Morgan记录所有http请求)。我怀疑我们网站的目标受众是每天10个用户。注意:此站点没有数据库存储。该站点在docker容器中运行

当我查看站点日志时,我看到了非常奇怪的东西

其中大量:

GEThttps://www.cyberpolice.ir 200 38.171毫秒-32910

告诉我这是德黑兰的人

GET https://www.tasnimnews.com/ 200 780.989 ms - 32910
GET https://www.akamai.com 200 657.255 ms - 32910
GET https://www.varzesh3.com/ 200 5.752 ms - 32910
GET https://www.incapsula.com 200 269.104 ms - 32910
一般来说,我会一次看到几百个。有很多这样的,尺寸总是32910

有人知道这里发生了什么吗?为什么我会看到这些信息?有人在用我的服务器做邪恶的事吗

摩根有没有更好的设置来完全识别这里发生了什么


坦白地说,我不理解将生成这个GET响应的http请求?那个请求看起来像什么

第一条规则是不要将您的Node JS服务器直接公开给公共流量。您应该在NodeJS服务器前面使用反向代理服务器。反向代理应配置为仅接受特定域的请求。下面是实现这一点的Nginx配置文件示例

server {
  listen 80;

  server_name your_domain.com;

  location / {
    proxy_pass http://localhost:5555;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_set_header Host $host;
    proxy_cache_bypass $http_upgrade;
   }
}

这并不重要,但我没有提到我在docker容器中运行这个。你是在告诉我什么不该做,但没有提到为什么。(参见上面的6 ea?非常感谢。看起来您的应用程序已经暴露于某种流量机器人。有人正在使用各种主机头针对您的应用程序生成大量HTTP请求。因此,您必须将服务器堆栈配置为侦听特定域,以消除这些不需要的请求。如果您能够使用Cloudflare之类的web应用程序防火墙,这将非常好。然后,您可以将iptables配置为仅与防火墙ip通信。因此,您可以完全消除恶意流量,因为外部系统将无法直接与您的服务器通信。