标签: bad-request

如何阻止神秘的远程请求?

我的 CentOS 服务器正在经历像这样的巨大(每天数百万)请求:

Srv PID Acc M   CPU SS  Req Conn    Child   Slot    Client  Protocol    VHost   Request
62-1    -   0/0/335 .   0.00    1947    204049  0.0 0.00    0.85    104.248.57.218  http/1.1    www.myrealdomain.co.uk:80   GET http://218.22.14.198/index HTTP/1.1
Run Code Online (Sandbox Code Playgroud)

该请求看起来像是我的服务器正在花时间服务或获取其他页面内容。我尝试阻止 IP,这只会使源争夺新 IP(对于客户端和请求 IP)并且没有成功。

我什至在高安全性上使用 Cloudflare,包括他们的 Web 应用程序防火墙,但这些请求仍然成群结队。

谁能解释为什么要求这些,更重要的是,如何完全防止它。

该服务器运行着大约 50 个站点,所有 WordPress 的基本配置,而且它是一个专用服务器。

firewall bad-request

12
推荐指数
1
解决办法
1162
查看次数

Kerberos SSO 的 Apache 错误请求“请求标头字段的大小超出服务器限制”

我正在通过运行在 Apache(SLES 11.1 上的 Apache2)上的网站为 Active Directory 用户设置 SSO,并且在使用 Firefox 进行测试时,一切正常。但是当我尝试在 Internet Explorer 8 (Windows 7) 中打开网站时,我得到的只是

“错误的请求

您的浏览器发送了此服务器无法理解的请求。

请求头字段的大小超过服务器限制。

授权:协商【超长字符串】”

我的 vhost.cfg 看起来像这样:

<VirtualHost hostname:443>
  LimitRequestFieldSize 32760
  LimitRequestLine 32760
  LogLevel debug

  <Directory "/data/pwtool/sec-data/adbauth">
    AuthName "Please login with your AD-credentials (Windows Account)"
    AuthType Kerberos
    KrbMethodNegotiate on
    KrbAuthRealms REALM.TLD
    KrbServiceName HTTP/hostname
    Krb5Keytab /data/pwtool/conf/http_hostname.krb5.keytab
    KrbMethodK5Passwd on
    KrbLocalUserMapping on
    Order allow,deny
    Allow from all
  </Directory>

  <Directory "/data/pwtool/sec-data/adbauth">
    Require valid-user
  </Directory>

    SSLEngine on
    SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
    SSLCertificateFile /etc/apache2/ssl.crt/hostname-server.crt
    SSLCertificateKeyFile /etc/apache2/ssl.key/hostname-server.key
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

我还确保删除了 cookie,并为 LimitRequestFieldSize 和 …

single-sign-on mod-auth-kerb bad-request apache-2.2

10
推荐指数
1
解决办法
4万
查看次数

我们应该多久期望 400 个错误请求?

我们运行一个 Apache2 Web 服务器,它每天提供大约 2-3 百万个页面(Lighttpd 仅提供 HTML+CSS+Javascript、图像和其他内容)。我们的每日logwatch电子邮件每天输出 3-5 个“400 个错误请求”项目。它主要是每天针对相同的 URL,但每个 URL 很少超过 1 次。列出的 URL 主要用于我们网站上的标准页面浏览(几乎每个用户都会访问的 URL)。

当 grep 中error.log列出的 IPaccess.log收到错误时,结果总是[error] [client xxx.xxx.xxx.xxx] request failed: error reading the headers, referer: xxx

我的假设是这些没有什么可担心的,至少当它们很少出现时。

我们在这里看到的错误数量是由断开的连接产生的还是类似的?我应该检查什么才能弄清楚?我应该让它一个人呆着吗?

http 400 bad-request apache-2.2

5
推荐指数
2
解决办法
1938
查看次数

k8s nginx ingress 在加载时随机返回 502 错误

我们在 k8s 集群 (v.1.17) 上使用 nginx (1.15.8.1) 作为入口控制器,由 rancher (2.5.7) 管理。

到目前为止,这工作得很好,但现在我们设置了一个自定义 API pod,可以通过 ingress 从外部访问。

现在,通过每秒在 API 上触发请求来对 API 进行一些负载测试,每两个请求随机返回“502 Bad Gateway”。但不是定期的。

<html>
<head><title>502 Bad Gateway</title></head>
<body>
<center><h1>502 Bad Gateway</h1></center>
<hr><center>openresty/1.15.8.1</center>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

各自登录入口控制器:

2021/04/11 11:02:48 [error] 25430#25430: *55805583 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: xxx, server: xxx, request: "POST /api/v1/xxx HTTP/2.0", upstream: "http://xxx/api/v1/xxx", host: "xxx"
Run Code Online (Sandbox Code Playgroud)

我们在非 K8s 环境中运行与 docker 容器完全相同的容器,之前我们从未遇到过这个问题,所以目前我认为这不是容器/API 实现的问题。

我的想法是:

1- 抽象 API pod 的服务定义无法将流量路由到 pod,因此会回复 502

-> …

bad-request kubernetes rancher-2 nginx-ingress

5
推荐指数
1
解决办法
1万
查看次数

HAProxy 似乎无缘无故地返回错误请求(无效主机)

我一直在尝试测试如下所示的设置:

网站:Http GET 请求 -> Nginx -> HAProxy -> .Net 应用程序

我将 Nginx 和 HAProxy 放在同一台 Debian 机器上。但是,HAProxy 不断返回“Bad Request (Invalid Host)”。我已经确定 HAProxy 有问题,首先将请求直接从网站发送到 .Net 应用程序,该应用程序有效。将 Nginx 链接到 .Net 应用程序也有效。但是,当我尝试使用 HAProxy 进行测试时,我开始收到错误消息。.Net 应用程序是否实际在 HAProxy 后面运行并不重要,我总是收到错误消息。

我尝试发送的消息的一个示例是http://192.168.7.119:81/a:diff1. 预期的回复是 JPG 图像。当发送到 HAProxy(Apache、Nginx、应用程序)以外的任何东西时,这似乎工作正常,但 HAProxy 只是说“错误请求”。奇怪的是,我的日志文件中没有看到任何错误。

以下是日志文件中的示例:

Feb  2 15:10:08 companyDebian haproxy[5566]: 192.168.7.114:51105 [02/Feb/2015:15:10:08.415] renderfarm renderfarm/renderA 0/0/0/1/1 400 212 - - ---- 1/1/0/1/0 0/0 "GET /a:diff1 HTTP/1.1"
Feb  2 15:10:08 companyDebian haproxy[5566]: 192.168.7.114:51105 [02/Feb/2015:15:10:08.417] renderfarm renderfarm/renderA 73/0/0/4/77 400 212 - - ---- …
Run Code Online (Sandbox Code Playgroud)

haproxy 400 bad-request

4
推荐指数
2
解决办法
2万
查看次数