ความเป็นมา: เซิร์ฟเวอร์ Debian Stretch amd64 บน Google Cloud พร้อม Apache 2.4.25 กำลังเรียกใช้เว็บไซต์ที่ใช้ PHP ผ่าน proxy_fcgi ไปยัง PHP-FPM ฐานข้อมูลแบ็กเอนด์คือ PostgreSQL 10 แพ็คเกจ Postgres ได้รับการติดตั้งจาก Postgres apt repo อย่างเป็นทางการ อย่างอื่นคือวานิลลาจาก Debian repos มีพอร์ต 80 เปลี่ยนเส้นทางไปที่ 443 ด้วยใบรับรอง Let's Encrypt เปิดใช้งาน HTTP/2 และ Brotli นอกจากนี้ยังมีพร็อกซีย้อนกลับไปยังดีมอนเหตุการณ์ที่เซิร์ฟเวอร์ส่งบนเซิร์ฟเวอร์เดียวกัน (https://github.com/vgno/ssehub).
เซิร์ฟเวอร์เปิดใช้งานมานานกว่า 2 ปีแล้ว แต่ในช่วงไม่กี่เดือนที่ผ่านมา มีข้อบกพร่องเป็นระยะซึ่งไซต์หยุดตอบสนองคำขอ โดยปกติแล้วจะหายไปหลังจากผ่านไปสองสามนาที ฉันได้ทำการวิเคราะห์บันทึกจำนวนมาก และดูเหมือนว่าจะไม่เกี่ยวข้องกับกระบวนการของเซิร์ฟเวอร์ การใช้งาน CPU เป็นเพียงเล็กน้อย การใช้หน่วยความจำต่ำ ไม่มีข้อผิดพลาดปรากฏในบันทึกสำหรับ Apache, PostgreSQL, FPM, syslog, ssehub เซิร์ฟเวอร์ยังติดตั้งfail2ban แต่ไม่มีรายการบันทึกสำหรับสิ่งนั้น ฉันได้เพิ่มการบันทึกการวินิจฉัยเพิ่มเติมใน Apache และ FPM เพื่อตรวจสอบคำขอที่ใช้เวลานานในการประมวลผล แต่ก็ไม่ได้เกิดอะไรขึ้น
นี่คือผลลัพธ์จาก iptables -L
:
เชนอินพุท (ยอมรับนโยบาย)
เป้าหมาย prot เลือกปลายทางต้นทาง
f2b-sshd tcp -- ทุกที่ ทุกแห่ง หลายพอร์ต dports ssh
DROP udp -- ทุกที่ ทุกแห่ง udp dpt:l2f นโยบายตรงกับ dir ในแบบสำรวจไม่มี
วางทั้งหมด -- ทุกที่ที่ใดก็ได้ ctstate ไม่ถูกต้อง
ยอมรับทั้งหมด -- ทุกที่ ทุกแห่ง ctstate ที่เกี่ยวข้อง ก่อตั้ง
ยอมรับ udp -- ทุกที่ ทุกแห่ง หลายพอร์ต dports isakmp,ipsec-nat-t
ยอมรับ udp -- ทุกที่ ทุกแห่ง udp dpt:l2f ตรงกับนโยบาย dir ใน pol ipsec
DROP udp -- ที่ไหนก็ได้ udp dpt:l2f
ส่งต่อไปข้างหน้า (ยอมรับนโยบาย)
เป้าหมาย prot เลือกปลายทางต้นทาง
วางทั้งหมด -- ทุกที่ที่ใดก็ได้ ctstate ไม่ถูกต้อง
ยอมรับทั้งหมด -- ทุกที่ ทุกแห่ง ctstate ที่เกี่ยวข้อง ก่อตั้ง
ยอมรับทั้งหมด - ทุกที่ทุกที่
ยอมรับทั้งหมด -- 192.168.42.0/24 192.168.42.0/24
ยอมรับทั้งหมด -- ทุกที่ 192.168.43.0/24 ctstate ที่เกี่ยวข้อง ก่อตั้ง
ยอมรับทั้งหมด -- 192.168.43.0/24 ทุกที่
วางทั้งหมด - ทุกที่ทุกที่
Chain OUTPUT (ยอมรับนโยบาย)
เป้าหมาย prot เลือกปลายทางต้นทาง
เชน f2b-sshd (อ้างอิง 1 รายการ)
เป้าหมาย prot เลือกปลายทางต้นทาง
คืนทั้งหมด - ทุกที่ทุกที่
คำแนะนำสำหรับสาเหตุที่เป็นไปได้หรือสิ่งที่ฉันควรตรวจสอบ? ในขณะนี้ สาเหตุเดียวที่ฉันคิดได้คือความแออัดของเครือข่าย แต่นั่นพิสูจน์ได้ยากมากเนื่องจากเป็นปัญหาที่ไม่ต่อเนื่องและมักจะหายไปเมื่อฉันรู้ตัวและเริ่มทำการทดสอบบางอย่าง นอกจากนี้ยังน่าแปลกใจที่ Google Cloud จะมีปัญหาเครือข่ายบ่อยครั้งGoogle มีนโยบายการกำหนดปริมาณการเข้าชมบางประเภทที่ฉันไม่ทราบหรือไม่ เป็นเซิร์ฟเวอร์ที่มีทราฟฟิกต่ำมากและปัญหามักเกิดขึ้นนอกเวลาทำการเมื่อแทบไม่มีใครใช้ไซต์