การใช้งาน NGINX ModSecurity
คู่มือนี้เรียบเรียงและปรับรูปแบบสำหรับ Ruk-Com Cloud PaaS ภาพหน้าจออาจแตกต่างเล็กน้อยตามเวอร์ชันของระบบ
คลิกหรือแตะภาพหน้าจอเพื่อดูรายละเอียดขนาดจริง
วัตถุประสงค์
บทความนี้อธิบายการใช้งาน การใช้งาน NGINX ModSecurity บน Ruk-Com Cloud PaaS โดยจัดลำดับขั้นตอนและจุดตรวจสอบสำหรับการนำไปใช้งานจริง
ก่อนเริ่มดำเนินการ
- เข้าสู่ระบบด้วยบัญชีที่มีสิทธิ์จัดการ Environment ที่เกี่ยวข้อง
- ตรวจสอบชื่อ Environment, Region และทรัพยากรเป้าหมายก่อนบันทึกการเปลี่ยนแปลง
- สำรองข้อมูลหรือกำหนดแผนย้อนกลับก่อนแก้ไขระบบ Production
ModSecurityเป็นโมดูลไฟร์วอลล์เว็บแอปพลิเคชันข้ามแพลตฟอร์มแบบโอเพนซอร์ส (WAF) ที่ช่วยในการตรวจจับและป้องกันการโจมตีต่าง ๆ กับเว็บแอปพลิเคชัน โมดูลนี้สามารถบล็อกการโจมตีด้วยการแทรกโค้ดทั่วไป ซึ่งช่วยให้มั่นใจได้ถึงความปลอดภัยของเซิร์ฟเวอร์ในระดับที่สูงขึ้น มาพร้อมกับชุดกฎข้อบังคับสำหรับการเขียนสคริปต์ข้ามเว็บไซต์ (cross website scripting), การแทรก SQL, ตัวแทนผู้ใช้ที่แย่ ๆ (bad user agents), การดักปล้นเซสชัน, โทรจันและการหาประโยชน์อื่น ๆ
NGINX stacks ที่ได้รับการรับรองจาก Ruk-Com Cloud (แอปพลิเคชันเซิร์ฟเวอร์ และ load balancer) มาพร้อมกับโมดูล ModSecurity ที่สร้างไว้ล่วงหน้าแล้ว สามารถทำตามขั้นตอนเพียงไม่กี่ขั้นตอนเพื่อเปิดใช้งานฟังก์ชันนี้บนคอนเทนเนอร์:
1. โหลด ModSecurity shared NGINX module โดยยกเลิกการคอมเมนต์บรรทัดถัดไปในไฟล์/etc/NGINX/NGINX.conf:
#load_module modules/ngx_http_modsecurity_module.so;

บันทึกการเปลี่ยนแปลงลงในไฟล์
2. จากนั้นเปิดใช้งานฟังก์ชันModSecurityโดยยกเลิกการคอมเมนต์บรรทัดต่อไปนี้ในการกำหนดค่า/etc/NGINX/NGINX.confเดียวกันสำหรับ NGINX application server stack (หรือ/etc/NGINX/NGINX-jelastic.confสำหรับตัว load balancer เช่นในกรณีของเรา)
#modsecurity on;
#modsecurity_rules_file /etc/nginx/conf.d/modsecurity/modsec_includes.conf;

เคล็ดลับ:
คุณสามารถใช้ช่องค้ Search เพื่อค้นหาสตริงที่ต้องการได้อย่างรวดเร็ว
อย่าลืมบันทึกไฟล์หลังการปรับเปลี่ยน
3. ตามการกำหนดค่า/etc/NGINX/conf.d/modsecurity/modsec_includes.conf ชุดกฎหลัก ModSecurity ของ OWASP (CRS)จะถูกรวมอยู่ โดยค่าเริ่มต้น (ให้การป้องกันทั่วไปจากช่องโหว่ที่ไม่รู้จักซึ่งมักพบในเว็บแอปพลิเคชัน)

นอกจากนี้หากจำเป็นคุณสามารถอัปโหลดกฎที่กำหนดเองของคุณเป็นไฟล์*.ประชุมไปยังโฟลเดอร์/etc/NGINX/conf.d/modsecurity/owasp-modsecurity-crs/rules
4. รีสตาร์ทโหนด NGINX ที่เหมาะสมเพื่อใช้การปรับแต่งที่ดำเนินการทั้งหมด

ตอนนี้แอปพลิเคชันของคุณได้รับการปกป้องด้วย ModSecurity แล้ว
5. คุณสามารถตรวจสอบได้ว่าโหลดแล้วโดยการรันคำสั่ง NGINX -V บนโหนด (เช่น ผ่านเว็บ SSH) และค้นหาโมดูล ModSecurity ในรายการ
5. คุณสามารถตรวจสอบได้ว่าโหลดแล้วโดยดำเนินการคำสั่งNGINX-Vบนโหนด (เช่น ผ่านเว็บ SSH) และค้นหาโมดูล ModSecurity ในลิสรายการ

6. การทำงานของ ModSecurity สามารถตรวจสอบได้โดยจำลองการโจมตีแอปพลิเคชันของคุณ ตัวอย่างเช่น ลองเพิ่มสตริง
/?q="><script>alert(1)</script>
ในโดเมน Environment ของคุณหากโมดูลทำงานตามที่ตั้งใจไว้ควรแสดงหน้าหน้าข้อผิดพลาด 403และการดำเนินการที่เหมาะสม logged ลงในไฟล์ error log:

อย่างที่เห็นModSecurityพร้อมทำงานเพื่อให้เว็บแอปพลิเคชันของคุณปลอดภัย
เริ่มทดลองใช้ฟรี และรับประกันการปกป้องระดับสูงในขณะที่รันโปรเจกต์ของคุณด้วยรักคอมคลาวด์ PaaS