Bambu Labがオープンソースの社会的契約を悪用している
(jeffgeerling.com)- Jeff Geerlingは、Bambu Labが常時接続のクラウドを新たなデフォルトとして押し出したことで、P1Sのインターネット接続を遮断し、OrcaSlicerへ移行した
- OrcaSlicerは、Bambu Studio、Prusa Slicer、slic3rへと続くAGPLv3系譜のフォークであり、Bambuクラウドなしでの利用を可能にする
- Bambu Labは、OrcaSlicer-bambulabフォークが公式クライアントを装っていると問題視し、開発者に法的措置を示唆した
- Geerlingは、そのフォークがBambuのLinuxアプリと同じAGPLコードを使ったにすぎないとして、ユーザーエージェントをセキュリティの中核とみなす姿勢を批判した
- Bambu Labは過去に、自社フォークがPrusaサーバーへテレメトリーを送信していたことがあり、他フォークの識別方法を問題視する今回の対応は皮肉さを帯びている
Bambu Labプリンターを使い続けるための主導権確保
- Jeff Geerlingは、Bambu Labが常時接続のクラウドソリューションを新たなデフォルトとして押し出し始めた後も、P1Sを使い続けている
- プリンターを自分の管理下に置くため、OPNsense Firewallでインターネット接続を遮断し、ファームウェア更新を止め、Developer modeに固定し、Bambu Studioを削除したうえで OrcaSlicer を使っている
- Bambu Labが従来の利用方法をそのまま認めていれば対立はここまで大きくならなかったかもしれないが、その後の対応はオープンソースのエコシステムとユーザーの統制権の問題へと発展した
OrcaSlicerとBambu Studioのオープンソース系譜
- OrcaSlicer はオープンソースプロジェクト Bambu Studio のフォークであり、Bambu Studioは Prusa Slicer のフォーク、Prusa Slicerは slic3r のフォークである
- これらのプロジェクトはいずれも AGPLv3オープンソースライセンス を採用している
- OrcaSlicerは、Bambuの標準構成において 印刷ファイルがBambuサーバーを経由する仕組み を回避、または対処する位置にある
- Developer mode を使い、古いファームウェアでインターネットを完全に遮断すれば、Bambuクラウドを経由しない利用が可能になる
- 一部のユーザーは、外出先から自宅のプリンターで印刷を開始できるクラウド印刷の利便性を受け入れているが、自前のWireGuard VPNを運用すれば、同じリモートアクセスをBambuクラウドなしで実現できる
OrcaSlicer-bambulabフォークをめぐる衝突
- Bambu Labは、Bambuクラウドの中継メカニズムなしでプリンター機能を使えるようにした OrcaSlicer-bambulab フォークを問題視している
- このフォークは、Bambu StudioのAGPLライセンスのLinuxコードと同じ方式で、クラウド中継メカニズムなしにOrcaSlicerを使いたい少数の上級ユーザー向けのものだった
- Bambu Labはフォーク開発者に法的措置を示唆し、そのフォークがアップストリームのBambu Studioコードを使っていたにもかかわらず、なりすまし攻撃であるかのような趣旨で問題を提起した
- OrcaSlicer-bambulab開発者の回答 によれば、Bambu Labは公開主張の前に具体的な内容を先に伝えず、書簡全体の公開要請も拒否した
- 開発者は、自分がセキュリティ回避、クライアント偽装、インフラリスクを生んだ人物であるかのように公に位置づけられる状況を拒否している
Bambu Labの公式見解と反論
- Bambu Labは 公式ブログ記事 で、問題の修正はネットワーク通信に虚偽の身元メタデータを注入し、公式のBambu Studioクライアントであるかのようにサーバーと通信していたと主張した
- Bambu Labは、この方法が広く採用されたり誤って設定されたりすると、数千のクライアントが公式クライアントを装って同時にサーバーへアクセスし、要求が同一に見えるためシステムがトラフィックを区別できなくなると述べている
- Geerlingは、この主張は開発者をBambuアプリになりすまそうとした人物のように見せるが、実際にはBambuのLinuxアプリが使っている 同じAGPLライセンスコード を使っただけだと反論している
- 公開されたユーザーエージェント文字列がDDoS防御の中核的な保護手段だというなら、Bambu Labのセキュリティ理解そのものが疑わしいという批判につながる
- Bambu Labはブログ記事の残りで脆弱性、バグ、不安定性について論じているが、アップストリームコードをそのまま使ったフォーク開発者の問題と直接結びつけるのは難しい
繰り返されるコミュニティ対応のやり方
- Bambu Labは前年に緊張が高まった際にも、Bambu Connectとサードパーティ統合に関するブログ記事 で、コミュニティの反発を「不幸な誤情報」のせいだとしていた
- 当時、ユーザーは購入後にソフトウェアのエコシステムと所有モデルが覆されたことに不満を抱いており、その結果として憶測と反発が強まったと見ることもできる
- 今回は、Bambu Labが小規模なスライサーフォークの一開発者を、クラウドインフラ全体への潜在的影響と結びつけて責任を問う構図になっている
- Geerlingは、Bambu Labがエコシステムの問題解決や、より安全なプラットフォームの構築に取り組む代わりに、そのフォーク開発者のような熱心な上級ユーザーを公に圧迫していると批判している
皮肉さと過去の事例
- Bambu Lab自身のフォークが2022年にBambuユーザーのテレメトリーをPrusaサーバーへ送信してしまったことがあり、Josef Prusaが Xで言及 している
- Geerlingの知る限り、Prusaはその件に対して差止要求書(C&D)で対応しなかった
- この事例により、Bambu Labが他のフォーク開発者のネットワーク識別方法やインフラリスクを強く問題視する今回の対応は、いっそう皮肉に映る
より良い対応の可能性と残された選択肢
- Bambu Labは最初から、エコシステム全体を閉じないアプローチを選べたはずだ
- 問題となっているフォークは、Bambu Labの差止要求以前には、ごく小さなユーザー層以外ではあまり使われていなかったように見える
- ただし、フォーク名に「bambulabs」が含まれていた点については、商標に関する要請として削除を求める合理的な余地はある
- フォーク開発者は以前、Bambu LabのGitHubも含めてBambu StudioユーザーのLinuxやWaylandの問題を支援していたが、現在はBambuインフラに危険をもたらす人物であるかのように公に見られる立場になっている
- Louis Rossmannは、オープンソース開発者がBambuの法的脅迫に対抗できるよう $10,000を出す と述べた 動画 を公開したが、これは開発者自身が再びBambuの標的になることを望む場合にしか役立たない
- Geerlingは、Bambu製品を最初から避け、他社のプリンターに少し多く支払う選択のほうが、より効果的かもしれないと見ている
1件のコメント
Hacker Newsの意見
Bambuは使ったことはあるが所有したことはなく、クローズドなエコシステムの3Dプリンターという発想が気に入らなかった
代替を探すならBambuが最も「とにかく動く」体験に近いが、最近は他のプリンターも昔ほど難しくはない
最も簡単な代替はPrusaである可能性が高く、価格はBambuよりかなり高いが、オープン性の面ではほぼ正反対に近い優れた会社なので、お金に余裕があるならおすすめする
そのほかの選択肢としては、https://auroratechchannel.com/#section2 の一覧がよい
個人的には古いElegoo Neptune 4 Proを使っているが、今買うならSnapmaker U1かCreality K2 Plusを見ると思う
高価ではあるが、24時間の人的サポート、オープンなプラットフォーム、オープンソースへの貢献が得られ、Bambu StudioもPrusa Slicerのフォークだ
私のCore One+はもともとMK3として始まり、アップグレードを重ねてきて、今でも新品のように動いており、INDXアップグレードを待っているところだ
ただし消費者向けPrusaの大きな欠点は、高級素材向けのチャンバー加熱が不足している点だ。夏ならCore One+でチャンバー45℃でPCを印刷できるが、冬はずっと難しくなる
Core One Lはこの点でより良いとはいえ、まだ理想的ではないという報告も見たし、それ以外については追加コストは長期的に回収できると感じる
2023年から設計の商用化を防ごうとする動きを見せ、PCBソースや設計資料の共有もやめた
2025年には「open community license」を変更し、別契約なしにこのファイルを元にした完成機械やリミックスを販売できず、設計ファイルを商用利用できないと明記した
https://blog.prusa3d.com/core-one-cad-files-release-under-th...
従来のオープンソースライセンスが、研究開発を行う企業に残した脆弱性を商業的に悪用される中で、オープンソースがどう変わらざるを得なかったかを示す事例なのかもしれない
しばらくは「とにかく動いていた」が、出力冷却ファンが壊れた後が問題だった。家のVoronなら5分で直せることを、H2Dでは[0]のようにやらなければならない
実質的にツールヘッド全体を分解し、内部メインボードを外しながら、とても小さくて脆い専用リボンケーブル11本以上と上部ボード接続5つを扱う必要がある
小さな修理もたいていこういう感じで、フィラメントが詰まった時もツールヘッド前面を丸ごと分解し、さらに小さくて脆いフレックスPCBを扱わなければならなかった
[0] https://wiki.bambulab.com/en/h2/maintenance/replace-cooling-...
3Dプリントをまったく知らない状態でPrusa Core Oneを買い、電源をつないで同梱フィラメントを入れ、10ページの説明書どおりに数回クリックしただけで最初の出力ができた
インターネット接続、Wi‑Fi、登録、アプリはまったく不要だった
その後GitHubにあるオープンソースアプリをインストールして「クラウド」サービスを使い始めたが、こういうことはかなり苦手な方なのに、この10年でやった中でいちばん簡単だった
価格は非常に高いが、少なくとも自分が所有している物だという点が大きい
Prusaは「大きくなって」から倫理基準をかなり変えた
[0]: https://blog.prusa3d.com/the-state-of-open-source-in-3d-prin...
Bambu Labブログの文面はかなりひどい
「無断トラフィックの急増でサーバーが過負荷になり、全員にサービス障害が発生し、そのコストは全ユーザーが感じた不安定性だった」というような話だが、プリンターが人気でインフラを拡張できないのでUser-Agent文字列で全部止めると言っているように聞こえる
言い訳としてあまりに奇妙で信じがたい
こう直せばいい。BambuはCreative Commonsとして使ってよい
人々があまりに早く忘れるのが面白い。LANモードは元々計画になく、前回もこうした反発が起きた後でようやく導入された
その後で方針を変え、ブログ記事も修正した。顧客として圧力をかけるやり方が会社の方向性を変える
HPはいまだにDRMインクを使い、Keurigはいまだに「ハック」を防ごうとしており、OpenAIはモデルをオープンソース化すると言っていた
約束を守らない会社を批判するなという意味ではないが、怒りだけでは不十分だ。実際にライセンス違反があったなら、訴訟や訴訟の可能性も効果があるかもしれない
いちばん腹立たしいのは、もうOrcaSlicerでプリンターとやり取りしたりフィラメントを同期したり、遠隔で印刷を開始したりできないことだ
プリンターを隣ではなく離れた作業場に置いている人もいるし、「LAN」や「開発者」オプションは、特にクラウドと二者択一ならあまり良くない
「公式クライアントのふりをした」という言い方は、その方式がクライアントが送るメタデータだったならセキュリティ論理ではない
それはなりすましではなく、BambuがUser-Agentは認証ではないという事実を発見しただけだ
これをクライアントのせいにするのは完全に筋違いだ
ハッカーがインフラを攻撃しようとする時に、Bambuが望むクライアントを使うかどうかなど気にするはずがない
Bambuはまたしても自分の顧客層を遠ざけている
Bambuソフトウェアが中国のサーバーを経由させ、ソフトウェアを閉じていく細部はよく知らないが、展示中の監視と関係がある可能性を疑っている
Bambuプリンターはウクライナの戦争努力の中核であり、2026年1月以降にウクライナが勝っている主な理由だと見ている
中国は、先にロシアへ数百万台売ったドローンとは違って、ウクライナが使う中国製ドローンの内蔵キルスイッチを発動して使用を妨げたし、その後さらに別の中国企業であるBambuが、ウクライナ全土の秘密工場でドローンの代替生産に使われる3Dプリントを大規模に密かに覗き見し始めたのだとしたら非常に疑わしい
理由が何であれ、今はプログラマーが状況を変えるべき時であり、Louis Rossmannのように[1]資金を集めて法廷闘争をするのではなく、アセンブリプログラマーにBambuファームウェアをリバースエンジニアリングさせて自由なオープンソースファームウェアを作らせるべきだ
このファームウェア代替には数か月かかるだろうが、みんなが少しずつ資金を出して無償公開させるべきで、そうすればウクライナは何百万台ものドローンを作り続けて戦争を終わらせ、10万人以上の命を救えると思う
[1] https://www.youtube.com/watch?v=qLLVn6XT7v0
自分でリバースエンジニアリングをする意思もあるが、すべてのBambuモデル向けの新しいファームウェアをゼロから作るには、最低でも1日35ユーロの生活費と、テスト用に複数モデルを数週間借りる必要がある。全モデル用ファームウェアを一から再構築して公開するには5〜9か月と見積もっており、RossmannとGeerlingが影響力を使って調整できるか気になっている
RossmannとGeerlingに、一緒にBambuファームウェアを解放できるかメールを送り、手伝いたい人はHNプロフィールから連絡してほしいと書いた
最新のプリンターはよく知らないが、その期間に使われていたBambuプリンターはLAN専用モードを簡単に有効にできた
ネットワークから完全に切り離してSDカードでも使える
アプリでrootアクセスを有効にしてファームウェアモードをインストールでき、ファームウェアのリバースエンジニアリングの試みも複数ある
大規模管理は少し難しくなるが、私が見落としている更新がない限り、インターネット接続が必要だとは信じがたい
オープンソース支持者だが、数か月前にBambu P1Sを買った
調べてみると、Bambuアカウントを作らず、Bambuスライサーを使わず、すべての印刷をBambuサーバーに送らなくても普通に使える方法があったからだ
正確なメモはないが、ほぼ問題なくそのように設定でき、プリンターで設定を1つ変えるだけだったと記憶している。自動ファームウェア更新とテレメトリーを止めるには、ファイアウォールでインターネット接続を遮断する程度が任意だった
モデル調整、パラメータ変更、印刷送信はずっとOrcaSlicerだけを使ってきた
Bambuが自分たちのスライサーの正当なオープンソースフォークに強硬に出ているのは確かに間違っているが、今の騒動が正確に何なのかはよく分からない。プリンターは以前よりもっと閉じられたのか、それとも一部モデルだけなのか?
私たちには簡単でも、大半のユーザーにとってはその部分だけでも十分大変だ
私もP1Sを使っているが、Bambuは変な会社だと感じる。オープンソースソフトウェアから莫大な利益を得ていながら、精神とライセンスの両方に反することがある
単純なネットワークなら直接デバイスに送れるのに、印刷が中間者を経由するよう設計していて、これはレーザープリンターがデバイスへ直接行かずクラウドを経由するようなものだ
設計データの暗号化や保護がほとんどない点を見ると、意図的にそうしているように感じる。知的財産をめぐる多くの中国企業の実績を見ると、設計窃取が主目的だと想定してしまう
オープンソースに関する悪い履歴、プライバシーと知的財産保護に対する怪しい姿勢、攻撃的な法的態度を合わせると、非常に信頼しにくい組織だと思う
幸い私の設計は「このガラクタを見てくれ」レベルなので心配はないが、重要な作業には絶対に使わない
オープンソーススライサーがBambuクラウドサービス経由で印刷を送ることは望まない。そもそもクラウドサービスを望んでいないからだ
スマホで印刷状態を確認したり開始したりする価値はほぼゼロで、オフィスのノートPCから送って、印刷中も同じノートPCでたまに確認すればいい
これまではうまく動いていたが、Bambuの企業としての利害はこうした用途ではなく、エコシステムを最大限内側に引き込む方向にあるのが不安だ
MakerWorldでモデル側を支配し、すべての流れをクラウドに通そうとしている
悪意を前提にしなくても、Appleに似た明確な財務上・ユーザー体験上の誘因がある
しかし中国資本の会社であり、西側の立法者が機械の用途を厳しく統制しようとする環境では、その世界に行きたくないと思うのは無理な姿勢ではない
クラウド専用の世界では、オープンソースソフトウェアがローカルプリンターにG-codeを送る世界よりも、DRM、著作権保護、印刷制限をずっと容易に実装できる
今の機械を変える必要も意図もないが、次はたぶんBambuではない。3Dプリントそのものを趣味にしなくても生産的に使える道具としての機械を作る会社は、もはやBambuだけではない
ソフトウェアをフォークして自分のプリンターで使うのは構わないが、利用規約が別にあるBambuクラウドサービスと一緒に使われるのは望んでいないように見える
彼らがわざわざここで争おうとするのは妙だが、完全に不合理な立場というわけでもない。クラウドは他人のコンピューターであり、他人は自分のコンピューターで何ができるかのルールを決められる
クライアントがオープンソースだからといって、サーバーを使う権利まで生じるわけではない
開発者モードですべてをローカルで動かすか、投稿者のように自分のVPNで遠隔実行するなら、ほとんど違いはないだろう
2025年のある時点のファームウェア更新以降、クラウドとローカルのどちらかを選ばなければならなくなった
ローカルモードを有効にすればカスタムスライサーは使えるが、クラウド印刷やモニタリングは無効になる
人々は両方を望み、なおかつオープン性も望んでいたので反発した
最新のフォークでは、ある新しいカスタムスライサーがUser-Agentを偽装してBambuクラウドへ印刷を送信し、そのため2025年以前の体験を提供している
Bambuはこの新しいフォークを訴え、実際のOrcaSlicerをローカルで使うこと自体は問題ない
今は遠隔印刷が必要で、Bambu Cloudにモデルを送りたくないなら、LAN専用と開発者モードを有効にして回避できる
しかし新しいファームウェアがオンラインアカウント作成とBambu Cloud接続を初期設定で強制したらどうなるのか。SDカード印刷時に使える機能を制限したらどうなるのか?
かなり憂慮すべき流れであり、今や会社はBambuのAGPLコードの上で、Bambuサーバーを経由しない遠隔印刷を可能にしようとするオープンソース開発者を法的に脅している
悪魔の代弁をするなら、Bambu Labに、一度きりの売上しか得ないのに生涯無料のクラウドサービスを提供する動機が何かあるのだろうか?
サブスクリプションを求めることもできるが、ライトユーザーには反発が大きいだろう
広告やクロスセル、アップセルで収益化することもできるが、サードパーティクライアントはそこにとってリスクになる
オープンソースコミュニティがBambuに無料サービスを要求する根拠はよく分からない
Louis Rossmannは、オープンソース開発者がBambuの法的脅迫に立ち向かうために1万ドルを出すという動画を上げており、私も喜んで出すつもりだが、開発者が再びBambuの標的になる覚悟がある場合にしか意味がない
Rossmannは代わりに自分が標的になることにして、Bambuを挑発する動画を上げた: https://youtu.be/1jhRqgHxEP8?si=BwfoCKxujd0XwNJ0
理解できないのは、誰かがBambuのスライサービルドを使う場合と、同じコードを別のスライサーやフォークで使う場合とで、インフラ負荷がどう違うのかということだ
結局は同じ人が同じリクエストをしているだけだ
負荷をさばけないなら、解決策はプリンター供給を慎重に管理することだ。ブログ記事の口調からすると、インフラが3人以上を処理できないなら、世界中に同時に3台以上プリンターを出荷しなければいい
P2Sを買おうとしていたところだが、もう買わない
Bambu Studioは文字どおりPrusaSlicerのフォークだ。コミュニティの上に乗っかって、そのコミュニティを脅すことはできない
運用の観点ではBambuに同意できないわけではないが、処理の仕方には同意できない
Bambuは、自社ソフトウェアでプリンターを遠隔制御できるクラウドインフラを提供している
承認されていないソフトウェアがクラウドへアクセスすることを望まないなら、認証をきちんと作ってそう明確に言うべきだった
ユーザーが公式ソフトウェアやクラウドを経由せずにプリンターを活用できるべきかどうかは、別の複雑な問題だ
ここまで対立的に振る舞わなければ、この騒動は避けられたはずで、ユーザー層にイデオロギー的な弾薬を与えることもなかっただろう
今後も実現しない気がする