Tại sao đột nhiên có rất nhiều 400 yêu cầu trong nhật ký truy cập của tôi?


10

Dưới đây là một phần nhỏ của access_log của tôi

118.186.8.50 - - [19/Dec/2011:22:42:57 +0800] "-" 400 0 "-" "-"
05
118.186.8.50 - - [19/Dec/2011:22:42:57 +0800] "-" 400 0 "-" "-"
06
118.186.8.50 - - [19/Dec/2011:22:42:57 +0800] "-" 400 0 "-" "-"
07
118.186.8.50 - - [19/Dec/2011:22:42:57 +0800] "-" 400 0 "-" "-"
08
118.186.8.50 - - [19/Dec/2011:22:42:57 +0800] "-" 400 0 "-" "-"
09
220.173.136.39 - - [19/Dec/2011:22:43:22 +0800] "-" 400 0 "-" "-"
10
220.173.136.39 - - [19/Dec/2011:22:43:22 +0800] "-" 400 0 "-" "-"
11
220.173.136.39 - - [19/Dec/2011:22:43:22 +0800] "-" 400 0 "-" "-"
12
220.173.136.39 - - [19/Dec/2011:22:43:22 +0800] "-" 400 0 "-" "-"
13
220.173.136.39 - - [19/Dec/2011:22:43:22 +0800] "-" 400 0 "-" "-"
14
220.173.136.39 - - [19/Dec/2011:22:43:22 +0800] "-" 400 0 "-" "-"

Và khối lượng rất lớn, khoảng một trăm ngàn trong số 400 yêu cầu này mỗi giây. Và tôi khá chắc chắn rằng không có lỗi trên trang web của tôi trong khoảng thời gian đó. (Không có báo cáo lỗi và tôi đã không thay đổi mã nguồn)

Câu trả lời:


5

Ai đó đã làm mờ máy chủ của bạn. Cũng xem Wikipedia .

Về cơ bản liên quan đến việc gửi các khối dữ liệu không hợp lệ nhanh chóng để xem nếu có bất cứ điều gì phá vỡ.

Nginx được đặt để trả về lỗi 400 khi không có dữ liệu yêu cầu nào được gửi.

Đừng lo lắng về nó. Nginx chỉ có thể tiếp tục nảy chúng mãi mãi mà không đổ mồ hôi.


Điều duy nhất anh ta sẽ phải lo lắng là các tệp nhật ký hấp thụ không gian đĩa. Đây là nơi xoay vòng log thích hợp là hữu ích.
Justin Pearce

Cùng một vấn đề ở đây. Theo tôi, số lượng địa chỉ IP khác nhau không tạo ra một cuộc tấn công (làm mờ) rất có thể xảy ra. Vẫn đang tìm kiếm một lời giải thích tốt hơn.
Oliver

2

Kiểm tra và xem nếu địa chỉ IP gây ra 400 đang sử dụng Google Chrome. Chrome sử dụng kết nối trước để thiết lập một số kết nối với máy chủ và đóng chúng nếu không được sử dụng.

Vì không có yêu cầu nào được thực hiện trong kết nối, nginx sẽ ghi lại lỗi này.


Tôi đang gặp vấn đề tương tự ở đây và tôi có chính xác định dạng tệp nhật ký nên tôi cho rằng OP không thay đổi mặc định. Điều đó có nghĩa là chuỗi tác nhân người dùng đang được ghi lại - thực tế là nó không chứa bất kỳ giá trị nào. Vì vậy, tôi không chắc chắn cách kiểm tra xem những khách hàng đó có đang sử dụng Chrome hay không. Bản thân tôi không thể tái tạo lỗi này trong nhật ký bằng Chrome 26. Bất kỳ gợi ý khác?
Oliver

Tác nhân người dùng được gửi dưới dạng tiêu đề yêu cầu, trừ khi / cho đến khi yêu cầu được thực hiện, nginx không có phương tiện để biết và ghi nhật ký chuỗi tác nhân người dùng. Tuy nhiên, bạn có thể kiểm tra các bản ghi nhật ký khác xuất phát từ địa chỉ IP đó và, nếu có bất kỳ yêu cầu thực tế nào được thực hiện bởi khách hàng đó, hãy tìm hiểu xem đó có phải là Chrome hay không.
Ivan Anishchuk
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.