Tuần trước tôi nhận được một cuộc gọi từ một khách hàng sợ hãi vì anh ta nghĩ rằng trang web của mình đã bị hack. Khi tôi nhìn lên trang web của anh ấy, tôi thấy apache2
trang mặc định. Tối hôm đó, máy chủ của tôi ( Ubuntu 16.04 LTS
) đã nâng cấp và khởi động lại. Thông thường khi có sự cố xảy ra, tôi sẽ được cảnh báo trong đêm. Lần này thì không, vì hệ thống giám sát kiểm tra mã trạng thái HTTP 200 và apache2
trang mặc định đi kèm với mã trạng thái 200.
Điều đã xảy ra là trong quá trình khởi động, apache2
liên kết với cổng 80 và 443 nhanh hơn so với nginx máy chủ web thực tế của tôi. Tôi không tự cài đặt apache2. Thông qua aptitude why apache2
tôi tìm ra gói php7.0 yêu cầu nó.
Đơn giản chỉ cần loại bỏ apache2
sẽ không hoạt động vì rõ ràng php7.0 yêu cầu nó. Có phải bằng cách nào đó có thể tạo ra một hạn chế để chỉ nginx được phép liên kết với cổng 80 và 443?
Các giải pháp khác được chào đón nhiều hơn.
This time not, because the monitoring system checks for HTTP status code 200
. Bạn có thể cải thiện hệ thống giám sát bằng cách làm cho nó kiểm tra nội dung thực tế của trang web (một số chuỗi cụ thể trong phần thân hoặc tiêu đề), điều này sẽ đáng tin cậy hơn.