ビジネスへのOSS(オープンソースソフトウェア)の活用は、もはや普及期を超え、成熟期に入ったといっても過言ではありません。
いたるところで多様なOSSが運用され、脱OSSムーブメントさえ囁かれています。
そんな成熟期であればこそ、自社のビジネス事業で扱うOSSには気を配るべきなのはいうまでもありません。
この記事では、OSSソリューションの中で代表的な地位を築いたBSD系OSやBSDライセンスについて、初心者向けにわかりやすく紹介します。
BSDとは?
BSDはBerkeley Software Distributionの略で、日本語にすれば「バークレー校によって頒布されたソフトウェア群」のことです。
言葉通り、BSDとは1977年から1995年までカリフォルニア大学バークレー校に在籍した研究チームCSRGが開発・配布したソフトウェア群、およびUNIXベースのOSを指します。
ですが、今日ではBSDは単なるCSRGの開発物を超え、BSDのOSから発展した一連のBSD子孫といえる改良OS群や、OSSライセンスを指すようになりました。
この項では主に、このBSDから派生したOS群と、BSDライセンスの2つを詳しく解説します。
OSとしてのBSD
BSDのOSは、UNIXのコードベースを元にCSRGによる独自の改良が加えられたUNIX系OSです。
BSDOSには、従来のLinuxやその他UNIX系OSに比べ様々なビジネス上の利点があります。
- オープンソースライセンスであること
- ソースコードが公開されているため、ユーザーが自由に変更や配布が可能です。
- 堅牢性と安定性が高い
- BSDは信頼性が高く、安定した動作が特徴です。
- 特にネットワーク機能が高く評価されており、高い安定性とセキュリティをもつOSを基盤にすることで、信頼性の高いITインフラを構築することが可能です。
- セキュリティ性が高い
- BSDはDARPA(アメリカ国防高等研究計画局)からの依頼もあり、セキュリティに重点を置いており、セキュリティホールの修正も迅速かつ積極的に行われています。
- ソフトウェアの豊富さ
- BSDには当時から多くの機能が含まれており、システム管理者や開発者が多様なニーズを満たせるように設計されていました。
- その後も様々な分野で重宝されるディストリビューションが開発され、非常に豊富なライブラリやパッケージをBSDライセンスで利用することが可能です。
- ポータビリティ性
- 改良可能でコンパクトなBSDは様々なプラットフォームに移植され、幅広いデバイスで利用できます。
また、OSSとしてBSDには独自のコミュニティが存在し、開発者やユーザーが積極的に開発やサポートに参加している点も、激しい開発競争をリードする原動力となっています。
結果、BSD系OSは様々な分野で利用され、
- オープンソース文化の普及
- BSDの登場で、誰でも利用、改変できるオープンソース文化が花開きました。
- ネットワーク技術の発展
- 誰でも使える強力なネットワーク機能搭載OSによって、様々な発想をもつエンジニアや起業家が参入し、インターネットの成長が加速しました。
- ビジネスの発展
- 安定性と堅牢性を備え、高度なネットワーク機能を持つBSDOSは、重要なシステム基盤として様々な企業に採用され、今日の大規模なネットワークインフラやクラウドサービスの発展に繋がりました。
- セキュリティ意識の向上
- 多くの人がBSDの高度なセキュリティ機能やツールを利用したことで、セキュアなシステムの開発と運用が発展していきます。
- このセキュリティ対策への強い意識は、後のBSD派生OSでも継続されています。
といった様々な影響を与えることになります。
また、多くのBSD派生(改良型)のOSが誕生し、
- オープンソースソフトウェア
- NetBSD
- さまざまなハードウェアに移植できるポータビリティ性に重点を置く
- FreeBSD
- セキュリティとパフォーマンスに焦点を当て、高い安定性と信頼性に重点を置く
- OpenBSD
- セキュリティと厳格なコード監査に焦点を当て、迅速なセキュリティホールの修正に重点を置く
- NetBSD
- 商用ソフトウェア
- macOS(Apple)
- 現在Windowsと並んで利用されている商用OS
- BSDのネットワーク機能やセキュリティ構造を継承しつつも、より一般の人々に使いやすいように改良されている
- macOS(Apple)
といった現代でも活躍している重要なOS群を生み出します。
簡単に言えばBSD系OSは、高性能かつ安定性が高く、セキュリティに優れ、多数の用途に合わせたバリエーションが用意された、ゆるい条件で無償利用可能なOSです。
このあまりにもビジネス用途に都合のいいOSの出現は、オープンソースの普及やネットワーク技術の発展、ビジネス界隈のネットワークセキュリティの向上など、様々な方面で市場や経済に多大な影響を与えることになります。
BSDライセンス
BSDライセンスは、BSDプロジェクトの配布物に広く使用されているライセンスで、のちのOSS文化に大きな影響を与えたライセンス形式です。
その大きな特徴の1つはコピーレフト義務がないことです。
従来のOSSライセンスでは、改変や利用したソフトウェアのソースコードは、OSS普及のため公開しなければいけないというコピーレフト義務がありました。
「OSSを使うならば、普及のためにそのソフトウェアもOSSとして公開してね」
ということです。
これはOSSのビジネス利用を大きく阻む障壁でした。
自社の企業秘密を一般公開しなければならないというのは大きなリスクです。
一方で、BSDライセンスはソースコードを公開することが義務付けられていません。
この点だけみても、ビジネスに大きな影響を与えるライセンスだったと言えるでしょう。
※同じくコピーレフト制限の撤廃を行ったライセンスとしてはMITライセンスが有名です。
また、
- 非常に明確かつ自由度の高い緩やかなライセンス
- 再配布が許可されている
- 商用目的での利用に制限がない
- つまり、企業がBSDライセンスのソフトウェアを有料の製品やサービスに組み込むことができることを意味します。
- BSDライセンスの継承性と互換性
- BSDライセンスを含むソフトウェアを改良した際に、異なるライセンスでリリースが可能でした。
- つまり、BSDライセンスが他のオープンソースライセンスとの互換性を持つことを意味します。
といった特徴があり、その明確で緩やかな条項は様々な市場で利用されるきっかけづくりとなりました。
BSDライセンスは、初期は4つの条件がありましたが、他のライセンス(特にGPL)との互換性や派生OSの変遷から、どんどん条項が削られていきます。
そのため、BSDライセンスには
- 4つの条項を持つ最初期の旧BSDライセンス
- 1つ条項を減らして条項を3つにした修正BSDライセンス
- 更に1つ減らし、条項を2つに絞った2条項BSDライセンス
の3種類が存在します。
以下に、各々の違いについて簡単にまとめます。
ライセンス | 条件の概要 | 補足 |
旧BSDライセンス(4条項ライセンス) |
|
最初に策定されたライセンス 謝辞の記載義務は画期的な提案だったが、この宣伝条項はGPLと相反する そのためGPLライセンスと互換性がなかった |
修正BSDライセンス(3条項ライセンス) | 旧BSDライセンスから謝辞の記載義務を削除したもの | GPLと互換性をもたせたライセンス BSD系で最もよく利用される |
二条項BSDライセンス | 修正BSDから更に、「販売促進に使用しない」という条件を削除したもの | 現在のFreeBSDやNetBSDなどでよく利用されている |
※厳密な要件は、OSIなどが承認したライセンス条項をご参照ください
いずれにせよ、BSDライセンスは非常に自由度が高く、商用利用も可能なオープンソースソフトウェアのライセンスといえます。
BSDによって、開発者や企業はOSSを自由に活用することができるようになり、様々なビジネスや市場を生み出す事となりました。
ちなみに、
- Apache Software License
- PHP License
- Python License
などはBSDスタイルライセンスと呼ばれることも多いですが、あくまでBSDを参考にコピーレフト義務をなくしたライセンス形式であるだけで、独自の特性や条項があるため、別のものと考えたほうが良いでしょう。
他のオープンソースライセンスとの比較
OSSライセンスには様々なものがあります。
BSDの他にも、長くOSS文化に支持されているGNUプロジェクトのGPLや、多くのGithubユーザーが利用しているMITライセンスなどが代表的です。
他のライセンスとの違いについて、簡単に解説します。
他のライセンスとの違い
前述したように、BSDの最大の特徴はその自由度です。
一般的な修正BSDライセンスでは、ざっくばらんに言えば
- BSDライセンス下のソフトウェアは無保証であることの明記
- 著作権表示とライセンス表示義務
- コントリビューターの名前を無断で宣伝に活用してはいけないこと
の3つを守ればよく、ビジネス最大の障壁であったコピーレフトはありません。
つまり、改変も商用利用も可能で、新しく開発したソースコードは非公開でよいのです。
この柔軟かつ明確なライセンス下で、自由にBSD由来のソフトウェアを利用できることがBSD最大の魅力です。
コピーレフトの問題に焦点を絞って、いくつかの改造・複製・再配布・商用への利用が許可されている有名なライセンスと比較してみましょう。
概要 | コピーレフトへの対応 | 利用時の
コード公開 |
改造時のコード公開 | |
BSDライセンス | BSDプロジェクトが定めたライセンス | 完全不要 | 不要 | 不要 |
MITライセンス | X Window Systemを開発していたMITが定めたライセンス | 完全不要 | 不要 | 不要 |
MPL | Mozillaが定めた最初のライセンス | 改造する場合のみ記載が必要 | 不要 | 必要 |
GPL | GNUプロジェクトが定めたライセンス | 原則コピーレフト義務を負う | 必要 | 必要 |
この表を見ても分かる通り、BSDライセンスとMITライセンスは非常に縛りがゆるく寛容型ライセンスや非コピーレフト型ライセンスと呼ばれています。
BSDライセンスを選ぶ理由
基本的にそのライセンスを持つライブラリやソフトウェアを組み込む必要がある場面では、そのライセンスに合わせた義務を負います。
例えば、GNUプロジェクトの成果物を利用する場合、ソースコードの公開が可能なことが大前提です。
これでは、せっかく開発した新サービスを他社に簡単に真似されてしまいます。
その点で言えば、柔軟な対応が取れるBSDライセンスは自由な利用と共同作業が重要なあらゆるビジネスシーンにおいて適しているといえるでしょう。
- プロダクトの開発やテスト
- 自社のビジネスに関わるオープンソースプロジェクトへの参加
- BSD由来のセキュアなOSを利用した新ビジネスの構築
- 先端IT技術のビジネス活用
多くのビジネスシーンで改変、再配布、商用利用、有料コンテンツ展開が許され、どのニーズであっても利用できるOSSというのは開発者やサービス事業者にとって、とてもありがたいものではないでしょうか。
とはいえオープンソースソフトウェアと、それに紐づくOSSライセンスは様々なメリット・デメリットを抱えます。
利用する際は、そのソフトウェアの性能と利用義務を見比べ、自分のニーズにとってはどれがベストのOSSなのかをよく比較検討することをおすすめします。
FreeBSDを使う理由
BSD系OSには、
- 非コピーレフト型のライセンスであること
- 堅牢な設計で、安定して運用できること
- 信頼性が高く、セキュリティ対策が厳重に施されていること
- 自由にカスタマイズできること
- 多くの企業に採用されているため、実績が豊富であること
など、ビジネス上多くの利点があります。
この記事ではBSD系OSの中でも多くの企業に愛されているOS「FreeBSD」を例として、BSD系OSを使う理由について紹介したいと思います。
FreeBSDの特徴とそのメリット
FreeBSDは初期から取り組まれ、長年多くの人に愛されているBSD派生OSです。
BSDが掲げた特徴の中で、特にセキュリティとパフォーマンスに焦点を当て、高い安定性と信頼性を提供することを目指して開発されました。
その性能と安定性の両立は、シーンを選ばない使いやすさに繋がり、デスクトップ、サーバー、ルーター、組み込みシステムなど幅広い用途で利用されています。
また、Linuxの多くがGPL、つまりコピーレフト義務を課したことも、ビジネスにおけるFreeBSDの人気に繋がっています。
FreeBSDのセキュリティと安定性
開発チームが
「FreeBSDは、安定していて高速・高性能でなおかつ安全、先進的な機能や多くのセキュリティ機能を提供している」
と語ったように、FreeBSDは安定性とセキュリティ性能が非常に高いです。
FreeBSDの開発チームはセキュリティに重点を置いており、定期的なアップデートが行われ、脆弱性も発見され次第迅速に修正されています。
FreeBSDには様々な魅力がありますが、例えば
- セキュリティ機能の豊富さ
- 熟練者はもちろん、初学者でもある程度セキュリティを担保しやすい
- デフォルト設定がセキュリティ対策を意識した設定になっている、適切な権限管理機能や強力なファイアウォール機能などが標準搭載されているなど。
- 熟練者はもちろん、初学者でもある程度セキュリティを担保しやすい
- パッケージ管理が明示的
- packageの扱いがOSから隔離されているため、バックアップしやすく、明確に管理しやすい
- シンプルなOS
- 最小構成でインストールされるため、様々なニーズに沿ったサーバーを運用し易い
- ただし逆に言えば、デスクトップ運用のニーズの場合、GUI機能など必要な機能を追加していかなくてはならないとも言えます。
- 最小構成でインストールされるため、様々なニーズに沿ったサーバーを運用し易い
- FreeBSD jailによる仮想化技術
- OS レベルでの仮想化技術Jailが組み込まれているため、サービスごとにサーバー環境を仮想的に切り離すことが可能
- FreeBSD jailはいわばFreeBSD版のDockerのような存在です。
- OS レベルでの仮想化技術Jailが組み込まれているため、サービスごとにサーバー環境を仮想的に切り離すことが可能
といった、ビジネス利用に適した安定性を持っています。
カスタマイズ性の高さ
FreeBSDを筆頭にBSDから派生したOSは、システム構成はもちろんカーネルやユーザーランドも自由にカスタマイズできます。
これにより、ビジネスのニーズに合わせて最適なシステム環境を構築できます。
活発なコミュニティと豊富なドキュメントに支えられているため、カスタマイズ事例も多く、自社の業務や顧客の要望などに合わせて必要なシステムに改良できる点は大きな魅力です。
FreeBSDもスケーラビリティ性に優れ、CPUの最適化なども行えますが、より自由な移植性を求めるならばNetBSDを検討してみてください。
例えばIoT用のセンサーデバイスなどでは、NetBSDをよく採用しています。
FreeBSDのパフォーマンスとコストパフォーマンス
FreeBSDは、実用性を重視した堅牢性の高いカーネル設計によって、高負荷に強いという特徴を持ちます。
- 高負荷耐性のカーネルとスモールスケールの構成で、小規模から大規模までのサーバの運用が可能
- 高速・高性能なOSを、オープンソースかつマルチプラットフォームで運用可能
- 様々な大手企業に採用されており、多くの成功実績がある
- セキュリティ対策の修正も迅速なため、安心してネットワークインフラに適用できる
といった特徴を持ち、何千ものユーザーからの同時アクセスといった高負荷状況でも、安定した動作を継続できます。
また、フロント側へ優先してリソース配分する設計であり、例えば「メモリが足りなくなって、動作自体が重くなる」ような問題が避けられます。
BSDから始まった専用の高機能ライブラリ群によって、様々なニーズに沿ったシステムをBSDライセンスを保ったまま開発可能な点も、商用利用の観点では大きなメリットになります。
例えば、LinuxOSを組み込んだ機器を販売する場合、どうしてもGPLとの関わりが避けられません。
ですが、GPLはコピーレフト型ライセンスであり、商用には使いづらいです。
その点FreeBSDはGPLを排除したシステムを構築しやすいため、Linuxを避けてFreeBSDですべてを賄うという選択肢が取りやすくなります。
BSDを活用するサービスの事例
BSDはそのセキュリティの高さと安定性を活かして、様々な分野で活用されています。
ここでは、BSDがどのように活用されているのか、いくつか紹介したいと思います。
サーバーシステム
ネットワークインフラを支え続けたBSDは、多くのサーバーシステムで活用されています。
以下のような事例でBSDは活用されています。
- Webサーバー
- BSD系OSはその安全性とスケーラビリティの高さから、多くのWebホスティングプロバイダーで利用されています。
- 特に大規模なWebサーバーを必要とする場合、FreeBSDを基盤とした独自のサーバーインフラを構築することが多いです。
- メールサーバー
- BSDのシステムは、高い安定性とセキュリティが求められるメールサーバーの基盤としてもよく採用されます。
- 例えばFreeBSDの標準であるSendmailは、企業や個人を問わず広く利用されています。
- データベースサーバー
- BSD系OSは高い性能とスケーラビリティを両立しているため、重要なデータを保管しておくデータベースシステムにもよく採用されます。
例えば、企業向けにルータなどのネットワークギアを提供しているジュニパーネットワークス株式会社の商品には、FreeBSDを改良したJunOSが搭載されています。
ネットワークセキュリティ
セキュリティを重視しているBSDは、ネットワークインフラとしても愛され、多くのシステムのセキュリティを管理しています。
以下のような事例でBSDは活用されています。
- ファイアウォール
- BSDは堅牢なファイアウォールシステムとしても活用されています。
- 特にOpenBSDは強力なパケットフィルタリング機能やアドレス変換機能を持ち、多くの企業のネットワーク保護システムに採用されています。
- VPNサーバー
- BSDはそのセキュリティの高さを活かして、安全なリモートアクセスを行う必要があるVPNサーバーの構築にも使用されています。
- 特にIPsec-VPNは組織間をつなぐプライベートネットワークとして非常に人気が高いですが、IPsecはBSDで広くサポートされています。
- IDS(侵入検知システム)
- OpenBSDやFreeBSDは、基本的な IDS システムをネイティブでサポートしているため、侵入検知システムの多くがBSDを基盤としています。
例えば、ウイルス対策ソフトで有名なMcAfee, LCCのファイアウォールはSecurOSによって管理されていますが、SecurOSはFreeBSDを改良したものです。
IoTデバイス
カスタマイズ性とポータビリティ、スケーラビリティに優れるBSDは、IoTデバイスのOSとしても人気が高いです。
以下のような事例でBSDは活用されています。
- センサーネットワーク
- BSD系OSは、IoTデバイスがセンサーデータの収集や処理を行うためのオペレーションシステムとして活用されています。
- 例えば組み込みシステムやマイクロコントローラの多くで、ポータビリティ性に重視を置いたNetBSDが採用されています。
- スマートホームデバイス
- BSDは、スマートホームデバイスや組み込み制御システムの開発にも活用されています。
- 例えば、セキュリティシステム、照明制御、エネルギー管理など、さまざまな用途にBSD系OSが活用されています。
- 産業用IoTデバイス
- 工業用制御システムでも、BSDの信頼性と耐久性が高く評価されています。
- 工場の自動化やリモートモニタリング用IoTデバイスのOSにNetBSDなどが採用されており、工場や製造業界でのIoTデバイス活用を支えています。
例えば、株式会社Sony Interactive Entertainmentの主力製品であるPlayStation Vita, PlayStation 4 および PlayStation 5のOSはFreeBSDがベースとなっています。
BSD導入にあたっての注意点と対策方法
安定性とコストパフォーマンス両面において大きなメリットを持つBSD系OSですが、OSSで無保証であることやある程度カスタマイズできる知識が必要なことなど、気をつけなければならない注意点も存在します。
BSDを導入するに当たって気をつけるべきポイントについていくつか紹介します。
サポート提供が無い
オープンソースは原則的に無保証であることには注意が必要です。
なんの関わりもない企業から「このシステムのサポートは誰だ」とメールが来て困っているというのは、非常によくあるOSS開発者の困りごとです。
いくつかのプロジェクトでは有償で商用サポートを行っていることもありますが、殆どは無保証自己責任です。
そのためなにかトラブルが起きた際も、自社が契約しているエンジニアの知識とコミュニティベースのサポートに依存します。
幸い多くのBSDソフトウェアには豊富なドキュメントやコミュニティサポートが用意されています。
導入前に積極的に情報を集め、導入実績やコミュニティサポートを参照し、部署内にOSS担当などを作って相談や支援を求められる体制を整えておきましょう。
またいざというときに頼れるように、外部のIT開発会社とパートナーシップを築いておくのも良いでしょう。
ハードウェアの互換性
BSDは特定のハードウェアに依存しないため、移植性が高いというメリットを話しました。
しかしそれは、自社の要件に合ったハードウェア上で必ずしも動作するわけでは無いことには注意が必要です。
場合によっては、ハードの性能を出しきれないどころか、互換性すらも危うい可能性があります。
特に最新のハードウェアや特殊なデバイスについては、ドライバーのサポートが不十分な場合があり、OSSを扱う際には事前の十分な検討と、問題に対処できる豊富な知識が求められます。
まずは利用しようとしているOSの公式ウェブサイトやコミュニティフォーラムを確認し、サポートされているハードウェアのリストなどを用いて検討を行いましょう。
また、事前にハードウェアの互換性テストを行うことも重要です。
学習コスト
確かに、BSDではパッケージ管理システムを利用することで、ソフトウェアのインストールやアップデートを明確に管理できます。
また、BSDはセキュリティに焦点を当てた設計がなされています。
ですが、パッケージの依存関係やバージョンの競合は自分で解決しなければなりませんし、セキュリティもデフォルトの設定のままでは自身のニーズに合わせることはできません。
定期的にシステムアップデートやセキュリティ更新を行ってOSの保守管理をする必要がありますし、不要なライブラリは積極的に整理しなければなりません。
不要なサービスを無効にしたり、適切なアクセス制御を設定したり、当然脆弱性のスキャンなどの定期的なセキュリティ監査も必要になります。
そもそもシステムからして、使い慣れたLinuxとは(互換性はあるものの)全く違います。
要するに、BSDを扱う際にはそれ相応の学習コストが必要です。
部内に専門のエンジニアを用意するか、外部のエンジニアに委託するかはプロジェクトによって様々ですが、何れにせよ学習コストや委託コストが掛かることには注意しましょう。
まとめ:BSDはベンチャー中小企業にとってどのような価値があるか
Linuxより堅牢で安全なシステムを無償で提供してくれるBSDは、特にリソースが限られているベンチャーや中小企業の事業にとって重要な役割を果たします。
- 高負荷でも安定するサーバーを構築したい
- 実績豊富で信頼性の高いOSを探している
- 信頼性のITインフラを構築したい
- ベンダー依存しないシステムを構築したい
- サービスや製品に組み込む商用可能なOSを探している
といった、様々なビジネスニーズのソリューションになりうる非常に便利な、しかも無償のOSです。
BSDを適切に導入することで、自社のビジネスの安定性と効率性を向上させることができるでしょう。
とはいえ、OSSを扱う際には多くの注意点が存在します。
問題が起きたときもライセンスを精査する際もある程度の知識が求められ、全ては自己責任で解決しなければなりません。
株式会社Jiteraでは、ITシステムの導入に悩む企業様に実績豊富なエンジニアによる併走支援を行っております。
BSDを始めとしたOSSにご興味がある企業様、是非一度Jiteraにご相談ください。