MySQL พอร์ต 3306 เข้ารหัสและถ้าไม่ฉันจะเข้ารหัสได้อย่างไร


26

ฉันทำงานผ่านการตรวจสอบความปลอดภัยสำหรับระบบในที่ทำงานของฉันและข้อกำหนดอย่างหนึ่งคือการเข้ารหัสการรับส่งข้อมูลทั้งหมดผ่านเครือข่ายสาธารณะ / ที่ไม่มีการป้องกัน เนื่องจากเรากำลังเข้าถึงฐานข้อมูล MySQL (บนพอร์ต 3306) บนเซิร์ฟเวอร์ภายนอกของเราจากเครือข่ายสำนักงานของเราการเชื่อมต่อกับ MySQL จึงจำเป็นต้องเข้ารหัส

มันถูกเข้ารหัสแล้วและถ้าไม่ฉันจะเข้ารหัสได้อย่างไร

ฉันใช้เครื่องมือและสคริปต์ที่ไม่สามารถใช้ SSH-port-forward หรือ VPN ที่เป็นแฟนซีได้ ... มันยังคงเป็นไปได้หรือไม่


1
เพียงเพื่อให้คนชนเข้ากับหัวข้อนี้เอกสารตอนนี้ (2018) ที่ลิงค์อื่น; dev.mysql.com/doc/refman/5.7/en/encrypted-connections.html
CeD

คำตอบ:


14

ไม่โดยค่าเริ่มต้น mysql ปริมาณการใช้จะไม่ถูกเข้ารหัส การตั้งค่า MySQL ให้ทำงานกับ OpenSSLแบบต่อการเชื่อมต่อเป็นทางออกที่ดีที่สุดของคุณ ไบนารีส่วนใหญ่สร้างขึ้นด้วยการสนับสนุน SSL ในปัจจุบัน แต่ก็ง่ายพอที่จะตรวจสอบว่าเวอร์ชั่นของคุณรองรับหรือไม่ จากเอกสาร:

ในการตรวจสอบว่าเซิร์ฟเวอร์ไบนารีถูกคอมไพล์ด้วยการสนับสนุน SSL หรือไม่ให้เรียกใช้ด้วยตัวเลือก --ssl ข้อผิดพลาดจะเกิดขึ้นหากเซิร์ฟเวอร์ไม่รองรับ SSL:

shell> mysqld --ssl --help
060525 14:18:52 [ERROR] mysqld: unknown option '--ssl'

ไฮเปอร์ลิงก์นั้นตายแล้ว
JellicleCat

ลิงก์สำหรับ v5.6: dev.mysql.com/doc/refman/5.6/en/ssl-connections.html (อัปเดตข้างบนด้วย)
smhg

6

โดยค่าเริ่มต้น MySQL ไม่ได้เข้ารหัสการสื่อสารของลูกค้า / เซิร์ฟเวอร์:

คุณสามารถตั้งค่า MySQL ให้ยอมรับการเชื่อมต่อผ่าน SSL และกำหนดให้ผู้ใช้ต้องใช้ SSL นี่คือคำแนะนำสำหรับการตั้งค่า SSL:


การเชื่อมโยงจะแตก
knocte
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.