Apache 突然在 http 上變得非常慢,但在 https 上變得更快

Apache 突然在 http 上變得非常慢,但在 https 上變得更快

背景: 我在 ubuntu 上運行 Apache 2。它的使用率很低,主要是透過行動應用程式透過 Web 服務 URL 存取。在我安裝 SSL 憑證之前它工作正常。我現在有http和https。當我使用 https 存取伺服器時,我得到了相當快的回應(但可能沒有以前那麼快)。當我使用http時,速度很慢。

我嘗試過的:郵政:

  • curl localhost來自主機,這需要一些時間,這意味著不存在路由問題。
  • 該伺服器在 Amazon EC2 執行個體上運行,僅由我管理。

也:

  • 我發現 Apache 一旦運行就會創建允許的最大進程數,而以前的情況並非如此。我將 MaxClients 降低到 20,我認為我得到了更快的回應,但仍然需要一分多鐘的時間,而且我總是有 MaxClients Apache 進程。
  • dmesg返回很多[ 1953.655703] TCP: Possible SYN flooding on port 80. Sending cookies.
  • 當我 netstat 時,我得到許多帶有SYN_RECV.可能是 DDoS 攻擊?
  • 從 EC2 的監控圖表中,我看到自 2 天前以來「最大網路輸入(位元組)」較高的模式。順便說一下伺服器還在測試中,實際流量很低且不一致。
  • 我試著去使用限制傳入連接的解決方案iptables,仍然沒有運氣,但我正在嘗試。

問題: 可能是什麼問題呢?這是 DDoS 攻擊嗎?

更新: 我討論過這個問題這裡。這確實是一次 DDoS 攻擊;也討論了一些解決方案。

答案1

下次,您可能想要使用類似apachetop或 的東西tail -f /var/log/httpd/access_log來更好地了解正在發生的事情。您可能會看到很多請求進來,很可能具有可識別的模式:例如特定的ip 範圍,或相同的url,可能在某些登入表單上進行暴力嘗試等。自動執行此操作如果 url 請求在一定時間內足夠高,則範圍進入 iptables 阻止規則。

相關內容