本連載「企業セキュリティの歩き方」では、セキュリティ業界を取り巻く現状や課題、問題点をひもときながら、サイバーセキュリティを向上させていくための視点やヒントを提示する。
なぜOSSが存在するのか?
今回は「OSSと脆弱性の“現実”」シリーズの最終回となる。オープンソースソフトウェア(OSS)の脆弱性の本当の原因は何かとともに、利用者がOSSとどのように付き合っていくかを述べていく。
まず、「なぜOSSが世の中に存在するのか」というところに立ち戻って考えてみたい。OSSが存在する理由は、もちろんLinuxの誕生などに端を発する諸事情などがあるが、結論から言うと、「誰かが作っている」からに他ならない。
この「誰か」はOSSの開発者だ。そして、一般的にはOSSが世界中の(ある意味物好きな)ボランティアで開発されていると思われがちだが、その認識は少々古い先入観かもしれない。スマートデバイス向けOSのAndroidをGoogleが開発しているように、大企業が開発しているケースも増えてきている。
企業がOSSを開発している例は、ディープラーニングのフレームワークやブロックチェーンの分野にも多い。最先端技術の分野では、OSS化による開発スピードの向上や普及のしやすさという点で相性が良いのだろう。このようにOSSは、ボランティアだけでなく、ビジネス的な要素や個人的な創作意欲など、さまざまな意図や目的があって存在している。そして、それらがOSSという方式を採用しているのは、圧倒的なスピードで開発と普及ができるという特性が最大の要因だろう。
OSSで重要なコミュニティーの存在
しかし、どんなに優秀なOSSでも、それだけで普及するとは限らない。なぜなら利用者が、自分のシステム環境にそのOSSが適合するか、本当に運用できるのかなどの利用のための前提知識をゼロから得ることは非常に難しいからだ。
そうした問題を解決するのが、先輩利用者の運用ノウハウが蓄積されるコミュニティーの存在である。コミュニティーは、その現場での血と汗の結晶のような“宝”としての運用ノウハウを生み出すだけなく、それをウェブサイトや各種メディアなどに公開している。さらに組織運営がしっかりしたコミュニティーであれば、各地に支部を持ち、それぞれが独自に普及啓発の根を生やしたりもしている。コミュニティーの中には、運営メンバーがもちろんいる。さらに、場合によってはコミッター(OSSの仕様決定権を持つ開発者)が直接関与していることもある。つまり、コミュニティーには、そのOSSをどう利用すれば良いかというさまざまな知恵が詰まっているのだ。
そうは言っても、コミュニティーなんて知らないという方も多いと思うので、その一例を紹介しよう。それは筆者も理事として参画しているOSSのデータベース「PostgreSQL」のコミュニティーである「日本PostgreSQLユーザ会」だ。
このコミュニティーは1999年に始まり、2006年にNPO法人化した。東京の本部(理事会)と北海道から沖縄まで全国の9支部の併せて10の組織で構成されている。また、その組織主催のカンファレンスも例年開催している。このカンファレンスは有償セミナーながら、毎回200人ほどが全国から集まる。このような活動が、PostgreSQLの機能拡大や信頼性を認知させ、利用者の裾野を拡大させている。
また非常にありがたいことに、このコミュニティーは多くの企業スポンサーにも恵まれ、財務面を含む運営体制は磐石だ。これらによって、PostgreSQLはMySQLとともにOSSデータベースにおける双璧となっている。