MariaDB
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> MariaDB

Quản lý khóa SSL và mã hóa dữ liệu MySQL khi chuyển tuyến

Cơ sở dữ liệu thường hoạt động trong một môi trường an toàn. Nó có thể là một trung tâm dữ liệu với một VLAN chuyên dụng cho lưu lượng cơ sở dữ liệu. Nó có thể là một VPC trong EC2. Nếu mạng của bạn trải rộng trên nhiều trung tâm dữ liệu ở các khu vực khác nhau, bạn thường sử dụng một số loại Mạng riêng ảo hoặc đường hầm SSH để kết nối các vị trí này một cách an toàn. Với quyền riêng tư và bảo mật dữ liệu đang là chủ đề nóng những ngày này, bạn có thể cảm thấy tốt hơn với một lớp bảo mật bổ sung.

MySQL hỗ trợ SSL như một phương tiện để mã hóa lưu lượng cả giữa các máy chủ MySQL (sao chép) và giữa các máy chủ và máy khách MySQL. Nếu bạn sử dụng cụm Galera, các tính năng tương tự cũng có sẵn - cả giao tiếp nội bộ và kết nối với máy khách đều có thể được mã hóa bằng SSL.

Một cách phổ biến để triển khai mã hóa SSL là sử dụng chứng chỉ tự ký. Hầu hết thời gian, không cần thiết phải mua chứng chỉ SSL do Tổ chức phát hành chứng chỉ cấp. Bất kỳ ai đã trải qua quá trình tạo chứng chỉ tự ký có thể sẽ đồng ý rằng đó không phải là quá trình đơn giản nhất - hầu hết thời gian, bạn kết thúc việc tìm kiếm trên internet để tìm cách thực hiện và hướng dẫn về cách thực hiện việc này. Điều này đặc biệt đúng nếu bạn là một DBA và chỉ trải qua quá trình này vài tháng hoặc thậm chí vài năm một lần. Đây là lý do tại sao chúng tôi đã thêm tính năng ClusterControl để giúp bạn quản lý các khóa SSL trên toàn bộ cụm cơ sở dữ liệu của mình. Trong bài đăng trên blog này, chúng tôi sẽ sử dụng ClusterControl 1.5.1.

Quản lý khóa trong ClusterControl

Bạn có thể vào Quản lý khóa bằng cách đi tới Menu bên -> Quản lý khóa phần.

Bạn sẽ thấy màn hình sau:

Bạn có thể thấy hai chứng chỉ được tạo, một chứng chỉ là CA và chứng chỉ còn lại là chứng chỉ thông thường. Để tạo thêm chứng chỉ, hãy chuyển sang ‘ Tạo khóa Tab ':

Chứng chỉ có thể được tạo theo hai cách - trước tiên bạn có thể tạo CA tự ký và sau đó sử dụng nó để ký chứng chỉ. Hoặc bạn có thể truy cập trực tiếp vào ‘ Chứng chỉ và khóa máy khách / máy chủ 'Và tạo chứng chỉ. CA bắt buộc sẽ được tạo cho bạn ở chế độ nền. Cuối cùng nhưng không kém phần quan trọng, bạn có thể nhập chứng chỉ hiện có (ví dụ:chứng chỉ bạn đã mua từ một trong nhiều công ty bán chứng chỉ SSL).

Để làm điều đó, bạn nên tải chứng chỉ, khóa và CA của mình lên nút ClusterControl và lưu trữ chúng trong thư mục / var / lib / cmon / ca. Sau đó, bạn điền vào các đường dẫn đến các tệp đó và chứng chỉ sẽ được nhập.

Nếu bạn quyết định tạo CA hoặc tạo chứng chỉ mới, có một biểu mẫu khác để điền - bạn cần chuyển thông tin chi tiết về tổ chức, tên thường gọi, email, chọn độ dài khóa và ngày hết hạn.

Khi bạn đã có mọi thứ, bạn có thể bắt đầu sử dụng các chứng chỉ mới của mình. ClusterControl hiện hỗ trợ triển khai mã hóa SSL giữa các máy khách và cơ sở dữ liệu MySQL và mã hóa SSL của lưu lượng nội bộ trong Galera Cluster. Chúng tôi có kế hoạch mở rộng nhiều loại triển khai được hỗ trợ trong các bản phát hành ClusterControl trong tương lai.

Mã hóa SSL đầy đủ cho Galera Cluster

Bây giờ, giả sử chúng ta đã chuẩn bị xong các khóa SSL và chúng ta có một Cụm Galera, cần mã hóa SSL, được triển khai thông qua phiên bản ClusterControl của chúng tôi. Chúng tôi có thể dễ dàng bảo mật nó trong hai bước.

Đầu tiên - mã hóa lưu lượng Galera bằng SSL. Từ chế độ xem cụm của bạn, một trong những tác vụ cụm là ' Bật mã hóa SSL Galera '. Bạn sẽ thấy các tùy chọn sau:

Nếu bạn chưa có chứng chỉ, bạn có thể tạo chứng chỉ tại đây. Nhưng nếu bạn đã tạo hoặc nhập chứng chỉ SSL, bạn sẽ có thể thấy nó trong danh sách và sử dụng nó để mã hóa lưu lượng sao chép Galera. Xin lưu ý rằng thao tác này yêu cầu khởi động lại cụm - tất cả các nút sẽ phải dừng cùng một lúc, áp dụng các thay đổi cấu hình và sau đó khởi động lại. Trước khi tiếp tục ở đây, hãy đảm bảo rằng bạn đã chuẩn bị sẵn sàng cho một số thời gian ngừng hoạt động trong khi cụm khởi động lại.

Khi lưu lượng truy cập nội bộ đã được bảo mật, chúng tôi muốn bao gồm các kết nối máy khách-máy chủ. Để làm điều đó, hãy chọn ‘ Bật mã hóa SSL Công việc và bạn sẽ thấy hộp thoại sau:

Nó khá giống nhau - bạn có thể chọn chứng chỉ hiện có hoặc tạo chứng chỉ mới. Sự khác biệt chính là để áp dụng mã hóa máy khách-máy chủ, không cần thời gian chết - khởi động lại liên tục là đủ. Sau khi khởi động lại, bạn sẽ tìm thấy biểu tượng khóa ngay bên dưới máy chủ được mã hóa trên Tổng quan trang:

Nhãn ' Galera 'có nghĩa là mã hóa Galera được bật, trong khi' SSL 'có nghĩa là mã hóa máy khách-máy chủ được bật cho máy chủ lưu trữ cụ thể đó.

Tất nhiên, bật SSL trên cơ sở dữ liệu là chưa đủ - bạn phải sao chép chứng chỉ cho các máy khách được cho là sử dụng SSL để kết nối với cơ sở dữ liệu. Tất cả các chứng chỉ có thể được tìm thấy trong thư mục / var / lib / cmon / ca trên nút ClusterControl. Bạn cũng phải nhớ thay đổi các khoản cấp cho người dùng và đảm bảo rằng bạn đã thêm YÊU CẦU SSL cho họ nếu bạn muốn chỉ thực thi các kết nối an toàn.

Chúng tôi hy vọng bạn sẽ thấy các tùy chọn đó dễ sử dụng và giúp bạn bảo mật môi trường MySQL của mình. Nếu bạn có bất kỳ câu hỏi hoặc đề xuất nào liên quan đến tính năng này, chúng tôi rất mong nhận được phản hồi từ bạn.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách ATAN () hoạt động trong MariaDB

  2. Cách MariaDB đạt được quy mô toàn cầu với Xpand

  3. Cách UNHEX () hoạt động trong MariaDB

  4. MariaDB LENGTH () vs LENGTHB ():Sự khác biệt là gì?

  5. MariaDB ROUND () so với FLOOR ()