Certbot mongodb

Xin chào, tôi vừa gặp sự cố này khi đang cố gắng sử dụng chứng chỉ do Let's Encrypt cấp cho MongoDB. Tài liệu của MongoDB nói rằng

Tên phân biệt ( DN ), được tìm thấy trong chứng chỉ thành viên của subject, phải chỉ định một giá trị không trống cho ít nhất một trong các thuộc tính sau

  • Tổ chức ( O )
  • đơn vị tổ chức ( OU )
  • Thành phần Miền ( DC )

Tôi hiểu rằng Let's Encrypt CA không thể xác minh O hoặc OU nhưng có thể cung cấp DC theo một cách nào đó. Mặt khác, tôi không biết cách sử dụng chứng chỉ do Let's Encrypt CA cấp cho việc triển khai MongoDB của mình. Tôi đang sử dụng certbot để tự động hóa quy trình phát hành chứng chỉ của mình

Hầu hết thời gian, mọi người nghĩ về việc sử dụng chứng chỉ Let's Encrypt để mã hóa giao tiếp giữa trang web và máy chủ. Nhưng các kết nối cần TLS ở khắp mọi nơi. Để chúng tôi có một Internet được mã hóa 100%, chúng tôi cần nghĩ xa hơn về trang web

Dịch vụ cơ sở dữ liệu đa đám mây được quản lý của MongoDB, được gọi là Atlas, sử dụng chứng chỉ Let's Encrypt để bảo mật kết nối giữa ứng dụng của khách hàng với cơ sở dữ liệu MongoDB và giữa các điểm dịch vụ bên trong nền tảng. Chúng tôi đã nói chuyện với Kenn White, Giám đốc bảo mật tại MongoDB, về cách nhóm của anh ấy sử dụng chứng chỉ Let's Encrypt cho hơn hai triệu cơ sở dữ liệu, trên 200 trung tâm dữ liệu và ba nhà cung cấp đám mây

"Let's Encrypt đã trở thành một phần cốt lõi trong cơ sở hạ tầng của chúng tôi," Kenn nói. Thật thú vị, mối quan hệ của chúng tôi đã không bắt đầu theo cách đó. MongoDB đã trở thành nhà tài trợ tài chính của Let's Encrypt nhiều năm trước đó chỉ đơn giản là để hỗ trợ sứ mệnh theo đuổi bảo mật và quyền riêng tư của chúng tôi. MongoDB Atlas bắt đầu cất cánh và rõ ràng TLS sẽ tiếp tục là ưu tiên hàng đầu khi họ mang đến những khách hàng như sàn giao dịch tiền tệ, nền tảng ngân quỹ và mạng thanh toán bán lẻ. "Toàn bộ khái niệm tự động hóa cao và không có sự can thiệp của con người đều thực sự hấp dẫn chúng tôi," Kenn cho biết về quyết định sử dụng Let's Encrypt của MongoDB

Danh sách khách hàng đa dạng của MongoDB có nghĩa là họ hỗ trợ nhiều ngôn ngữ, thư viện và hệ điều hành. Do đó, giám sát của họ là khá mạnh mẽ. Trong những năm qua, MongoDB đã trở thành một tài nguyên hữu ích cho các kỹ sư của Let's Encrypt để xác định các lỗi triển khai trường hợp cạnh. Khả năng xác định sớm các vấn đề chính xác của họ giúp chúng tôi phản hồi hiệu quả;

Việc chia sẻ thông tin cởi mở là một phần cốt lõi trong cách hoạt động của Let's Encrypt. Trên thực tế, "minh bạch" là một trong những nguyên tắc hoạt động chính của chúng tôi. Khả năng xem và hiểu cách Let's Encrypt đang thay đổi đã giúp MongoDB có được niềm tin và sự tự tin trong các hoạt động của chúng tôi. "Tôi không nghĩ rằng bạn thực sự có thể đánh giá cao trải nghiệm mà chúng tôi đã có khi làm việc với nhóm kỹ thuật của Let's Encrypt," Kenn nói. "Một điều mà tôi đánh giá cao về Let's Encrypt là bạn luôn cực kỳ minh bạch về các ưu tiên và tầm nhìn lộ trình của mình. Về mặt công nghệ và phép đo từ xa của bạn, đây là một sự phát triển; . Và hai năm trước, bạn đã vượt lên trên hầu hết mọi đồng nghiệp trong ngành. "

Xem các bài đăng trên blog khác trong loạt bài này về cách những người đăng ký lớn khác sử dụng chứng chỉ Let's Encrypt

TLS Đơn giản và Tự động cho Khách hàng Đám mây Lớn nhất Châu Âu

Tốc độ ở quy mô. Let's Encrypt phục vụ Shopify's 4. 5 triệu tên miền

Hỗ trợ Let's Encrypt

Là một dự án phi lợi nhuận, 100% kinh phí của chúng tôi đến từ sự đóng góp từ cộng đồng người dùng và những người ủng hộ của chúng tôi. Chúng tôi phụ thuộc vào sự hỗ trợ của họ để cung cấp dịch vụ của chúng tôi vì lợi ích công cộng. Nếu công ty hoặc tổ chức của bạn muốn tài trợ cho Let's Encrypt, vui lòng gửi email cho chúng tôi theo địa chỉ Sponsor@letsencrypt. tổ chức. Nếu bạn có thể hỗ trợ chúng tôi bằng một khoản quyên góp, chúng tôi yêu cầu bạn đóng góp cá nhân

2020-10-29T09. 29. 40. 764+0000 I REPL_HB [replexec-1] Lỗi nhịp tim (requestId. 555) thành “tên máy chủ”. 27017, trạng thái phản hồi. Không được phép. không được quản trị viên cho phép thực thi lệnh { replSetHeartbeat. “repl-01”, phiên bản cấu hình. 1, hbv. 1, từ. “tên máy chủ. 27017”, từId. 0, thuật ngữ. 27, $replData. 1, $clusterTime. { clusterTime. Dấu thời gian(1603880275, 1), chữ ký. {băm. BinData(0, 6775444445555FB8F9AEC2FE5566A791EAD5C1824), keyId. 6886403334444455553 } }, $db. "quản trị viên" }

Chứng chỉ này hoạt động tốt đối với xác thực ứng dụng khách, nhưng không hoạt động đối với xác thực thành viên nội bộ

Cấu hình

net:
  port: 27017
  bindIp: 127.0.0.1,10.0.0.4

  ssl:
      mode: requireSSL
      CAFile: /etc/ssl/ca.pem
      PEMKeyFile: /etc/ssl/mongodb.pem
      clusterCAFile: /etc/ssl/ca.pem
      clusterFile: /etc/ssl/mongodb.pem
	  allowConnectionsWithoutCertificates: true

  security:
     clusterAuthMode: x509

Đầu ra từ db quản trị MongoDB

db.serverStatus().security
{
        "SSLServerSubjectName" : "CN=hostname",
        "SSLServerHasCertificateAuthority" : true,
        "SSLServerCertificateExpirationDate" : ISODate("2021-01-24T10:37:32Z")
}

Tôi biết rằng clusterCAFile và clusterFile là các tham số chung trong trường hợp nếu đã sử dụng CAFile, PEMKeyFile, nhưng chỉ trong trường hợp thử đặt chúng cũng

Certbot có giống như Letsencrypt không?

Let's Encrypt là dịch vụ cung cấp chứng chỉ SSL miễn phí thông qua API tự động. Ứng dụng Let's Encrypt phổ biến nhất là Certbot của EFF . Certbot cung cấp nhiều cách khác nhau để xác thực miền của bạn, tìm nạp chứng chỉ và tự động định cấu hình Apache và Nginx.

Tại sao bạn không sử dụng Letsencrypt?

Việc có kết nối an toàn với một trang web không làm cho trang web đó trở nên đáng tin cậy . Nó không có nghĩa là bạn có thể sử dụng nó một cách an toàn. Một mối quan tâm khác, tồn tại rất ít biện pháp bảo vệ ngăn chặn các nhà phân phối phần mềm độc hại sử dụng Let's Encrypt. Các nhà phân phối phần mềm độc hại đã lợi dụng điều này.

Sử dụng Certbot có an toàn không?

Certbot là một phần trong nỗ lực lớn hơn của EFF nhằm mã hóa toàn bộ Internet. Các trang web cần sử dụng HTTPS để bảo mật web. Cùng với HTTPS Everywhere, Certbot nhằm mục đích xây dựng một mạng có cấu trúc riêng tư, an toàn hơn và được bảo vệ khỏi kiểm duyệt .

Certbot sử dụng DNS nào?

Có, sử dụng thử thách DNS-01 hoặc TLS-ALPN-01 . Tuy nhiên, Certbot chưa bao gồm hỗ trợ cho TLS-ALPN-01. Nếu bạn đang sử dụng bất kỳ Certbot nào với bất kỳ phương thức nào khác ngoài xác thực DNS, thì máy chủ web của bạn phải lắng nghe trên cổng 80 hoặc ít nhất có khả năng thực hiện điều đó tạm thời trong quá trình xác thực chứng chỉ.