2
เชื่อมต่อกับ MySQL อย่างปลอดภัย - SSL ของ Stunnel กับ SSH Tunneling ใน MySQL
เรามีแอปพลิเคชั่น PHP ที่เชื่อมต่อกับเซิร์ฟเวอร์ MySQL และเราต้องการความปลอดภัยในการเชื่อมต่อระหว่างเว็บ & แอปพลิเคชันเซิร์ฟเวอร์และฐานข้อมูล ในช่วงเวลาเร่งด่วนเว็บเซิร์ฟเวอร์จะทำการเชื่อมต่อพร้อมกันหลายร้อยไปยังฐานข้อมูลและทำการอ่านและเขียนขนาดเล็กจำนวนมาก ฉันรู้ว่านี่ไม่เหมาะสมและกำลังพยายามลดจำนวนการเชื่อมต่อฐานข้อมูลควบคู่ไปกับสิ่งนี้ เราไม่มีการเชื่อมต่อกับฐานข้อมูลที่เปิดอยู่ในปัจจุบันและแม้ว่าเราจะตั้งใจในอนาคตฉันต้องการที่จะใช้สิ่งนี้อย่างเป็นอิสระ ฮาร์ดแวร์ฉลาด - เซิร์ฟเวอร์ MySQL ค่อนข้างหนา (16 คอร์) เหมือนกับเว็บเซิร์ฟเวอร์ พวกเขากำลังทุ่มเทเซิร์ฟเวอร์ คำถามของฉันจะล้อมรอบวิธีที่มีประสิทธิภาพที่สุดในการรักษาความปลอดภัยและเข้ารหัสการเชื่อมต่อไปยังเซิร์ฟเวอร์ฐานข้อมูล งานวิจัยของฉันได้แนะนำว่าค่าใช้จ่ายหลักของประสิทธิภาพคือการตั้งค่าการเชื่อมต่อ SSL - เมื่อเชื่อมต่อ SSL แล้วจะมีโทษประสิทธิภาพเล็กน้อย และนี่คือสิ่งที่ฉันมีเกี่ยวกับการรักษาความปลอดภัยการเชื่อมต่อแต่ละวิธี: ใบรับรอง SSL SSL - ทำงานเหมือนกับ SSL ปกติ สามารถใช้ใบรับรองไคลเอ็นต์เพื่อป้องกันการเชื่อมต่อที่ไม่ได้รับอนุญาต ไม่มีการเชื่อมต่อถาวรกับการตั้งค่าที่มีอยู่ของเรา ยังคงต้องมี MySQL ฟังบนพอร์ตที่เปิดในไฟร์วอลล์ stunnel ตั้งค่าพอร์ตไปยังพอร์ต ssl tunnel ไม่ต้องกำหนดค่า MySQL ใหม่ สามารถปิดพอร์ตการฟัง MySQL ปกติเพื่อป้องกันการพยายามเชื่อมต่อ MySQL …