2 điểm bởi GN⁺ 2025-08-30 | 2 bình luận | Chia sẻ qua WhatsApp
  • Nhóm Bitnami đã lùi thời điểm xóa danh mục công khai docker.io/bitnami sang ngày 29 tháng 9
  • Trước khi xóa, sẽ tiến hành nhiều đợt brownout (tạm chặn một phần image) để giúp người dùng thích nghi
  • Trong thời gian tới, container image và Helm chart của Bitnami sẽ được chuyển sang Bitnami Secure Images (BSI) với các tính năng bảo mật mạnh hơn hoặc Bitnami Legacy Registry
  • Image BSI được cung cấp miễn phí cho mục đích phát triển và kiểm thử, nhưng nếu cần toàn bộ image và hỗ trợ dài hạn thì phải có gói thuê bao trả phí
  • Để ứng phó với các thay đổi về bảo mật chuỗi cung ứng mã nguồn mở và quy định, việc chuyển đổi khỏi cách làm hiện tại đã trở nên cần thiết

Lịch xóa danh mục công khai docker.io của Bitnami và hướng dẫn ứng phó

Cập nhật

  • Sau khi xem xét ý kiến cộng đồng và đánh giá tác động, nhóm Bitnami đã lùi thời điểm xóa danh mục công khai docker.io/bitnami sang ngày 29 tháng 9 năm 2024
  • Trước khi xóa registry, để người dùng nhận biết sự thay đổi, Bitnami sẽ tổ chức 3 đợt brownout (tạm chặn 24 giờ một số container image)
    • 08:00 UTC ngày 28 tháng 8 ~ 08:00 UTC ngày 29 tháng 8
    • 08:00 UTC ngày 2 tháng 9 ~ 08:00 UTC ngày 3 tháng 9
    • 08:00 UTC ngày 17 tháng 9 ~ 08:00 UTC ngày 18 tháng 9
  • Các image bị ảnh hưởng trong mỗi đợt brownout sẽ được thông báo trong ngày diễn ra
  • Từ ngày 28 tháng 8, Bitnami sẽ không còn phát hành Bitnami container image và Helm chart lên Docker Hub theo định dạng mới (OCI)
  • Mã nguồn của container và Helm chart vẫn sẽ tiếp tục được cung cấp trên GitHub theo giấy phép Apache 2.0

Nội dung thay đổi

  • Từ ngày 28 tháng 8, Bitnami sẽ chuyển OCI registry hiện tại (chart và image) sang Bitnami Legacy, sau đó chuyển sang các image mới được tăng cường bảo mật

  • Nếu đang sử dụng các image hiện tại, bạn cần thay đổi đường dẫn pull image trong pipeline tự động hóa, mirror nội bộ và cụm Kubernetes sang vị trí mới

  • Các lựa chọn dành cho người dùng

    1. Chuyển sang Bitnami Secure Images(BSI)
    2. Chuyển sang Bitnami Legacy Registry (tạm thời)
  • Để duy trì tính liên tục của hệ thống và chức năng, Bitnami khuyến nghị chuyển sang Bitnami Secure Images (BSI)

  • Khi dùng BSI, bạn có thể cải thiện năng lực đáp ứng bảo mật và tuân thủ nhờ các image được tăng cường

Chuyển sang Bitnami Secure Images (BSI)

  • Một số image BSI được cung cấp miễn phí cho mục đích phát triển và kiểm thử, nhưng toàn bộ danh mục, tag ổn định, phiên bản hỗ trợ dài hạn chỉ khả dụng với gói thuê bao trả phí
  • Người dùng đăng ký BSI sẽ tiếp tục nhận được toàn bộ danh mục image Bitnami dựa trên Debian cùng các bản cập nhật
  • Bitnami khuyến nghị nâng cấp và chuyển sang các image dựa trên Photon Linux được tăng cường hơn nữa
    • Tương thích với image Debian hiện có và vẫn có thể dùng Helm chart như cũ
  • Các lợi ích chính của image dựa trên Photon
    • Số lượng CVE giảm mạnh (có trường hợp từ hơn 100 xuống 0)
    • Hỗ trợ chẩn đoán VEX, tích hợp điểm KEV/EPSS giúp quản lý lỗ hổng dễ hơn
    • UI/API tự phục vụ với tính năng báo cáo và metadata mạnh mẽ
    • Hỗ trợ Helm chart nâng cao như chart distroless giảm 83% bề mặt tấn công
    • Có thể tùy biến image được build trong software factory tuân thủ SLSA 3 (chuẩn bảo mật chuỗi cung ứng)
    • Cung cấp OCI registry bảo mật riêng tư dành riêng cho khách hàng (không bị ràng buộc Public/Rate limit như Docker Hub)
    • Có thể sử dụng hơn 90 loại VM image định dạng OVA
    • Hỗ trợ doanh nghiệp liên quan đến đóng gói và cài đặt

Chuyển sang Bitnami Legacy Registry

  • Như một biện pháp tạm thời, Bitnami cung cấp Bitnami Legacy Registry cho người dùng hiện tại
    • Đây là các image ở định dạng lưu trữ không còn được hỗ trợ đầy đủ (không áp dụng vá bảo mật, v.v.)
    • Không có kế hoạch cung cấp dài hạn: có nguy cơ tích tụ lỗ hổng và nhanh chóng lỗi thời
    • Nếu buộc phải dùng tạm, Bitnami khuyến nghị sao chép image cần thiết sang registry riêng
    • Về lâu dài, vẫn cần sớm chuyển sang hệ thống mới được tăng cường bảo mật (BSI)

Sự cần thiết của việc chuyển đổi bảo mật chuỗi cung ứng mã nguồn mở và tuân thủ

  • Bối cảnh chính là những thay đổi gần đây trong hệ sinh thái mã nguồn mở và sự gia tăng mạnh của các gói độc hại (theo Sonatype, hơn 245.000 trường hợp trong giai đoạn 2019~2023)
    • Mức này gấp đôi toàn bộ các giai đoạn trước đó cộng lại
  • Cùng với sự tăng trưởng của hệ sinh thái AI/mô hình, việc sử dụng mã nguồn mở cũng tăng mạnh → bề mặt tấn công và rủi ro cũng tăng theo
  • Do các quy định như Cyber Resilience Act (EU), các tổ chức ngày càng phải có trách nhiệm chứng minh nguồn gốc và tính toàn vẹn của phần mềm mã nguồn mở
  • Với việc triển khai Bitnami Secure Images, Bitnami cung cấp cho tổ chức một môi trường giúp dễ dàng đảm bảo bảo mật chuỗi cung ứng và tuân thủ
    • Giảm gánh nặng chi phí bảo mật và quy định với TCO (tổng chi phí sở hữu) thấp
    • Tạo nền tảng để quản lý vững chắc môi trường phần mềm mã nguồn mở ngày càng phức tạp

Các tuyên bố của đối thủ về thay đổi của Bitnami

  • Một số đối thủ đã tạo ra hiểu lầm rằng Bitnami sẽ "xóa bỏ image công khai miễn phí và Helm chart"
    • Thực tế, Helm chart vẫn tiếp tục được công khai trên GitHub theo giấy phép Apache 2
    • Trọng tâm của thay đổi nằm ở các OCI artifact (image đã build)
    • Chi phí vận hành pipeline build/phát hành quy mô lớn và registry là rất cao, nên không thể cung cấp với chi phí thấp
    • Mọi người vẫn có thể truy cập miễn phí mã nguồn Helm chart (bao gồm cả Debian image)
  • Nếu doanh nghiệp cần trực tiếp các OCI build image, họ phải nhận hỗ trợ thông qua thuê bao BSI, và đây là cách để đảm bảo nâng cao bảo mật và khai thác OSS một cách chiến lược

Cách chuyển đổi cụ thể sau ngày 28 tháng 8

  • Từ ngày 28 tháng 8, repo Bitnami sẽ bắt đầu dọn dẹp image theo từng giai đoạn, thay vì mọi thay đổi diễn ra cùng lúc
  • Việc xóa/chuyển image sẽ được thực hiện dần trong vài tuần để giảm thiểu nhầm lẫn cho người dùng
    • Do phải xử lý khối lượng nội dung OCI rất lớn, tới 84TB, nên khó xác định chính xác image nào sẽ bị xóa vào thời điểm nào
    • Từ ngày 28 tháng 8, các image cần cho chức năng kinh doanh cốt lõi nên được chuẩn bị registry thay thế
  • Trên registry Bitnami mới, các image Photon được tăng cường sẽ được tải lên với cùng tên như các image Debian trước đây
  • Người dùng hiện tại và người dùng mới sẽ dùng các image được tăng cường bảo mật để đáp ứng các yêu cầu mới nhất của môi trường mã nguồn mở
  • Có thể xem thông tin chi tiết về việc chuyển đổi tại Bitnami FAQ

2 bình luận

 
jic5760 2025-08-31

Để duy trì Bitnami trong cộng đồng, hôm qua tôi đã tạo Bitmoa.
Mục tiêu là thay thế image Bitnami với mức thay đổi tối thiểu (ở mức ENV).

https://github.com/bitmoa/containers (build image bằng GitHub Actions)
https://github.com/bitmoa/charts

 
GN⁺ 2025-08-30
Ý kiến Hacker News
  • Cũng khá ngạc nhiên khi chỉ “đóng gói” phần mềm công khai mà không đóng góp gì rồi lại định chuyển sang thương mại kiểu Oracle, nhưng không có ý hạ thấp công sức của họ; chỉ là thấy khó hiểu không biết phần nào thực sự có thể đòi bản quyền, vì đa số mỗi gói chỉ như vài dòng công thức lắp ráp, cảm giác như đang muốn đặt bản quyền lên một dòng lệnh kiểu make build, và nếu việc phân phối binary tạo ra tuân theo giấy phép mã nguồn mở thì người dùng phải có đầy đủ mã nguồn, cách build và quyền phân phối lại
    • Các Makefile do Bitnami tạo ra thực sự chứa khá nhiều công sức, và việc biến nhiều phần mềm khác nhau thành thứ có thể dùng chỉ bằng biến môi trường hoàn toàn không hề dễ; có thể xem liên kết ví dụ, và hiện tại với một số nhóm người dùng thì giấy phép thương mại vẫn đủ giá trị
    • Trên thực tế giá trị quan trọng hơn có lẽ là Helm charts, nhưng vì đã có các image chính thức làm phương án thay thế nên cũng không có lý do đặc biệt nào để phải dùng image Node hay Postgres của Bitnami, nên cũng khó biết thực tế có bao nhiêu người dùng Helm charts của Bitnami
  • Các hardened images mà Bitnami từng cung cấp là một biểu hiện của thiện chí và đóng vai trò giúp người dùng đặt bước chân đầu tiên vào nơi thực sự cần đến chúng, nhưng chúng không thể cạnh tranh với các lựa chọn tốt hơn trên thị trường; việc chuyển sang “subscription” này không phải là giải pháp mà giống như ép mua hơn, giống những gì Terraform Cloud đã làm, mà bên đó dạo này tình hình cũng không tốt; đóng góp của Bitnami thực chất chỉ ở mức thêm một ít tùy chọn config, nếu nhìn theo OperatorFramework capability thì chỉ khoảng level 2 hoặc 1 mà thôi liên kết tham khảo
    • Tôi nghĩ gọi đây là “ép mua” thì hơi quá, vì Bitnami chỉ là không tiếp tục cung cấp miễn phí nữa nên người dùng phải tìm thứ khác để thay thế; chỉ riêng việc họ từng làm miễn phí như vậy cũng đã đáng cảm ơn rồi
    • Nói rằng ngừng cho miễn phí là ép mua thì là cách diễn đạt cực đoan; giờ chỉ là cảm giác tiếc vì phải tự làm lấy những việc trước đây không cần làm
    • Có vẻ đang có sự nhầm lẫn về chuyện Broadcom là công ty kiểu gì; Broadcom là doanh nghiệp không quan tâm đến “sức khỏe dài hạn”, cứ mua sản phẩm rồi sa thải 90% nhân viên, tăng chi phí giấy phép và hỗ trợ lên 2–100 lần, tận dụng việc các công ty Fortune 500 khó mà rút ra ngay để vắt tiền bằng hợp đồng cỡ 5 năm, không bận tâm phản ứng của thị trường và kể cả có tranh chấp pháp lý thì cuối cùng hiệu ứng tăng giá vẫn còn lại
    • Năm 2025, chiến lược xây dựng độ phổ biến với developer trước rồi mới chuyển hóa thành doanh thu đối với một công ty hạ tầng là không còn hiệu quả nữa; phải tạo doanh thu ngay từ đầu, và cuối cùng chỉ còn thị trường enterprise là mục tiêu, thành ra ai cũng chen nhau giành lấy cái thị trường hẹp đó
    • Giá trị họ thêm vào rất nhỏ, nhưng việc giờ ngay cả từng đó cũng khó thay thế và khiến người dùng vất vả thì cũng là điều đáng suy nghĩ
  • Cuối cùng chuyện này cũng liên quan đến CSR (trách nhiệm xã hội của doanh nghiệp), đồng thời chính CSR cũng là thứ khiến sự chuyển đổi này trở nên khả thi; quy định EU Cyber Residence Act có thể làm hệ sinh thái mã nguồn mở thay đổi lớn, vì giờ các công ty cung cấp sản phẩm thương mại dựa trên mã nguồn mở phải tuân thủ nghiêm ngặt yêu cầu về bảo mật và tài liệu hóa, nên dự án mã nguồn mở thuần túy thì không bị áp vào, nhưng hễ phân phối có thu tiền là phát sinh gánh nặng pháp lý; rốt cuộc việc bán framework tuân thủ như một dịch vụ có vẻ sẽ là cơ hội mới
    • CSR không có nghĩa là bắt buộc chỉ được cung cấp image bảo mật trả phí; nếu muốn thì vẫn có thể cung cấp miễn phí, hoặc chỉ thu tiền với bản thương mại thôi
    • Nếu bán dịch vụ open-source-plus theo hướng thương mại thì các công việc tuân thủ để đáp ứng CSR là bắt buộc; rốt cuộc dù là mở hay thương mại thì công sức cần bỏ ra cũng như nhau
  • Nếu cần phương án thay thế, đội Twistlock đã ra mắt Minimus, build trực tiếp từ source và liên tục cung cấp image gần như không có lỗ hổng, đồng thời cũng có drop-in replacement giống Bitnami; nếu có thắc mắc về cách dùng, công cụ hay case khách hàng thì cứ hỏi, xem thêm bài viết so sánh và hướng dẫn
    • Form đăng ký của Minimus phân biệt giữa “cá nhân” và “tổ chức” nhưng lại bắt buộc nhập tên công ty, điều này khá kỳ lạ và trông như chỉ nhằm mục đích marketing
    • Tôi sẽ sắp xếp lại ví dụ so sánh giữa Minimus và Bitnami Secure Images trên blog để dễ hiểu hơn một chút: Bitnami Secure Images được build trên nền Photon, và mỗi khi có lỗ hổng hoặc phiên bản mới được phát hành thì chúng sẽ tự động được build, test và triển khai; người dùng chỉ cần dùng bản mới nhất nên không phải lo theo dõi CVE hay vá thủ công
    • Giá mới là vấn đề lớn nhất; tôi cũng từng nghe giá của Chainguard hay Docker secure images rồi mất hứng, mà trên website của Minimus lại chẳng có thông tin giá nào, nên cũng nghi ngờ là chắc đắt đến mức đa số không thể dùng nổi
    • Không rõ Minimus có phải là một OS không; còn Bitnami thì vẫn là một dự án mã nguồn mở nên vẫn có thể tự build image trực tiếp từ source
    • Sẽ tốt hơn nếu phía Minimus tự triển khai docker-credential helper, tham khảo docker-credential-cgr của Chainguard mà cung cấp, thay vì chỉ hướng dẫn kiểu “docker có hỗ trợ credential store nên tự xử đi” tham khảo
  • Nhìn phí giấy phép thì hơn $50,000 mỗi năm, nên rõ ràng đây không phải thị trường mục tiêu của tôi
    • Trong mô tả chính thức có ghi “BSI dân chủ hóa bảo mật và tuân thủ cho mã nguồn mở”, nhưng tôi không nghĩ $50,000 có thể gọi là mức “dân chủ hóa”
    • Thuật ngữ hơi gây rối, nhưng thực tế là họ đang chuyển nhiều image từng miễn phí sang hình thức trả phí; vẫn có thể lấy Docker file và vẫn dùng image trên Docker Hub được, chỉ là phần miễn phí bị giới hạn là “dùng cho phát triển” chứ không dành cho production, còn image “secure” thực sự thì được build trên Photon OS và đi qua cả quy trình bảo mật; ngoài dịch vụ họ cung cấp thì không có gì bị chặn cả
    • Đây là chiến lược dễ nhất để kiếm tiền bằng cách để nguyên tập người dùng cũ mà không cập nhật gì cho họ nữa, nghe cũng hơi buồn cười
  • Gần 2 năm trước tôi đã khuyên bên enterprise chuyển khỏi Bitnami, nên giờ đúng lúc dự án đó sắp hoàn thành và thấy mình dự đoán chuẩn thì cũng khá mãn nguyện
  • Cùng với thay đổi giấy phép của VMware, có vẻ Broadcom rõ ràng đang nhắm tới vị trí của Oracle, thật đáng tiếc khi cạnh tranh ngày càng khốc liệt như vậy
    • Tôi đang “hóng” xem Broadcom sẽ kiếm tiền từ hệ sinh thái Spring như thế nào; thực tế gần như mọi tập đoàn lớn đều dùng Spring nên có vẻ chuyện này sớm muộn cũng sẽ xảy ra
    • Trên thực tế Broadcom hiện nay là cái tên mà Avago Technologies mua về và dùng lại vào giai đoạn 2015–2016; phần lớn lĩnh vực và IP của Broadcom gốc thì đã bị bán đi rồi
    • Nếu biết Broadcom thực sự “tàn nhẫn” đến mức nào thì có khi chuyện này lại chẳng là gì; dù vậy trước mắt từ góc nhìn người dùng thì vẫn có thể có lợi ích nào đó
    • Có lẽ khá nhiều kỹ sư của Bitnami cũng không thực sự đồng tình với quyết định này
    • Chừng nào Microsoft còn tồn tại thì Broadcom và Oracle vẫn chỉ đang cạnh tranh vị trí số 2 trong bảng xếp hạng “cái ác” mà thôi
  • Các dự án phần mềm rốt cuộc chỉ gồm (1) mã do mình tự quản lý hoặc trả tiền để được bảo trì, và (2) đống mã tạm bợ mà đến lúc nào đó sẽ phải thay bằng phiên bản không còn tương thích; việc chỉ ghép nối đống mã tạm ấy với nhau vẫn có thể là một canh bạc đủ khôn ngoan, nhưng nếu source của dependency là của bên thứ ba thì tuyệt đối đừng kỳ vọng họ sẽ bảo trì nó gần như vĩnh viễn, và quản trị rủi ro đúng nghĩa là phải giả định vòng đời dự án của mình sẽ ngắn hơn vòng đời của dependency đó
  • Thật đáng tiếc là Broadcom đến cả việc “đệm” cho mobile còn không làm cho tử tế; mà tiện thể, nếu họ tạo riêng docker.io/bsi rồi giữ nguyên /bitnami dưới dạng bản cũ thì sẽ không có gì bị hỏng, người dùng cũng có thể tự chuyển dần, đồng thời lý do không còn nâng cấp nữa cũng sẽ được giải thích một cách tự nhiên
    • Nếu Bitnami muốn dừng cập nhật bảo mật miễn phí thì đáng ra họ nên để người dùng tự đồng ý chấp nhận rủi ro, sau khi thông báo trước đầy đủ thì chuyển /bitnami sang /bitnamilegacy cũng là một cách ổn
    • Bản thân cái tên “bitnami” đã có giá trị thương hiệu, nên tiếp tục dùng tên này để bán dịch vụ mới là lựa chọn hợp lý về mặt kinh doanh
    • Chuyện “đệm” của Broadcom cũng khiến tôi có cảm giác giống với việc UI của Rally đã quá lỗi thời
  • Tôi hoàn toàn không hiểu nổi image và quy ước package của Bitnami; dùng thực tế thì thấy quá phức tạp, những quy tắc tùy biến của họ rất phiền, không phải kiểu package đơn giản dựa trên base bình thường mà là một cấu trúc kỳ quặc, và hễ muốn đổi gì là đúng nghĩa hỗn loạn
    • Họ bỏ qua hết các quy ước thông thường rồi chồng thêm script phức tạp của riêng mình, khiến mọi image đều phải đọc tài liệu riêng mới dùng được; lại còn không khớp với tài liệu chính thức mặc định nên rất bực bội
    • Có thời tôi dùng image Bitnami để dễ có base image chạy rootless, vì trước đây ở repository chính thức việc cấu hình postgres chạy rootless khá khó; chỉ là mỗi image Bitnami lại có uid hay đường dẫn config khác nhau, nên lúc nào cũng phải đọc Dockerfile từng cái một
    • Bitnami vốn từng nổi tiếng vì chạy Wordpress trên Windows, họ làm sẵn để có thể dùng ngay trên Windows Server nên thời đó khá hữu ích; bây giờ mà còn làm việc kiểu đó có khi bị sa thải, nhưng hồi ấy Linux chưa phổ biến rộng nên đúng là một dịch vụ cần thiết
    • Không biết có tài liệu nào đáng tham khảo về các quy ước đóng gói kiểu này không; cảm giác thông thường thì mọi người sẽ lấy image chính thức của dự án làm base rồi tự tùy biến để tạo image nội bộ của mình